net中如何读取dll中所有函数

net中如何读取dll中所有函数,第1张

javaScript函数中执行C#代码中的函数:

方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;

2、在前台写一个js函数,内容为documentgetElementById("btn1")click();

3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;

方法二:1、函数声明为public

后台代码(把public改成protected也可以)

public string ss()

{

return("a");

}

2、在html里用<%=fucntion()%>可以调用

前台脚本

<script language=javascript>

var a = "<%=ss()%>";

alert(a);

</script>

方法三:1、<script language="javascript">

<!--

function __doPostBack(eventTarget, eventArgument)

{

var theForm = documentForm1; //指runat=server的form

theForm__EVENTTARGETvalue = eventTarget;

theFrom__EVENTARGUMENTvalue = eventArgument;

theFormsubmit();

}

-->

</script>

<input id="Button1" type="button" name="Button1" value="按钮" onclick="javascript:__doPostBack('Button1','')">

方法四:<script language="javascript">

function SubmitKeyClick()

{

if (eventkeyCode == 13)

{

eventcancelBubble = true;

eventreturnValue = false;

documentallFunNamevalue="你要调用的函数名";

documentform[0]submit();

}

}

</script>

<INPUT onkeypress="SubmitKeyClick()" id="aaa" type="text">

<input type="hidden" name="FunName"> 〈!--用来存储你要调用的函数 --〉

在CS里有:

public Page_OnLoad()

{

if (!PageIsPost())

{

string strFunName=RequestForm["FunName"]!=nullRequestForm["FunName"]:"";

//根据传回来的值决定调用哪个函数

switch(strFunName)

{

case "enter()":

enter() ; //调用该函数

break;

case "其他":

//调用其他函数

break;

default:

//调用默认函数

break;

}

}

}

public void enter()

{

//……比如计算某值

}

呵呵,学习资料里的,不知出处,还请作者原谅

调用DLL有两种方法:静态调用和动态调用

(一)静态调用其步骤如下:

1把你的youAppDLL拷到你目标工程(需调用youAppDLL的工程)的Debug目录下;

2把你的youApplib拷到你目标工程(需调用youAppDLL的工程)目录下;

3把你的youApph(包含输出函数的定义)拷到你目标工程(需调用youAppDLL的工程)目录下;

4打开你的目标工程选中工程,选择Visual C++的Project主菜单的Settings菜单;

5执行第4步后,VC将会d出一个对话框,在对话框的多页显示控件中选择Link页。然后在Object/library modules输入框中输入:youApplib

6选择你的目标工程Head Files加入:youApph文件;

7最后在你目标工程(cpp,需要调用DLL中的函数)中包含你的:#include "youApph"

注:youApp是你DLL的工程名。

(二)动态调用其程序如下:

动态调用时只需做静态调用步骤1

01 {

02 HINSTANCE hDllInst = LoadLibrary("youAppDLL");

03 if(hDllInst)

04 {

05 typedef DWORD (WINAPI MYFUNC)(DWORD,DWORD);

06 MYFUNC youFuntionNameAlias = NULL;

07 // youFuntionNameAlias 函数别名

08 youFuntionNameAlias = (MYFUNC)GetProcAddress(hDllInst,"youFuntionName");

09 // youFuntionName 在DLL中声明的函数名

10 if(youFuntionNameAlias)

11 {

12 youFuntionNameAlias(param1,param2);

13 }

14 FreeLibrary(hDllInst);

15 }

16 }

显式(静态)调用:

LIB + DLL + H,注意H中dllexport改为dllimport

隐式(动态)调用:

DLL + 函数原型声明,先LoadLibrary,再GetProcAddress(即找到DLL中函数的地址),不用后FreeLibrary

没有dumpbin工具的话,去网上下载

在cmd下面,进入dump文件的目录下

方法/步骤

1

接着,我们输入命令 dumpbin -export dll名

,函数名出来了。。。

2

还有其他命令,可以参考help,这样就可以了。

还有另外一种方式是用软件查看的。

不能直接导入到maya中,必须先导入到3dmax中再倒入到maya中

步骤:

先下载GameAssassin和3dmax插件与需要的dll(这些文件可以到GameAssassin官方网站上下载到),并运行

安装3dmax插件

运行游戏,按下ALT+F7截取模型

打开3dmax并导入模型

打开文件菜单中的导出,格式为OBJ(也可以是FBX)

打开maya并导入你导出的文件就可以了

Dll函数查看器

>

以上就是关于net中如何读取dll中所有函数全部的内容,包括:net中如何读取dll中所有函数、怎么提取DLL文件中的导出函数呢、怎么查看dll里面的函数,怎么用dumpbin查看dll等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9565181.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存