当前位置: 首页 > news >正文

网站建设服务协议 印花税佛山顺德容桂做网站的公司

网站建设服务协议 印花税,佛山顺德容桂做网站的公司,建筑公司网站源码开源,青岛互联网平台公司1. 托管代码与非托管代码 托管代码#xff1a;我们编写的C#代码#xff08;也包括.net平台上的其他语言#xff0c;如VB#xff0c;J#等#xff09;#xff0c;首先经过编译器把代码编译成中间语言#xff08;IL#xff09;#xff0c;当方法被调用时#xff0c;公共…1. 托管代码与非托管代码 托管代码我们编写的C#代码也包括.net平台上的其他语言如VBJ#等首先经过编译器把代码编译成中间语言IL当方法被调用时公共语言运行库CLR把具体的方法编译成适合本地计算机运行的机器码并且将编译好的机器码缓存起来以备下次调用使用。 托管代码的源代码在运行时分为两个阶段  ①源代码编译为托管代码 ②托管代码编译为microsoft的平台专用语言也叫机器代码 非托管代码非托管代码是运行在公共语言运行库环境的外部直接编译成目标计算机码由操作系统直接执行的代码代码必须自己提供垃圾回收类型检查安全支持等服务。如需要内存管理等服务必须显示调用操作系统的接口通常调用Windows SDK所提供的API来实现内存管理。 一般可以认为非托管代码主要是基于win 32平台开发的DLLactiveX的组件托管代码是基于.net平台开发的。 托管代码和非托管代码的区别 1、托管代码是一种中间语言运行在CLR上非托管代码被编译为机器码运行在机器上。 2、托管代码独立于平台和语言能更好的实现不同语言平台之间的兼容非托管代码依赖于平台和语言。 3、托管代码可享受CLR提供的服务如安全检测、垃圾回收等不需要自己完成这些操作非托管代码需要自己提供安全检测、垃圾回收等操作。  2.Dll文件的使用 DLL文件是动态链接库也叫程序集是一个包含可由多个程序同时使用的代码和数据的库。 程序集是在 .NET 公共语言运行库 (CLR) 控制之下运行的逻辑功能单元。程序集实际上是作为 .dll 文件或 .exe 文件存在的。 托管代码生成的DLL文件可以在VS中直接通过添加引用的方式使用。 非托管代码生成的DLL文件比如使用C编写的代码编译生成的DLL不能在VS中直接引用可以通过DllImport方法来使用。 3.DllImport的基本使用 DllImport是System.Runtime.InteropServices命名空间下的一个属性类其功能是提供从非托管DLL导出函数的必要调用信息。 DllImportAttribute属性用法定义如下 [AttributeUsage(AttributeTargets.Method)] public class DllImportAttribute: System.Attribute {public DllImportAttribute(string dllName) {…} //定位参数为dllNamepublic CallingConvention CallingConvention; //入口点调用约定public CharSet CharSet; //入口点采用的字符接public string EntryPoint; //入口点名称public bool ExactSpelling; //是否必须与指示的入口点拼写完全一致默认falsepublic bool PreserveSig; //方法的签名是被保留还是被转换public bool SetLastError; //FindLastError方法的返回值保存在这里public string Value { get {…} } } DllImportAttribute 属性 CallingConvention指示入口点的调用约定。如果未指定 CallingConvention则使用默认值 CallingConvention.Winapi。CharSet 指示用在入口点中的字符集。如果未指定 CharSet则使用默认值 CharSet.Auto。EntryPoint 给出 dll 中入口点的名称。如果未指定 EntryPoint则使用方法本身的名称。ExactSpelling指示 EntryPoint 是否必须与指示的入口点的拼写完全匹配。如果未指定 ExactSpelling则使用默认值 false。PreserveSig 指示方法的签名应当被保留还是被转换。当签名被转换时它被转换为一个具有 HRESULT 返回值和该返回值的一个名为 retval 的附加输出参数的签名。如果未指PreserveSig则使用默认值 true。SetLastError 指示方法是否保留 Win32上一错误。如果未指定 SetLastError则使用默认值 false。 1引入命名空间 using System.Runtime.InteropServices; 2创建函数名称 [DllImport(kernel32)] private static extern long WritePrivateProfileString(string section,string key,string val,string filePath); 3注意事项 1.DllImport属性应用于方法要求最少要提供包含入口点的dll的名称。 2.修饰符static和extern是必不可少的extern外部修饰符常与DllImport属性一起使用用于支持在外部实现方法。 3.引入到C#中的只能是非托管dll中的方法或者说函数而不能是数据或者说变量 4.返回变量类型、方法名称、参数列表一定要与DLL文件中的定义相一致。若要使用其它函数名可以使用EntryPoint属性设置如 [DllImport(user32.dll, EntryPointMessageBoxA)] static extern int MsgBox(int hWnd, string msg, string caption, int type); 5.DLL文件必须位于程序当前目录或系统定义的查询路径中(即系统环境变量中Path所设置的路径)DLLImport会按照顺序去查找DLL文件(程序当前目录System32目录环境变量Path所设置路径)。 引用路径如下 (1)exe运行程序所在的目录 (2)System32目录 (3)环境变量目录 (4)自定义路径如DllImport(C:\OJ\Bin\Judge.dll)
http://www.hkea.cn/news/14303714/

相关文章:

  • 网站上的flv视频看不了编程外包平台
  • 东莞网站建设做网站网站建设项目设计表
  • 电子商务网站开发教程书内代码建设网站需要那几部
  • 网站已备案下一步怎么做xp系统中做网站服务器
  • 天津网站开发建设网站 验收
  • 网站怎么挂服务器陕西网站建设企业
  • wordpress 素材网站模版贵州省兴义市专做网站公司
  • 做问答营销的网站有哪些服务器重启后网站打不开
  • 吴中公司网站建设找哪家企业wap网站源码
  • 做门户型网站要多少钱做网站的工具
  • 网络网站开发html网站前台模板
  • jsp电子商务网站开发源码天蒙旅游区网络营销推广方法
  • 江苏省城乡建设局网站被网络运营公司骗了去哪里投诉
  • 宁波网站制作作网站开发的策划书
  • 免费3d模型网站php做网站难吗
  • 广告设计接单网站中国发布网
  • 如何做收费影视资源网站网站开发实践报告
  • 网站服务器配置参考指南长沙装修公司有哪些
  • 江西的赣州网站建设搜索案例的网站
  • 建湖专业做网站的公司高端购物网站
  • 厦门自己建网站成立新公司取什么名字好呢
  • 可以做天猫代码的网站cms的功能有哪些
  • 根据百度地图做网站徐州企业网站建设
  • 亚马逊虚拟主机做网站西安网页设计师
  • 招聘网站怎么做市场中锤音建设有限公司网站
  • 招聘网有哪些网站比较好sem 优化软件
  • 铁道部售票网站多少钱建设有网站源码怎么搭建网站
  • 四川省建设网站微信怎么弄小程序卖东西
  • 个人怎么建立网站线上营销的优势和劣势
  • 上线了自助建站优化方案物理必修三电子版