CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

DllImport的问题,com组件和.net组件可以直接引用,可是像kernel32.dll为什么要用DllImport来引用呢?

楼主superpopredboy()2006-03-05 13:17:56 在 .NET技术 / C# 提问

DllImport的问题,com组件和.net组件可以直接引用,可是像kernel32.dll为什么要用DllImport来引用呢?而且,不能用对象浏览器来看他里面的方法 问题点数:20、回复次数:6Top

1 楼superpopredboy()回复于 2006-03-05 13:47:42 得分 0

顶~~~~~~~~~~~~~`Top

2 楼onlyxuyang()回复于 2006-03-05 13:50:57 得分 0

生成的代码不一样  
  .net组件生成的代码是MSIL,当然可以被直接读取  
  而COM   组件和kernel32.dll等以前的动态连接库是生成的二进制本地代码  
  所以必须进行平台调用  
  而COM组件也不是全部都可以吧  
  COM   组件遵循标准写的,所以.net可以用固定的机制调用  
  而普通的.dll二进制动态连接库因为写法没有限制  
  所以只能自己声明了。。。。  
   
  用.net的语言说的话  
  .net中所有CTS类型都素类型安全的,  
  而.net平台的CTS以外的类型都素不安全类型  
  所以你在.net中要调用以前你使用不安全类型写的动态连接库的话就必须使用不安全类的平台调用,也就素你说的DllImport,建议你查一下MSDN关于平台调用方面的文章Top

3 楼superpopredboy()回复于 2006-03-05 13:54:09 得分 0

阿,谢谢,如果一个dll又不是,.net组件又不是com组件,我如何知道它里面的有什么方法呢,我如何去掉用他呢〉?  
  Top

4 楼onlyxuyang()回复于 2006-03-05 13:59:56 得分 20

这个当然素不可以调用的,或者有一个工具可以知道函数名但是不知道参数列表  
  要是装在.dll里面的函数原型那么容易就能知道的话  
  软件界就乱了,那就没人破解软件了。。。直接用别人的.dll核心的功能库自己做一个还方便点。。。。。。。。。Top

5 楼onlyxuyang()回复于 2006-03-05 14:17:57 得分 0

回答了竟然不给分。。。郁闷+Top

6 楼superpopredboy()回复于 2006-03-05 14:21:10 得分 0

阿  
  马上给~~~我是新来的,不知道  
  Top

相关问题

  • DLL组件问题?
  • 远程注册DLL组件
  • 关于DLL组件的问题
  • 关于远程的DLL组件
  • 请问.dll的组件怎么注册
  • Dll中Sockets组件的错误!
  • 怎样用Delphi写ActiveX DLL组件?
  • 求救 在DLL中包含ADO组件
  • 如何在自动化组件DLL(Automation组件DLL)中使用ActiveX控件?
  • 如何把有源代码的COM组件转换为非COM组件的DLL

关键词

  • .net
  • 组件
  • 安全
  • 代码
  • 平台
  • 连接
  • dll
  • 引用
  • dllimport
  • 调用

得分解答快速导航

  • 帖主:superpopredboy
  • onlyxuyang

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo