今天的项目中遇到一个问题,从一个应用程序使用 Process.Start 打开第二个应用程序
第二个程序里使用了动态读取地址ConfigurationManager.AppSettings["Folder"]
最后发现,如果是相对路径,则在这里读取到的地址指向第一个应用程序
因为时间紧张,没有能够找到如何将默认环境改变到第二个应用程序下。使用了一个临时解决方案。判断获取到的是否相对路径,如果是相对路径就处理,是绝对路径直接使用
// Handle absolute path and relative path private string PathFormat(string path, string currentFolder) { string result = (path.IndexOf(":") > 0) ? path : Path.Combine(currentFolder, path); return result; }
其中当前的基础目录这样获得: AppDomain.CurrentDomain.BaseDirectory
如果有高手知道正规的解决方案,请指教 十分感激
本文解决了一个应用程序通过Process.Start启动另一个程序时,配置文件路径被错误地解析为首个应用路径的问题。提供了一种方法来判断并转换相对路径。
706

被折叠的 条评论
为什么被折叠?



