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

绍兴网站建设制作百度指数行业排行

绍兴网站建设制作,百度指数行业排行,建一个个人网站一年多少钱,农业电商网站建设ppt其中要使用两个未公开的Win32 API函数来存取控制台窗口,这就需要使用动态调用的方法,动态调用中使用的Windows API函数主要有三个,即:Loadlibrary,GetProcAddress和Freelibrary。步骤如下: 1. Loadlibrar…

其中要使用两个未公开的Win32 API函数来存取控制台窗口,这就需要使用动态调用的方法,动态调用中使用的Windows API函数主要有三个,即:Loadlibrary,GetProcAddress和Freelibrary。步骤如下:

1.   Loadlibrary: 装载指定DLL动态库

2.   GetProcAddress:获得函数的入口地址

3.   Freelibrary: 从内存中卸载动态库

但是C#中是没有函数指针,无法直接使用GetProcAddress返回的入口地址。后来找到资料,其实.NET 2.0新增了Marshal.GetDelegateForFunctionPointer 方法可以满足这个要求,MSDN里的解释是:将非托管函数指针转换为委托。

后面的事就简单啦,我把它编成了一个类来方便调用。

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;namespace feiyun0112.cnblogs.com
{public class DllInvoke{Win API#region Win API[DllImport("kernel32.dll")]private extern static IntPtr LoadLibrary(string path);[DllImport("kernel32.dll")]private extern static IntPtr GetProcAddress(IntPtr lib, string funcName);[DllImport("kernel32.dll")]private extern static bool FreeLibrary(IntPtr lib);#endregionprivate IntPtr hLib;        public DllInvoke(String DLLPath){hLib = LoadLibrary(DLLPath);}~DllInvoke(){FreeLibrary(hLib);            }//将要执行的函数转换为委托public Delegate Invoke (string APIName,Type t)  {IntPtr api = GetProcAddress(hLib, APIName);return (Delegate)Marshal.GetDelegateForFunctionPointer(api, t);}}
}

下面是使用代码

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using feiyun0112.cnblogs.com;namespace ConsoleApplication1
{class Program{public delegate string Test(string a);static void Main(string[] args){DllInvoke dll = new DllInvoke("test2.dll");Test test = (Test)dll.Invoke("testC", typeof(Test));string s = test("ss");Console.WriteLine(s);Console.WriteLine("****************************************");Console.ReadLine();}}
}

 DllImport会按照顺序自动去寻找的地方:
1、exe所在目录
2、System32目录
3、环境变量目录
所以只需要你把引用的DLL 拷贝到这三个目录下 就可以不用写路径了

http://www.lbrq.cn/news/2457325.html

相关文章:

  • 纪委网站建设外贸建站与推广如何做
  • 网站的ftp别的公司会给么软文模板app
  • 简述可口可乐公司的企业网站建设seo是什么字
  • 百度网站权重it培训机构排名
  • 做百度网站浙江seo推广
  • 个人主机做网站代运营公司排行榜
  • 网站建设微信公众号小程序制作高端网站建设专业公司
  • 轻松做网站自己如何做链接推广
  • 手机开发者选项开启的好还是关闭的好天津seo渠道代理
  • 广州网站排名优化费用网站的营销策略
  • 江苏省建设厅网站公示河北seo
  • 网页制作成app哈尔滨seo关键词排名
  • 厦门网站建设报价seo网站推广专员
  • 大连专业手机自适应网站建设百度seo招聘
  • 网站上的报名表链接是怎么做的链接生成器在线制作
  • 宣传 网站建设方案廊坊seo优化排名
  • 京东商城网站设计网络安全培训
  • 建站宝盒做的网站互联网推广项目
  • 网站建设要花在哪些项目上网络整合营销理论案例
  • 网站恶意做评论万能软文模板
  • 易点科技网站建设本地推广最好用的平台
  • dw怎么做网站跳转今日足球赛事数据
  • 云南网站优化排名网络软文营销
  • 如何添加网站白名单今日新闻最新头条10条摘抄
  • 在手机上做网站是什么软件同城推广引流平台
  • 大学生做外包项目的网站seo排名软件免费
  • 摄影培训网站建设百度推广电话是多少
  • 第一个做装修的网站网络营销有哪些就业岗位
  • 美食网站怎么做美国seo薪酬
  • 十堰seo优化服务长沙关键词优化推荐
  • [Rust 基础课程]猜数字游戏-获取用户输入并打印
  • 力扣面试150题--寻找旋转排序数组中的最小值
  • [LeetCode]每日温度
  • 详谈OSI七层模型和TCP/IP四层模型以及tcp与udp为什么是4层,http与https为什么是7层
  • 斐波那契数列策略
  • MySQL数据库迁移至国产数据库测试案例