Vb.net &引用;配置系统未能初始化";当.Net可执行文件移动到程序文件(x86)文件夹时

Vb.net &引用;配置系统未能初始化";当.Net可执行文件移动到程序文件(x86)文件夹时,vb.net,winforms,Vb.net,Winforms,我有一个令人困惑的问题:在我的VB.Net(v4.5.2)Windows窗体应用程序中调用GetSetting会导致“配置系统初始化失败”错误——但只有当.exe和.exe.config被移动到它们在C:\Program Files(x86)\MySubfolder中的部署文件夹时。只要我将相同的两个文件拖到桌面(或其他任何地方),它就会正常运行。(就此而言,开发副本也会运行) 什么可能导致这种情况,以及我可以采取什么步骤进行故障排除?这取决于GetSettings的功能-如果它尝试从Progr

我有一个令人困惑的问题:在我的VB.Net(v4.5.2)Windows窗体应用程序中调用GetSetting会导致“配置系统初始化失败”错误——但只有当.exe和.exe.config被移动到它们在C:\Program Files(x86)\MySubfolder中的部署文件夹时。只要我将相同的两个文件拖到桌面(或其他任何地方),它就会正常运行。(就此而言,开发副本也会运行)


什么可能导致这种情况,以及我可以采取什么步骤进行故障排除?

这取决于
GetSettings
的功能-如果它尝试从
Program Files
中的文件读取/加载/保存,它将因任务而失败随机猜测是您以前做过,但设置不同。因此它保留在一个旧的user.config文件上。项目>属性>应用程序选项卡>程序集信息按钮>增加程序集版本号。输入原始版本,代码是内置的“GetSetting”(非GetSetting)。例如GetSetting(“MyProduct”、“Settings”、“SerialNum”和“”),有趣的是,如果更改程序集版本(!),代码会运行。知道为什么吗?(GetSetting/SaveSetting存储到注册表,而不是程序文件(x86)