作者Whistler (Redmond,WA 98052)
看板C_Sharp
标题Re: [问题] 关於c#和c,c++互相呼叫的问题
时间Wed Jun 2 03:41:43 2004
MSDN上面有许多interop的文章
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet
/html/manunmancode.asp
请自行连结
一般来说 managed呼叫unmanaged有以下选择
1. COM Interop 利用COM机制
2. Platform Invoke 直接呼叫
3. IJW (It just work, only available to C++)
unmanaged呼叫managed有以下选择:
1. COM Interop
2. (Only C++:) C++可以直接呼叫managed API.
3. 利用(2), 写一个C++ wrapper, 让你的其他unmanaged code使用
选择方式 你可以看看以上网页有一个图
COM Interop是非常方便的 虽然刚开始你可能要花一些时间搞清楚RCW, CCW的观念
如果你要设计一个interface给managed/unmanaged code来interop,
我会建议使用COM interop
※ 引述《QCher (QCher)》之铭言:
: 请解说在Windows环境下可否在C# .NET中呼叫C或C++的函式,反向呼叫(以C呼叫C#)
: 是否可行,若可行该怎麽达到,若不可行,原因何在?
: 这是学长出的问题..
: 我同学说这里有答案..可是我看不懂哪个答案是我需要的..
: 可以请知道的人告诉我答案..或告诉我答案在哪个讨论串吗?
: (我找的时候觉得"c#视窗程式设计"那个论串似乎有点像..)
: sorry...请大家帮帮我
: 谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 207.46.238.137