一个.net dll可能被win app或web app调用,这个类库需要知道自己所在的物理路径(如果是web app相当于要mappath),但是在类库项目里不知道调用者的情况

解决方案 »

  1.   

    使用 Environment.CurrentDirectory 试一下。
      

  2.   

    using System.IO;
    Directory.GetCurrentDirectory();
      

  3.   

    我觉得你的思路有些问题,即使按照上面的方法获得路径,你也无法知道是被win app或web app调用,因为获得的路径是绝对路径。为什么不直接让win app或web app来告诉dll,谁在调用它不是更合理些。
      

  4.   

    cmd 下到是有这个可以看。 msinfo32.exe  至于c#里就不清楚了。
      

  5.   

    Environment.CurrentDirectory和Directory.GetCurrentDirectory()都不行
    如果是WebApp调用的话都是iis程序路径c:\xxxx某个固定的iis安装路径而不是网站所在路径
      

  6.   

    System.Windows.Forms.Application.StartupPath();