線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1380
推到 Plurk!
推到 Facebook!

如何使用dll檔

答題得分者是:rick060
encoref70036
一般會員


發表:29
回覆:47
積分:15
註冊:2011-05-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-08-10 18:35:50 IP:111.253.xxx.xxx 訂閱
我們老師給我們一個jpeg2000.dll的檔案
請問是要先調用才能使用它裡面的函數嗎?
該如何調用呢?
請問如果要看dll內容 是不是可以用 tdump
可是我在執行 輸入cmd按確定
然後打 tdump -ee jpeg2000.dll
結果他顯示 Can not open input file JPEG2000.DLL
打implib jpeg2000.lib jpeg2000.dll
也是顯示unable to open file
請問是這樣用嗎?
編輯記錄
encoref70036 重新編輯於 2011-08-10 09:03:40, 註解 無‧
encoref70036 重新編輯於 2011-08-11 04:59:42, 註解 無‧
rick060
高階會員


發表:2
回覆:112
積分:217
註冊:2009-11-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2011-08-12 11:07:22 IP:60.250.xxx.xxx 未訂閱
google "msdn LoadLibrary"
google "msdn dumpbin"
encoref70036
一般會員


發表:29
回覆:47
積分:15
註冊:2011-05-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2011-08-12 22:16:28 IP:111.252.xxx.xxx 訂閱
您是指用動態連結嗎?
我看了一些資料但還是不懂怎麼用
請問
HINSTANCE DLLInst = LoadLibrary("jpeg2000.dll");
這樣就是載入資料庫了嗎?
然後我用了Dependency Walker這個軟體看了裡面的函數
有ReadJPG2000
SaveJPG2000...
如果我要用ReadJPG2000
是要用GetProcAddress嗎
但是....
這邊怎麼寫?=GetProcAddress( DLLInst, "ReadJPG2000" );
rick060
高階會員


發表:2
回覆:112
積分:217
註冊:2009-11-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2011-08-15 13:57:27 IP:60.250.xxx.xxx 未訂閱
typedef DWORD(WINAPI *GetNameEntry)(HMODULE hModule,char* lpFilename,DWORD nSize);

void main(void)
{
HMODULE dllHandle = NULL;
GetNameEntry dllEntry = NULL;
char szFileName[128 1];

memset(szFileName,'\0',sizeof(szFileName));

dllHandle = LoadLibrary("kernel32.dll");
dllEntry = (GetNameEntry) GetProcAddress(dllHandle,"GetModuleFileNameA");
dllEntry(NULL,szFileName,sizeof(szFileName));

FreeLibrary(dllHandle);
} // End of main.

編輯記錄
rick060 重新編輯於 2011-08-14 23:57:51, 註解 無‧
encoref70036
一般會員


發表:29
回覆:47
積分:15
註冊:2011-05-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2011-08-26 22:31:30 IP:61.230.xxx.xxx 訂閱
感謝您
系統時間:2017-10-24 8:33:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!