通常移动开发人员不必这样做,因为智能最小化功能会处理它。
但我需要自己动手,因为我的移动应用程序是由引导程序应用程序启动的。
开始菜单图标启动底部装载程序,从Web服务下载目标版本,将其关闭然后关闭。如果应用程序因任何原因而被最小化,则用户通常会使用开始菜单图标再次激活它。但是,这会启动引导程序并导致客户端的第二个副本。
这个问题出现在桌面应用的网络上(实际上是在这个网站上)。通常引用的解决方案是使用Process.GetProcessesByName和API调用的组合,一旦找到就重新激活该过程。另一个解决方案是创建一个继承自一些VisualBasic DLL的控制器类,我忘记了它的名字。我今天遇到的所有解决方案都没有得到comapct框架的支持。
所以实际问题是:
的组合是否有替代Process.GetProcessesByName的紧凑框架?
如果没有,我需要做什么API调用呢?
答案 0 :(得分:3)
我不确定您是否发现了这一点,但是MSDN上有一篇关于创建process manager application的文章,其中包含我认为您需要的信息。
该文章推荐使用toolhelp.dll,并且有一个非常详细的外观,用于获取正在运行的进程列表。它适用于Visual Studio 2003,所以你应该对你运行的任何版本的VS.NET都很好。