我初学C#,请问在C#中有样VB里的API文本浏览器吗

zkjun 2002-10-02 06:15:42
我在窗体里声明了这么一个API函数,但红色的波浪线在void下,编译时也提示这儿有错,请问这是什么原因,我也在窗体里声明了
using System.Runtime.InteropServices;
[DllImport("kernel32")]
public static extern void GetWindowsDirectory(StringBuilder WinDir,int count);
谢谢!
...全文
31 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
yarshray 2002-10-02
  • 打赏
  • 举报
回复
public static extern void GetWindowsDirectory(StringBuilder WinDir,int count);

你的StringBuilder
是应该有using System.Text;
zkjun 2002-10-02
  • 打赏
  • 举报
回复
已解决了,原来,我将它放到了Form1类的声明外了,看来和C#和VB还是不太一样。
zkjun 2002-10-02
  • 打赏
  • 举报
回复
我是放在form1.cs里的,请问放在类里怎么放。
TheAres 2002-10-02
  • 打赏
  • 举报
回复
语法没有错误,不知道兄台把这段code 放何处,要放在一个类里作为方法才可以. UINT 应该是 unit 才是.

[DllImport("kernel32")]
public static extern uint GetWindowsDirectory(StringBuilder WinDir,int count);

如果还是出错,贴上code来.
zkjun 2002-10-02
  • 打赏
  • 举报
回复
谢谢TheAres,我将Void 改为UINT,还是这儿报错,我晕。
yarshray 2002-10-02
  • 打赏
  • 举报
回复
StringBuilder 是在system.text中的!
TheAres 2002-10-02
  • 打赏
  • 举报
回复
查找API直接去微软的网站也可以, www.msdn.microsoft.com.

可以看到,GetWindowsDirectory是有返回值的,为unit. 所以void不可以.

具体请参考MSDN:
Platform SDK: Windows System Information
GetWindowsDirectory

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/getwindowsdirectory.asp

110,534

社区成员

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

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

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