【发布时间】:2014-07-27 15:38:03
【问题描述】:
我为我的 C# VS2008 程序创建了一个 msi 安装程序。该程序从位于安装文件夹中的 xml 文件中读取数据,并复制可以在同一文件夹中找到的 excel 文件。
当我在调试模式或发布模式下运行它时,它工作正常。但是,使用 MSI 安装程序后,我使用真正的可执行文件,我收到以下错误:
错误:对路径 C:\ 的访问被拒绝。 (现已解决)
错误:未找到匹配的配置文件。请联系您的服务提供商。 (现在已经解决了。)
错误:给定的键不在字典中。 (这发生过 在另一台机器上,一台笔记本电脑上,当试图从 csv 转换为 优秀。)
关于安装 MSI 后可能导致此问题的任何想法?
编辑:前两个错误已解决,但第三个错误仍然存在。
【问题讨论】:
-
您的代码正在使用一个字典类,可能与 xml 文件有关,并且在您读入它之后,您正在引用一个不存在的键。我猜是因为您没有说明您的程序对 xml 文件的实际操作。通过使您的代码更智能并在使用之前测试密钥是否存在,这应该很容易调试。您可能加载了错误的 Xml 文件。您要求我们弄清楚为什么您的代码无法在未显示代码或实际安装文件夹中的 Xml 的情况下与 Xml 文件一起使用!
-
是的,我已经找到了。出于某种原因,在一台计算机上,它接受 Workbooks.Worksheets[1] 作为我正在向其传输信息的 Excel 工作表的选择,但在另一台计算机上,它认为它超出了范围。我通过输入工作表的名称来修复它。
标签: c# excel csv windows-installer converter