首页 新闻 会员 周边 捐助

如何调用另一个项目的文件?

0
悬赏园豆:30 [已解决问题] 解决于 2009-06-18 10:23

请教各位牛人:

环境:.net 2.0, virtual studio 2005,  winform

    假设有A和B两个项目(Windows 应用程序),在同一个解决方案下,但不在同一个文件夹下。A和B都可以独立运行,现在A项目的一个窗体要调用B项目下的一个窗体,于是我把B项目的Dll引入到了A项目。但是B项目下的该窗体运行时需要B项目下的一个xml文件,这时我运行A项目,调用B项目的窗体时,就会出现路径错误,因为它找不到了那个xml文件。我在B项目用的是相对路径,放在了debug文件夹下,路径为:  D:\myProject\Project_B\bin\debug\saveConfig.xml

   运行A项目,调用B项目的窗体时,该路径就会变为

D:\myProject\Project_A\bin\debug\saveConfig.xml

应该怎么解决这个问题啊?万分感谢!

strawberryww的主页 strawberryww | 初学一级 | 园豆:170
提问于:2009-06-17 21:13
< >
分享
最佳答案
0

在PostBuildEvent添加:

xcopy /r /y $(TargetPath) $(ProjectDir)..\Bin\
xcopy /r /y $(TargetDir)$(TargetName).pdb $(ProjectDir)..\Bin\

xcopy /r /y $(ProjectDir)saveConfig.xml $(ProjectDir)..\Bin\

在A,B项目的属性里都添加上面的Event,运行Bin目录下的可执行文件即可;

xml文件的路径就用Application.StartupPath +"saveConfig.xml";就可以了

winzheng | 大侠五级 |园豆:8797 | 2009-06-17 21:50
其他回答(2)
0

很简单,你把那个XML文件复制到A项目的debug里一份啊,对于附属文件,我一直是什么做的。

只要看看你的debug目录,你就知道B项目的dll也被复制到这里了,所以它的相对路径肯定就是这边了。

如果你期望在VS里经常修改这个文件,那么可以把这个XML文件通过“添加现有项..”功能添加到A项目中来,然后在它的属性里设置“始终复制”到输出目录,这样OK了。

斯克迪亚 | 园豆:4124 (老鸟四级) | 2009-06-17 21:45
0

楼上说的是正确的。

dwwwing | 园豆:661 (小虾三级) | 2009-06-17 22:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册