作者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