当直接从工作目录打开解决方案文件时,
Directory.GetCurrentDirectory()是可以取到当前的项目工作目录的。但如果打开VS后,在现有项目的链接中打开项目,则取到的是IDE的工作目录,
例如安装在D盘program files下,
取到的就是
就是D:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE请教如何在设计时状态正确的获取当前项目的物理目录。

解决方案 »

  1.   

    use EnvDTE.DTE, seehttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwinforms/html/xpthemeaddin_.asphttp://blogs.msdn.com/mszcool/archive/2004/06/30/169793.aspxDim proj As EnvDTE.Project
    projectFilePath =  CStr(proj.Properties.Item("FullPath").Value)
      

  2.   

    zhanqiangz(闲云野鹤) 请注意 ,是DTE状态。
    我在asp.net控件中采用了弹出winform对话窗体的辅助设计器,跟本不可能用.
    甚至连这个
    EnvDTE.DTE _dte = (EnvDTE.DTE )Site.GetService(typeof(EnvDTE.DTE )); 
    都是错误的。