如何知道RAPI dll是否存在

时间:2009-05-18 19:49:01

标签: c#

我已经构建了与RAPI一起使用的C#程序(与PPC或WinCE的通信)

我的问题是,如果用户没有安装ActiveSync - 我的程序崩溃!!

如何在不安装ActiveSync的情况下加载和使用我的程序?

(也许像#if ... #define .....我真的不知道......)

提前谢谢

2 个答案:

答案 0 :(得分:1)

你有两个选择:

一,延迟加载RAPI dll,这样你的应用程序就不会抱怨DLL不在那里。在这种情况下,如果安装了ActiveSync,则只能使用RAPI调用(可以通过检查注册表来确定)。

-OR -

二,动态加载RAPI dll,如果安装了ActiveSync,则仅引用RAPI函数。

答案 1 :(得分:0)

我不确定这是否是您的想法,但是您将代码放在接口后面并放入另一个DLL中,然后在程序启动时,查看是否可以找到RAPI(查找文件或安装代码) )。

如果找到,加载DLL并获取使用它的代码的接口,如果找不到,则不加载DLL并禁用任何需要它的UI选项。