无法加载 DLL“rapi.dll”: 找不到指定的模块

jiessiesun   2009-3-10 16:01 楼主
使用rapi在pc和移动设备之间传输文件,之前安装了ActiveSync的,没有问题,但是项目要求不安装ActiveSync,要用我们自己的软件实现移动设备的自动识别、连接及文件传输,我把ActiveSync卸载之后,提示无法加载 DLL“rapi.dll”: 找不到指定的模块。请教各位有没有遇到类似的问题,如何解决,另外如何自动识别和连接?
public bool InitDevice(int nTimeout)
        {
             RAPIINIT ri = new RAPIINIT();
            ri.cbSize = System.Runtime.InteropServices.Marshal.SizeOf(ri);
            int hRes = CeRapiInitEx(ref ri);  //运行到这句时出现的问题

            ManualResetEvent me = new ManualResetEvent(false);
            SafeWaitHandle savehandle = new SafeWaitHandle(ri.heRapiInit, false);

            me.SafeWaitHandle = savehandle;


            if (!me.WaitOne(nTimeout, true))
            {
                CeRapiUninit();
                return false;
            }
            else
            {
                CeRapiUninit();
                return true;
            }
        }

回复评论 (8)

开发语言是c#
点赞  2009-3-10 16:10
rapi 是依赖于ActiveSync的,卸载了肯定是不行的
点赞  2009-3-10 16:21
谢谢楼上的,就是说一定要安装ActiveSync了,那客户使用我们的软件的时候就要先安装ActiveSync?是这样吗?
点赞  2009-3-10 16:27
点赞  2009-3-10 16:36
使用CE系统,用户最好还是安装ActiveSync啦,要不使用也不方便的。
点赞  2009-3-10 17:27
“但是项目要求不安装ActiveSync,要用我们自己的软件实现移动设备的自动识别、连接及文件传输”要实现这样的要求,首先你不能用rapi,然后你还的自己定义通讯协议,PC端最少还要有个驱动,所以这样的要求有些不合理。
点赞  2009-3-10 18:10
问一下rapi能实现普通的自定义指令通信吗。好像只能拷贝文件。
点赞  2009-3-10 20:19
谢谢各位了
点赞  2009-3-11 08:16
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复