C#调用WIN32API的时候,大家都是怎么查阅相关资料的(欢迎大家进来讨论一下)

哈哈潜伏哥 2009-03-28 09:55:51
因为最近对API有一定的需求,所以做了相关的研究,但我发现C#调用WINAPI远不如VC++那么简单。在VC++中,如果需要调用某个API,直接在帮助中一查就知道这个函数的申明、参数等相关信息了,非常全面。
而C#则不行,c#的帮助中没有任何与API相关的信息可查。
我现在的做法是直接去查VC++帮助的相关说明,然后再根据VC++的帮助在C#中申明这个函数,一般情况下还好,但某些时候VC++数据类型转换为C#数据类型的问题真是很让人头疼啊。

问题(疑惑):
1、我虽然学习C#有很长时间了,虽然对部分API也了解一些,不过我不知道我上面说的是调用API的做法对不对,有没有比这个更简单的方法?
2、C#调用API的时候有没有更权威、详尽的文档(类似VC++的帮助文档)可查?
3、有没有一种文档可以查出任何API函数的C#申明的?

欢迎大家来讨论,这些问题可能不会有标准答案。我希望能得到高手的指点,同时也希望大家能共同进步。
...全文
220 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
lixtanjieq 2012-07-17
  • 打赏
  • 举报
回复
网上查查的。。
哈哈潜伏哥 2009-03-29
  • 打赏
  • 举报
回复
发这个帖子我学到不少东西啊,把以前零碎学到东西,通过各位提供的资料我重新整理了一下,获益匪浅啊。谢谢各位了。
哈哈潜伏哥 2009-03-28
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 doubleu2005 的回复:]
API精灵也不错
[/Quote]

我找来看看哈。对了我说的那个程序必须要.net 1.1的组件才能正常运行的。我也是为这个去下载了.net 1.1组件。
doubleu2005 2009-03-28
  • 打赏
  • 举报
回复
API精灵也不错
jishengzu 2009-03-28
  • 打赏
  • 举报
回复
lib目录下貌似是说明 不过全是英文的
jishengzu 2009-03-28
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 geaim 的回复:]
刚刚发现一个好东西,一个第三方程序,专门用于浏览C#的API申明的。呵呵很不错。

下载地址:

http://www.onlinedown.net/soft/20103.htm
[/Quote]
怎么没使用说明? 而且.NET Framework 是1.几的版本 exe程序打不开
里面带的Dll有什么说明
特别 2009-03-28
  • 打赏
  • 举报
回复
Mark
冷月孤峰 2009-03-28
  • 打赏
  • 举报
回复
10楼兄弟提供的不错
哈哈潜伏哥 2009-03-28
  • 打赏
  • 举报
回复
刚刚发现一个好东西,一个第三方程序,专门用于浏览C#的API申明的。呵呵很不错。

下载地址:

http://www.onlinedown.net/soft/20103.htm
jishengzu 2009-03-28
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wanghui0380 的回复:]
主要是这几个东西
新编win32api大全----工具书
API Explorer -------查询工具
pinvoke.net------vs api插件
http://pinvoke.net/ 该插件官方wike
[/Quote]
新编win32api大全 有网址没 我的很多个API函数都没有 还有对应AIP函数的入口点也没说
zzxap 2009-03-28
  • 打赏
  • 举报
回复
去google里百度一下你就知道了
wanghui0380 2009-03-28
  • 打赏
  • 举报
回复
主要是这几个东西
新编win32api大全----工具书
API Explorer -------查询工具
pinvoke.net------vs api插件
http://pinvoke.net/ 该插件官方wike
xminsong 2009-03-28
  • 打赏
  • 举报
回复
我的主要来自以前Delphi的资料,或帮助!
zgke 2009-03-28
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 geaim 的回复:]
你说的Win32API.chm好像没有直接出来就是C#申明的吧。不知道大家见过VB的API浏览器没有,直接出来就是VB中的申明了,爽的很啊。要是C#也有就好了。
[/Quote]

这个是有的 直接出来是C#的..但有些东西还需要改下..
yagebu1983 2009-03-28
  • 打赏
  • 举报
回复
http://www.cnblogs.com/prince1985s/archive/2008/03/16/1108053.html
http://www.cnblogs.com/diyer/articles/1241975.html
http://www.cnblogs.com/jfei1982/articles/902625.html
http://www.cnblogs.com/sxlfybb/archive/2007/09/08/303788.html
看看是否对你有用。。。
哈哈潜伏哥 2009-03-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zgke 的回复:]
1 直接去查VC++帮助的相关说明,找一个API查询工具或则你直接找个别人写到的API类.
2 查VC++的帮助就很不错拉.只是同一个方法.参数转换了而已.
3 有网上很多第三方的.有些可能还需要改动下.
[/Quote]

谢谢你的意见,我现在基本都是这么做的。不过我奢望的是还有权威、简便的方法,但愿有这个方法而我不知道,所以到这里求证一下。呵呵
哈哈潜伏哥 2009-03-28
  • 打赏
  • 举报
回复
你说的Win32API.chm好像没有直接出来就是C#申明的吧。不知道大家见过VB的API浏览器没有,直接出来就是VB中的申明了,爽的很啊。要是C#也有就好了。
zgke 2009-03-28
  • 打赏
  • 举报
回复
1 直接去查VC++帮助的相关说明,找一个API查询工具或则你直接找个别人写到的API类.
2 查VC++的帮助就很不错拉.只是同一个方法.参数转换了而已.
3 有网上很多第三方的.有些可能还需要改动下.
YSEE 2009-03-28
  • 打赏
  • 举报
回复
下载 Win32API.chm
网上有很多。要是找不到直接找我要。
cja03 2009-03-28
  • 打赏
  • 举报
回复
一般都是上网查。
加载更多回复(3)

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧