如何解决C#中的系统参数异常错误?

保罗

由于在此处声明了文件路径,因此出现错误:

private UIImageRes onClickImage = new UIImageRes(@"..\..\Resources\check_active.png",new Rectangle());

但是,当我声明实际路径时,它可以工作,即

private UIImageRes onClickImage = new UIImageRes(@"C:\Desktop\File\Resources\check_active.png",new Rectangle());

现在,此代码属于一个单独的项目,我将其添加到新项目中。我认为在其中放置确切的文件路径不是一个好主意。我将不得不在多个源代码中更改所有文件路径。另外,如果我将项目复制到另一个文件夹,则该项目将无法正常工作。我该怎么办?

编辑:

我对C#完全陌生,并且在C ++和Java方面具有一定的学术经验

哈桑

解决方案1

如果希望两个项目都使用固定路径,则可以使用INI文件存储路径。这将有助于以后更改路径而无需更改源代码。

解决方案2

使用Application.StartupPath构建路径。

例如:

string sRelativePath = System.IO.Path.Combine(Application.StartupPath, @"Resources\check_active.png");
private UIImageRes onClickImage = new UIImageRes(sRelativePath,new Rectangle());

Application.StartupPath提供启动应用程序的可执行文件的路径,不包括可执行文件的名称。

更新

假设Project1.exe位于此处:

C:\Desktop\File\Project1.exe

Application.StartupPath返回:

C:\Desktop\File

使用此功能时:

string sRelativePath = System.IO.Path.Combine(Application.StartupPath, @"Resources\check_active.png");

输出将为sRelativePath字符串:

C:\Desktop\File\Resources\check_active.png

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何解决错误:15:错误:无法推断类型参数的PriorityQueue <>中的OpenJDK 1.7.0_95?

如何解决“过程或函数指定了太多参数”的异常?

如何解决C#中的OutOfMemory异常?

如何解决c中的冲突类型错误?

如何解决TDS刺猬部署错误:“异常字典中不存在给定密钥”?

当int32行为异常时得到错误答案,如何解决?C#

在C#中对枚举进行序列化时,如何解决程序集ID错误?

如何解决GET参数中的API密钥错误?

如何解决通话中的额外参数?

GET中的StackOverflow异常错误,如何解决?

如何解决我的权限系统中的错误?(DISCORD.JS)

如何解决Git中的“远端异常挂断”错误

如何解决Null异常错误

我在C#和Docusign中遇到错误如何解决此错误

如何解决线程“ main”中的异常java.lang.NullPointerException错误

如何解决Objective-C中的“ NSInternalInconsistencyException”错误?

是什么导致我的系统日志中的ata异常以及如何解决它们

如何解决C ++头文件中的许多错误?

导入产品报告时图像栏显示错误,错误为“发生一般系统异常”。如何解决?

如何解决调用方法c#的库错误?

如何解决 C# 中的简单变量问题?

如何解决 C# linq 中的转换数据类型错误

如何解决 C# 中 linq 的 lambda 表达式中的对象引用错误?

如何解决c中的分段错误?

如何解决C程序中的分段错误

如何解决此 C# 代码中的 CORS 错误?

如何解决 XAML C# 中的动画问题?

如何解决操作系统错误

如何解决常规系统日志错误?