[英]Ensuring Windows Mobile application is not running - From a desktop app
我有一个Windows Mobile 5.0应用程序(智能手机),其中包含一个平面数据文件(CSV),其中包含一个标题行(两个双打)和一个条目列表(两个双打,DateTime和一个字符串)。
有时,我需要将移动应用程序与桌面应用程序“同步”。 桌面应用程序应从移动设备读取CSV,并根据旧内容将其替换为新的CSV文件。
通过RAPI(我猜)这似乎很容易,但是我需要确保移动应用程序未运行。 有没有办法做到这一点?
互斥? 远程进程查看器之类的东西? 文件锁定?
多谢您的协助
麦克风
无论出于何种原因, 内置的RAPI函数都无法检查正在运行的进程,例如ToolHelp API的 。 使用C,您可以在设备库中创建一组自定义函数,这些函数调用ToolHelp API,然后通过CeRapiInvoke (这是自定义RAPI函数的通用捕获点)进行调用。 不幸的是,在托管代码中没有简单的机制可以做到这一点。
只需对读取/更新的文件使用简单的文件锁定机制。
在使用前重命名该文件或创建另一个“锁定”文件,您可以检查该文件是否存在。
只是想到了一种简单的方法。
程序运行每3秒钟,请使用当前日期时间更新注册表项。
当我要同步时,请检查移动注册表,然后在5秒钟后再次检查它。 如果值更改,则程序仍在运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.