请问这两种调用非托管dll的方式的区别是什么 DllImportLoadLibraryGetProcAddress 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一般非托管dll和程序exe放在一个根目录,使用第二种方式。第一种是指定dll的绝对路径使用上没区别 http://www.cnblogs.com/szytwo/archive/2011/12/11/2283780.html 没什么区别都能运行不过我们习惯了把非托管的扔到system32下 所以采用第二种方式.如果是托管的 添加引用就自动在运行程序的目录下了. 第二种形式可以让你的托管程序集在使用Any CPU方式编译时,能根据运行环境动态选择加载32位还是64位的非托管dll。所以一般如果自己能确定环境,那么用第一种方式比较方便。而如果不能确定,比如你想封装一个非托管的库给别人用,它32位和64位形式都有,可以采用第二种方式。这种方式十分灵活,但是写起来比较麻烦。微软自己的SqlCe的托管程序集就是用第二种方式封装的。这两种方式也可以混合使用。开始就根据环境用LoadLibrary预先加载合适的非托管dll,DllImport的时候因为已经加载了就不会再加载了。SQLite的托管程序集就是用这样的混合方式。当然这一样需要处理不同环境下marshal的方式。 c# 条形码问题 如何将这种字符串转换成整数? DragObj.style 为空或者不是对象。 有个问题在vb版问了,vb版高手太少,特来这问问 请教一个字符串分组的问题 学生的感慨:.NET确实强大,但正因为它的强大,我感觉程序员以后真的会变成装配工了. 哈希表实例创建??? 怎样用c#获得打印机在打印那个文件的文件名? 这段代码哪里有问题? 谁知道DATAGRID控件如何给超连接列传递参数? C#写的程序出问题了,程序自动退出,系统日志里面提示.Net RunTime 由poinf决定的点,然后画出的线段怎么像素显示的
第一种是指定dll的绝对路径
使用上没区别