各位好:
我用VB6寫了一個dll檔案,然后又寫了一個exe呼叫它,在工程里面參考dll之后,運行顯示未找到方法或資料成員,
參考如下:
dim cc() as variant
cc=datalist.Module4.Getdata(text5,text6)
其中text5(string)與text6(integer)為傳入的引數
運行提示Module4未找到方法或資料成員,根本就沒有參考感覺,剛學VB,且剛用dll是代碼錯了么?求指教
uj5u.com熱心網友回復:
這只能說明你的那個 dll代碼有問題。
你的: datalist.Module4
這個 Module4 好象是一個模塊的名稱吧!
如果你做成了 dll檔案,肯定就不能這樣用了。
uj5u.com熱心網友回復:
dim datalist as new 你的dll庫名.你的類模塊名
cc = Getdata(text5.Text, text6.Text)
uj5u.com熱心網友回復:
參考 2 樓 caozhy 的回復: dim datalist as new 你的dll庫名.你的類模塊名
cc = Getdata(text5.Text, text6.Text)
這樣調好像也不行,沒有物件
uj5u.com熱心網友回復:
參考 1 樓 Chen8013 的回復: 這只能說明你的那個 dll代碼有問題。
你的: datalist.Module4
這個 Module4 好象是一個模塊的名稱吧!
如果你做成了 dll檔案,肯定就不能這樣用了。
對的,第一次用dll,不知道怎么獲取dll里面的函式呀!
uj5u.com熱心網友回復:
參考 3 樓 sdxxs 的回復: Quote: 參考 2 樓 caozhy 的回復:
dim datalist as new 你的dll庫名.你的類模塊名
cc = Getdata(text5.Text, text6.Text)
這樣調好像也不行,是顯示傳遞引數不符,但好像沒有問題啊
uj5u.com熱心網友回復:
你的 .dll 怎么做的?
不知道你的原始碼怎么寫的,那又如何知道你的“函式”應該怎樣來呼叫!!!
給你指幾個解決方案:
① 把 dll 的原始碼(最好整個工程)發出來。這樣可以說是100%能給你解答。
如果你的代碼不便透露,可以把具體的實作洗掉,只留下整個工程的“框架”。
(但這樣對于復雜的問題,可能解決不了。因此這樣不能完全保證解決問題)
② 我剛發布了一個做 DLL的工具,你可以用這個來做DLL 。看這個:http://bbs.csdn.net/topics/390609644
這對一般的應用,把自己的代碼做成 DLL來使用,很方便。
只是某些特定的操作,可能需要一些撰寫技巧和經驗,才能得到正確執行結果。
③ 把你做好的 DLL檔案發出來,分析你的代碼后,給你解答如何“呼叫”。
這個方法成功率比較低,并且對于我們來說,比較費事。
畢竟對著一堆匯編代碼來分析你的程式是做什么的、有哪些介面可用以及如何用,不是件簡單的事。
不是很有必要的情況下,基本沒人愿意去費這個神。
uj5u.com熱心網友回復:
參考 2 樓 caozhy 的回復: dim datalist as new 你的dll庫名.你的類模塊名
cc = Getdata(text5.Text, text6.Text)
多謝指點,整型資料傳遞成功,但是就是不知道陣列傳遞會不會有誤,明天再試了,謝謝了!
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/139702.html
標籤:VB基礎類
上一篇:我想寫一個vb修改單元格行高和列寬(用CM計算的)的小程式
下一篇:已知任意兩點,作為橢圓長軸兩個端點,又知短軸長度,求生成橢圓代碼