作者ONLYSMART ()
看板C_Sharp
标题[问题] 请问c#引用Win32 based DLL.
时间Thu Mar 15 11:47:50 2012
接标题,引用时如下范例:
[DllImport("WinScard.dll")]
public static extern int SCardEstablishContext(uint dwScope,
int nNotUsed1, int nNotUsed2, ref int phContext);
请问我可以不接method引用整个WinScard.dll吗?
因为有的dll 我不知道他API的名称。
感谢回答!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 124.199.66.1
1F:推 leicheong:不可以. 因为你的程式不知道要给甚麽参数... 03/15 20:32
2F:→ leicheong:你总要告诉compiler那个参数该放到那个register吧... 03/15 20:33
4F:→ leicheong:之後随便抄就好... 03/15 20:36
感谢L大回答
我想我问的不够清楚
我现在是有一个.cab档,点开後有六个.dll档
其中一个是ActiveX DLL,另外五个是Win32 based DLL
ActiveX DLL有用到Win32 based DLL的api,
我在引用时ActiveX DLL可以直接加入参考,并且建置没问题
但程式有用到ActiveX DLL的api时却会出现找不到dll
我想是因为我没有把另外五个Win32 based DLL参考进来
问题是我不知道ActiveX DLL有用到Win32 based DLL的那些api
网页那边的引用是直接引用.cab档就好
我在想C#这边是不是也有相同的方式可以引用?
感谢回答!!
※ 编辑: ONLYSMART 来自: 124.199.66.1 (03/16 14:26)
5F:→ funnyface325:虽然6个副档名都是dll,但本身结构却是不同的. 04/03 16:06
6F:推 funnyface325:ActiveX 和 Com .net都可以帮你 interop 04/03 16:09
7F:→ funnyface325:但是Win32 DLL 却要告知函数的进入点和传入参数.... 04/03 16:11
8F:→ funnyface325:这也很多要知道,还有出相关的书,你先去微软看看 04/03 16:15