- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
总结的c#调用DLL方法
现粗略总结两种C#调用DLL库的方法,一种是C++写的DLL库,另一种则是C#生成的DLL库,详细给出了两种不同的使用例子以供菜鸟们学习提高。 第一种情况:C# 中调用DLL 用VS写好如下代码编译成DLL库 struct HHFC_SET { char* UID; int code; }; extern C __declspec(dllexport) int PReadUID(HHFC_SET* mystruct) { int a=5; CString ds=sea; // mystruct-UID=ds.GetBuffer(ds.GetLength()+1); mystruct-UID=hello!; test tt; tt.ws(); return a; } 在C#中生成一个文件名为Ivoke.cs(随意取的) namespace PInvoke//域名空间,随意取 { public class Ivoke//类名随意取 { [DllImport(standerMFC.dll)] //nPort:1代表COM1,返回-1代表已经打开COM PORT失败,0代表COM已经打开,返回其它值表示打开对应的COM // public static extern int hp(); public static extern int C++中定义的函数名(ref HHFC_SET stru);//这样的外部函数引用在每一个CS文件中只能有一个,且只能是函数,不能是类 } public struct HHFC_SET { public String Uid; public int code; }//C++写的DLL文件中定义的结构体 } 在CS编辑器中再次添加一个CS文件,名字自取,但包函main入口函数,在这个文件中便可以引用C++写的DLL文件中的函数了 using System; using System.Text; namespace PInvoke { class Class1 { static void Main(string[] args) { HHFC_SET stru=new HHFC_SET (); stru.Uid=; HHFC_SET stru1 = new HHFC_SET(); stru1.Uid = weisong513!; Ivoke.PReadUID(ref stru); Console.WriteLine(stru.Uid+,+stru1.Uid); Console.Read(); } } } 第二种情况:C#调用C#写的DLL文件 (一)、准备工作 我们需要对我们接下来要做的事情做个简单的介绍,在本文我们将利用C#语言创建一个名为 MyDLL.DLL的动态链接库,在这个动态链接库文件中我们将提供两个功能一个是对两个参数交换他们的值,另一个功能是求两个参数的最大公约数。然后创建一个应用程序使用这个DLL。运行并输出结果。 (二)、创建DLL (1)创建以下三个C#代码文件: 1、 MySwap.cs using System; namespace MyMethods { public class SwapClass { public static bool Swap(ref long i,ref long j) { i = i+j; j = i-j; i = i-j; return true; } } } 2、 MyMaxCD.cs using System; namespace MyMethods { public class MaxCDClass { public static long MaxCD(long i, long j) { long a,b,temp; if(ij) { a = i; b = j; } else { b = i; a = j; } temp = a % b; while(temp!=0) { a = b; b = temp; temp = a % b; } return b; } } } } (2)接下来的任务是把这两个cs文件变成我们需要的DLL文件。 在安装了Microsoft.NET Framework的操作系统上的Windows所在目录下找到Microsoft.NET目录,找到C#的编译器:CSC.E
有哪些信誉好的足球投注网站
文档评论(0)