首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

ArcEngine, windows服务程序老自动停止的有关问题

2012-06-05 
ArcEngine, windows服务程序老自动停止的问题我加了个System.Timers.timer控件,我在属性中设置了timer1.In

ArcEngine, windows服务程序老自动停止的问题
我加了个System.Timers.timer控件,
我在属性中设置了
timer1.Interval 为 30000;
timer1.Enabled 为true;
private void timer1_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
  IWorkspaceFactory wsf = new FileGDBWorkspaceFactoryClass();
  IWorkspace ws = wsf.OpenFromFile(@"F:\xiaoluoGIS\testFGDBSource.gdb", 0);
  System.Runtime.InteropServices.Marshal.ReleaseComObject(ws);
}
为什么在服务启动后能够运行一次或两次后,就不能再运行了,然后再查看服务时服务停止了,这是为什么,查看进程管理器,发现所占内存越来越大,
我在winform里测试过,是可以多次执行的

[解决办法]
这个还是跟踪一下日志吧
[解决办法]
还有,把IWorkspaceFactory 什么的设成全局的
IWorkspace ws = wsf.OpenFromFile(@"F:\xiaoluoGIS\testFGDBSource.gdb", 0);
改成
IFeatureWorkspace ws = wsf.OpenFromFile(@"F:\xiaoluoGIS\testFGDBSource.gdb", 0);
试试

热点排行