当前位置:首页 > 技术心得 > 正文内容

C# XmlSerializer无法创建文件或目录

xjtudll7年前 (2019-04-09)技术心得6400

现象:

在某一台XP机器上,时而正常,时而弹出无法创建文件或目录

错误具体信息:

在 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

在 System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath)

在 System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)

在 Microsoft.CSharp.CSharpCodeGenerator.GetResponseFileCmdArgs(CompilerParameters options, String cmdArgs)

在 Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames)

在 Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources)

在 Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources)

在 System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources)

在 System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence)

在 System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies)

在 System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace)

在 System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)

在 System.Xml.Serialization.XmlSerializer..ctor(Type type)

在 XonixERP.Common.AppConfigSetting.get_Config()

在 DLL.ERP.WinFormUI.ClassUtil.CreateInstance(Type type)

在 XonixERP.View.LogonForm.btnLogin_Click(Object sender, EventArgs e)

在 System.Windows.Forms.Control.OnClick(EventArgs e)

在 System.Windows.Forms.Button.OnClick(EventArgs e)

在 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)

在 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)

在 System.Windows.Forms.Control.WndProc(Message& m)

在 System.Windows.Forms.ButtonBase.WndProc(Message& m)

在 System.Windows.Forms.Button.WndProc(Message& m)

在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)

在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)

在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

原因分析:XmlSerializer 运行时所属的帐户或安全环境需要有访问temp 目录的权限

解决办法:

更改权限

1、若C盘是FAT格式,需要将TEMP目录,TMP目录迁移。若C盘是NTFS格式,可跳过此步。

470b234a-2ee7-48c8-8188-a34949ec08a2

2、迁移到NTFS目录后,修改目录权限,允许登录的账户读写

如果没有安全选项卡

点掉"使用简单文件共享",是取消掉它,而不是勾上,一定要注意这一点

a0512321-8320-4439-a893-26f9868cb65c

有没有发现,"安全"选项卡已经出来了

c5e14fa3-0b1c-41ec-a902-f8514576a952

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/541/

标签: C#
分享给朋友:

“C# XmlSerializer无法创建文件或目录” 的相关文章

Keil C51过滤0xfd字符的bug(某些汉字无法正常显示)

Keil C51过滤0xfd字符的bug(某些汉字无法正常显示)

keil c51在编译的时候会将0xfd的字符(有些汉字含该字符的内码)过滤, 而导致程序出错。 所以在做液晶汉字显示时. 有些汉字根本没法显示出来,例如“三”。 这个bug已经很多年了,不知道为什么keil一直不修正。 针对这个bug,某网友制作了补丁。 补丁使用办法,将补...

ZBlog 1.8 ASP转PHP

ZBlog 1.8 ASP转PHP

ZBlog 1.8 ASP转PHP版本过程第一步:将ZBlog升级到2.x版本,因为只有2.x才支持【ZBlog PHP转换工具】需要注意的是:官方下载最新的ASP版本里面没有zb_update18to20这个文件夹,需要从GitHub(https://github.com/zblogcn/zblo...

Proteus 7.6SP4破解1.0完美补丁

Proteus7.6支持MSP430,相信大家都知道,但是网上的破解要么不支持中文系统,要么自动退出,今天终于找到了一款中文操作系统下能用的不自动退出的破解了。这个是国内一牛人破解的,以前都是国外的牛人破解的,所以很多只支持英文系统。Proteus7.6SP4下载地址:http://rapidsha...

老单单据上下查,某些字段在上下查出来的界面看不到

https://vip.kingdee.com/questions/55600564193023233/answers/55600565182629120 问题描述: 例如:将外购入库上的【保管】字段显示在序时簿界面,但是在采购发票序时簿上查外购入库单的界面看不到【保管】,查询起来不方便。 解决方案...

SQL Server 树形递归查询

SQL Server 树形递归查询

原始查询 原始表格查询: select * from dbo.T_DeptInfo; 原始表格查询结果:: 递归查询 递归查询结果 带缩进的的树形递归查询 缩进递归查询结果 查询是否子节点的树形递归查询 树形递归查询是否包含子节点的查询结果...

C# MDI子窗体启动后没有最大化

C# MDI子窗体启动后没有最大化

目的: 子窗口启动显示后最大化,也就是填充了整个父窗体 但是发现一个问题: 如果在 Visual Studio 2005里通过属性工具栏设定了子窗体的 WindowState 为 Maximized,然后在运行过程中会发现子窗体实例化时不会最大化,而是当改变了父窗体的大小之后才随即最大化。而通过在子...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。