C#项目中使用 using System.Runtime.InteropServices//需要使用的组件命名空间
[DllImport("WDT_DIO64.dll")]//导出C语言的DLL文件(我的WDT_DIO64.dll)
internal static extern int InitDIO()//导出C语言的功能函数接口(我的int InitDIO())
然后就可以在需要功能函数引用位置 使用功能函数。
一 调用静态载入1 客户端函数声名:
1)笮⌒疵舾小?br />
2)与DLL中的声明一样。
如: showform(form:Tform)Farexternal\'yproject_dll.dll\'
3)调用时传过去的参数类型最好也与windows c++一样。
4)调用时DLL必须在windows搜索路径中,顺序是:当前目录;Path路径;windowswidowswindows
二 调用动态载入
1 建立一种过程类型[如果你对过程类型的变量只是一个指针的本质清楚的话,你就知道是怎么回事了]。如:
type
mypointer=procedure(form:Tform)Farexternal
var
Hinst:Thandle
showform:mypointer
begin
Hinst:=loadlibrary(\'yproject_dll\')//Load一个Dll,按文件名找。
showform:=getprocaddress(Hinst,\'showform\')//按函数名找,大小写敏感。如果你知道自动化对象的本质就清楚了。
showform(application.mainform)//找到函数入口指针就调用。
Freelibrary(Hinst)
end
如你所说:.net中包括 vb.net java.net c#.net等.
.net是一个大的平台 它集成了很多中语言就如上面所说的.
你可以选择各种不同的语言来进行开发,个子遵循自己的语言风格.
Asp.net不属于咱们刚才说的那种语言环境当中,它不是个语言.而是一种模式.
ASP.net代表的就是 B/S开发,这个你明白吧?B/S就是 浏览器/服务器的模式.也就是咱们常说的网站开发.
C语言是一门单纯的语言,C语言是一个母语.就像VB的母语是PasCal一样.
.net中以c语言为母语的语言就是C#.net和Java.net两种.
.net可以用来开发网页和软件应用程序.
而C语言只能来写一些操作计算机底层的代码.
这样说可以嘛.