阅读:1547回复:8
调用DLL的问题(大侠援助,答对给分)
我在应用程序中使用winscard.dll,发现不能调用.
我把winscard.dll拷贝到模拟器的根目录下和\windows下 1)用显示连接的时候,发现loadliberary返回为0 2)用隐式连接的时候,编译正确,在运行的时候,(程序中调用这个dll中的函数)程序报错,can not launch the remote executable error:unknown error error:unknown error win32 error code 1150(我查了一下说版本问题) please check the remote executable path and filename from project setting (我看了许久但看不出问题) 如果我把这个函数注掉,就没有这个问题; 苦闷中...... [编辑 - 11/19/04 by mycookie] |
|
沙发#
发布于:2004-11-19 16:49
虽然驱动是一个dll文件,但是不能用普通的调用dll的方法去用,当然会有问题的。而应该根据你写的驱动的不同构成用不同的方法调用
1。比如鼠标之类的有标准的接口的。 2。驱动中自己定义了向外的接口函数的,这个如何调用,我还不明白,不过,我想你的驱动应该不会是这种样子的 3。实现了标准的流接口的。这就可以用ReadFile和WriteFile直接调用了,当然之前还要CreateFile。不过你应该在调用前,看一下你的注册表中是不是已经表明你的驱动已经加载完成了(加载完后,注册表中会有相关项的)。 祝好运! g_hGenFile2=CreateFile(L"UCM1:", GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); flag=ReadFile(g_hGenFile,pBuffer,dwSizeWant,&dwSizeRead,NULL); 有时间,我再详细说明。 其实我也只是在慢慢的学,大家一起努力:) |
|
板凳#
发布于:2004-11-22 09:56
楼上老大:
winscard.dll不是驱动,而是系统的DLL,smartcard库函数 我调用scardestablishcontext. |
|
论坛版主
|
地板#
发布于:2004-11-22 15:16
你试过不同版本的dll文件格式一样吗?比如用vc编译出来的dll和ce的编译器编译出来的?会不会是不通用?
你说的那个显示连接和隐式连接是什么啊:)你怎么使用dll里面的函数的? |
|
地下室#
发布于:2004-11-23 16:03
如果我用模拟器中windows目录的dll如pm.dll和coredll.dll,loadliberary都能返回handle.我把winscard.dll用remote file view 传到模拟器上,就不能使用--loadliberary返回0.请问
是不是我用的方法有问题? |
|
5楼#
发布于:2004-11-29 14:57
我用的evc 是4.0版本的;(我用模拟器调试的)
wince是4.2版本的 我查了一下错误返回的值是1150意识是说windows版本太旧; 请问我的版本怎么会旧? 我用evc中的工具remote file reviewer把winscard.dll传输到模拟器中,并且在project的设置的additional dll中设置了这个dll,请问有什么问题? 我试过我硬盘上的所有winscard.dll了,都不行? [编辑 - 11/29/04 by mycookie] |
|
论坛版主
|
6楼#
发布于:2004-11-29 16:41
那你就试试把你要用的文件直接连接到os image里面然后使用吧,你不是说是系统dll吗,怎么会让你单独传过去用
|
|
7楼#
发布于:2004-11-30 10:47
我也正怀疑这个问题:很奇怪为什么模拟器中没有这个文件,该如何把这个文件加到模拟器或者CEPC中,是不是我在用PB建立环境的时候把SMARTCARD feature加入编译环境中(现在没有加)?还有如何把文件加入到OS IMAGE(不好意思,菜鸟问题了)?OS IMAGE是不是就是NK.BIN?
还有evc 用的环境如模拟器,是不是就是pb编译好的环境还是自己带的环境? |
|
论坛版主
|
8楼#
发布于:2004-11-30 14:05
http://www.driverdevelop.com/forum/viewthread.php?tid=82066
如果你使用ide环境,手动改了文件然后考过去后在菜单里面选make image evc用的环境可以选 |
|