能力值:
( LV5,RANK:70 )
|
-
-
2 楼
C/C++Code :
[font=Fixedsys][color=#000000]HMODULE Dll [/color][color=#000080]= [/color][color=#000000]LoadLibraryA [/color][color=#000080]( [/color][color=#000000]Dll路径 [/color][color=#000080]);
[/color][color=#000000]FunctionCall Fun [/color][color=#000080]= [/color][color=#000000]GetProcAddress [/color][color=#000080]( [/color][color=#000000]Dll[/color][color=#000080], [/color][color=#000000]函数名字 [/color][color=#000080]);[/color][/font]
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
现在是别人的原程序我没有原代码的啊,我是用添加输入表函数的方法,再调用DLL,但C#是运行在NET框架上的,好像这种方法不能直接调用C#写的DLL,用什么好方法没啊
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
1 假如一个C# DLL,代码如下:
namespace CSLib
{
public class Class1
{
private string name;
public string Name
{
get
{
return name;
}
set
{
name = "Your Name: " + value;
}
}
}
}
2 C++客户程序,是个控制台应用,代码:
#using "..\debug\CSLib.dll"
using namespace CSLib;
int _tmain(int argc, _TCHAR* argv[])
{
Class1 ^c = gcnew Class1();
c->Name = "zzj";
printf("%s\n", c->Name);
return 0;
}
3 几点要记住:
1 使用#using引用C# DLL,而不是#include。
2 别忘了using namespace CSLib;
3 使用C++/clr语法,采用正确的访问托管对象,即:使用帽子'^',而不是星星'*'。
另外,没有源代码没关系,用Reflector即可看到,下载链接请Google之。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
呵呵,可能是我只有初中文化底子,所以表达能力不是很好,楼上的方法是说在C++程序(有原代码)里怎么调用C#DLL程序,我知道可以这样做,就是在我要修改的程序里(没原代码)添加自己定义的输入表函数,然后用C++写要自己定义的函数DLL,在C++DLL里再用楼上的方法调用C#的DLL,但我现在是想直接在人家的程序上调用C#DLL,怎么实现啊?其实这跟DLL注入有点相似
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
这个真不会。。。貌似很高深滴样子。不晓得有木有这样的技术,找大牛问下,我观望中……
|
|
|