大家好,首先,我向您提出这样一个简单而又多余的问题表示歉意,但似乎我的情况有些不同,因为谷歌搜索未能提供答案。
我有2个项目的解决方案,分别是proj1和proj2,其中proj1是winform应用程序,而proj2是类库应用程序.proj1坐在这里
C:\ Documents and Settings \ myname \ My Documents \ Visual Studio 2005 \ Projects \ proj1 \ proj1
班级图书馆在这里
C:\ Documents and Settings \ myname \ My Documents \ Visual Studio 2005 \ Projects \ proj1 \ proj2
现在我在子文件夹“报告”中有一个报告,其中有我的Crystalreport和其他内容
我需要这个proj1的根路径
C:\ Documents and Settings \ myname \ My Documents \ Visual Studio 2005 \ Projects \ proj1 \ proj1
这样我将@"Report\myreport.rpt"
附加到它。我相信这应该是已部署计算机上的相对路径。如果我错了,请纠正我。主要思想是在以下位置具有Report文件夹的相对路径
C:\ Documents and Settings \ myname \ My Documents \ Visual Studio 2005 \ Projects \ proj1 \ proj \ Report。
从我在网上搜索的所有内容
像Environment.CurrentDirectory
或Application.StartupPath
或Application.ExecutablePath
或System.Reflection.Assembly.GetExecutingAssembly().Location
只是给我bin / proj1.exe或调试文件夹。
我只是不知道该怎么做
谢谢您阅读本文。哦,是的!和你的好答案。
PS:使用C#2.0
最佳答案
您只需将报告文件的属性“复制到输出目录”设置为“始终复制”或“如果更新则复制”。这将在构建期间将报告复制到实际输出目录下,您可以使用Path.Combine(Application.StartupPath, "Reports", "report.rpt")
访问它。
关于c# - Winform根目录路径。如何再次!,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/857435/