全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1213
推到 Plurk!
推到 Facebook!

delphi2005或c#怎样调用VC写的dll?

尚未結案
suaiming
一般會員


發表:12
回覆:1
積分:2
註冊:2005-01-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-08 15:28:46 IP:218.66.xxx.xxx 未訂閱
用VC写的一个dll(非COM方式),普通的dll 在c#或delphi2005中用"引用"->选该dll,出错:xxx.dll not a valid assembly,type library or com object 怎么用
yorkland
高階會員


發表:2
回覆:138
積分:108
註冊:2004-12-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-08 15:43:16 IP:220.130.xxx.xxx 未訂閱
一般的DLL, 不能用"引用"的方式使用吧。 你必須按步驟使用LoadLibrary, GetProcAddress, FreeLibrary的方式個別取得每一個Export Function的Handle。
wodahs
初階會員


發表:0
回覆:33
積分:26
註冊:2004-02-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-08 17:02:17 IP:210.64.xxx.xxx 未訂閱
試看看用DllImport方式宣告Unmanage Dll的函式. 參考回答sockman, 不過下面三點注意: 1.加上 using System.Runtime.InteropServices; //因為DllImportAttribute在那裡 2.記得把你的dll放在找得到的地方 3.呼叫時直接當作一般附程式呼叫 wodahs ====================================================================== 我是非出身科班的菜鳥,瞎子摸象,寫錯的地方,請大家包涵包涵,不要太認真 ^^ 歡迎大家批評指教,適時糾正我錯誤觀念,這樣我才會進步並學到正確的知識 ^^ ======================================================================
code6421
版主


發表:43
回覆:223
積分:208
註冊:2002-08-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-09 01:37:11 IP:220.135.xxx.xxx 未訂閱
引言: 用VC写的一个dll(非COM方式),普通的dll 在c#或delphi2005中用"引用"->选该dll,出错:xxx.dll not a valid assembly,type library or com object 怎么用
from .NET Framework SDK Samples.
using System.Runtime.InteropServices;
.....
public class LibWrap
{
  [ DllImport( "..\\LIB\\PinvokeLib.dll" )]
  public static extern IntPtr CreateTestClass();        
}    .....
......    public static void Main()
{
  IntPtr instancePtr = LibWrap.CreateTestClass();
}    
Just coding... Taiwan:http://code6421.ktop.com.tw China:http://home.hoolee.com/~code6421 發表人 - code6421 於 2005/03/09 01:39:29
------
Just codeing...
suaiming
一般會員


發表:12
回覆:1
積分:2
註冊:2005-01-12

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-09 08:57:53 IP:218.66.xxx.xxx 未訂閱
public class LibWrap { [ DllImport( "..\\LIB\\PinvokeLib.dll" )] public static extern IntPtr CreateTestClass(); } -------------------- 如何改成能在delphi.net中使用? 不知怎样边成delphi的语法
系統時間:2024-05-13 4:18:12
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!