弱问HANDLE是用哪个命名空间的。100分

GR 2005-05-02 10:53:34
初次用C#,不太习惯。碰到此类问题我在MSDN上应该如何寻找。没有头绪。faint
请教各位大哥
...全文
256 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
GR 2005-05-03
  • 打赏
  • 举报
回复
吐血,我复制了他的源码,就通过了。InPtr复制了一下就搞定了。不知道怎么回事。C#,faint
GR 2005-05-02
  • 打赏
  • 举报
回复
using System.Runtime.InteropServices.Marshal;

找不到这个Marshal.

[DllImport("Kernel32.lib")]
public static extern bool WriteFile(
HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped
);
我引用这个WriteFile.
说我HANDLE找不到类型命名空间

inptr也没有。不知道为什么,Systme.IO.FileStream也找不到。我昨天就在MSDN上找到这个FileStream,但是工程里就放不进去,是为什么,要怎么定义这些东西
mmqingfeng 2005-05-02
  • 打赏
  • 举报
回复
System.InPtr是一个结构,不需要using,using后面跟的是命名空间
你可以直接这样写

System.InPtr hFile

或者
using System;
InPtr hFile;

一般在VS.NET中建立工程的时候会自动加上using System的
writefile在.NET中被包装成System.IO.FileStream类,
具体你可以参考MSDN,直接搜System.IO.FileStream
mmqingfeng 2005-05-02
  • 打赏
  • 举报
回复
而使用System.Runtime.InteropServices.Marshal类,
可以进行许多关于HANDLE的操作和处理

具体要看你是在什么地方使用HANDLE了,在Windows的世界里,到处都是HANDLE :)
GR 2005-05-02
  • 打赏
  • 举报
回复
用法呢?

using System.InPtr ?

比如是writefile。第一个参数为HANDLE。我定义的时候,它说我USING不正确找不到

junwhj 2005-05-02
  • 打赏
  • 举报
回复
每个窗口(如Form,UserControl,PictureBox)都有Handle属性,类型为System.IntPtr
mmqingfeng 2005-05-02
  • 打赏
  • 举报
回复
不清楚writefile操作串口的实现方法啊,
如果你有C的源程序的话,倒可以翻译到C#

这里有篇串口操作的文章,可以参考一下
http://msdn.microsoft.com/msdnmag/issues/02/10/NETSerialComm/default.aspx
GR 2005-05-02
  • 打赏
  • 举报
回复
mmqingfeng(漠漠青峰) ( )

多谢你了。因为我是想用writefile操作串口

看了一下MSDN.FileStream 类 的write似乎不具备对串口的操作能力,望指教一下,多谢多谢
mmqingfeng 2005-05-02
  • 打赏
  • 举报
回复
嗯,好吧,不要管Marshal了,
如果你现在就是想写文件的话,看下面这个例子
另外,你现在是在写C#,而不是C++,
所以,请暂时忘掉HANDLE,重新看看在.NET Framework中如何实现你所希望完成的功能吧

using System;
using System.IO;

class Test
{
public static void Main()
{
// Create an instance of StreamWriter to write text to a file.
// The using statement also closes the StreamWriter.
using (StreamWriter sw = new StreamWriter("TestFile.txt"))
{
// Add some text to the file.
sw.Write("This is the ");
sw.WriteLine("header for the file.");
sw.WriteLine("-------------------");
// Arbitrary objects can also be written to the file.
sw.Write("The date is: ");
sw.WriteLine(DateTime.Now);
}
}
}

110,534

社区成员

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

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

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