当前位置:编程学习 > C#/ASP.NET >>

C#调用打印机出现的代码提示

新手在网上弄的一个代码,如下
public string PrintLine(string str)
            {
                try
                {
                    IntPtr iHandle = CreateFile(prnPort, 0x40000000, 0, 0, OPEN_EXISTING, 0, 0);
                    if (iHandle.ToInt32() == -1)
                    {
                        return "打印机打开失败";
                    }
                    else
                    {
                        FileStream fs = new FileStream(iHandle, FileAccess.ReadWrite);
                        
                        StreamWriter sw = new StreamWriter(fs, Encoding.Default);
                        sw.WriteLine(str);
                        sw.Close();
                        fs.Close();
                        return "";
                    }
                }
                    catch(Exception)
                   {
                    throw;
                    }
                }

其中 FileStream fs = new FileStream(iHandle, FileAccess.ReadWrite);这个系统会有如下提醒:、

警告 1 “System.IO.FileStream.FileStream(System.IntPtr, System.IO.FileAccess)”已过时:“This constructor has been deprecated.  Please use new FileStream(SafeFileHandle handle, FileAccess access) instead.  http://go.microsoft.com/fwlink/?linkid=14202”

要怎么改一下就好了呢?
--------------------编程问答-------------------- 这只是一个警告,可以无视。

如果要去掉这个警告,可以

FileStream fs = new FileStream(((SafeFileHandle)iHandle, FileAccess.ReadWrite); --------------------编程问答--------------------
引用 1 楼 caozhy 的回复:
这只是一个警告,可以无视。

如果要去掉这个警告,可以

FileStream fs = new FileStream(((SafeFileHandle)iHandle, FileAccess.ReadWrite);

可以无视的话就不管他了,但是按照您说的也不行,没有SafeFileHandle这个东西,奇怪
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,