Assembly.CodeBase及Assembly.Location在Office编程的的区别

来源:互联网 发布:mac os 回到桌面 编辑:程序博客网 时间:2024/05/04 00:58

一直没时间去琢磨CodeBase及Location属性的区别在哪里。最近参与Office的VSTO编程,终于有时间研究了一小下。

Assembly.CodeBase返回的是file:///形式的字符串,指向的是Assebmly的加载地址。为Assembly的存放地。
Assembly.Location 返回的是Driver:/形式的字符串,指向的是Assembly执行的地址。此为Assembly在缓存里的地址。

由于Office加载的后置代码会被先临时缓存到本地的Cache中来执行,因此通过Location的属性我们可以找到该Assebmly到底被临时缓存到哪里了。

如果程序中要获得当前的运行路径,则不能使用Location属性,也不能使用GetCurrentDirectory方法,而应该使用CodeBase。

原创粉丝点击