在Windows 7 Professional上,我有一个监视Windows事件日志的.Net程序。如果.Net程序订阅事件日志通知,则InstallAnywhere无法删除文件
在同一台工作站上安装了一个Java程序作为Windows服务。该程序需要使用InstallAnywhere卸载。卸载程序以我的监控程序(我可以清楚地看到使用procexp.exe)持有的Java服务可执行文件结束,即使它只是处理来自通知事件的字符串 - 从未尝试打开过程句柄或任何其他文件。
我不知道这是一个已知的行为还是Windows/.Net/InstallAnywhere的错误。
如果预计,是否有解决方法?
我可能不得不提一提,如果我的监控程序没有运行,或者它没有连接到事件日志 - 卸载的确会删除Java服务可执行文件。所以看起来Windows/.Net在我的程序的上下文中持有这个Java可执行句柄,即使我们与它无关。 – Natan