这段代码运行得很好:
System.Security.PermissionSet PS = new System.Security.PermissionSet(PermissionState.None);
PS.AddPermission(new FileIOPermission(FileIOPermissionAccess.AllAccess, Path));
PS.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution));
AppDomainSetup ADS = AppDomain.CurrentDomain.SetupInformation;
AppDomain domain = AppDomain.CreateDomain("Pluging", null, ADS, PS, null);
Assembly asm = Assembly.LoadFile(DLLPath);
domain.Load(asm.FullName);创建新AppDomainSetup失败:
System.Security.PermissionSet PS = new System.Security.PermissionSet(PermissionState.None);
PS.AddPermission(new FileIOPermission(FileIOPermissionAccess.AllAccess, Path));
PS.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution));
AppDomainSetup ADS = new AppDomainSetup();
ADS.ApplicationBase= Path;
AppDomain domain = AppDomain.CreateDomain("Pluging", null, ADS, PS, null);
Assembly asm = Assembly.LoadFile(DLLPath);
domain.Load(asm.FullName);整个过程都运行在一个用VS2012开发的asp.net项目中。
这是我收到的异常:
Could not load file or assembly 'MacroBase, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system
cannot find the file specified.你能帮帮忙吗?
发布于 2015-04-09 19:20:44
问题是,我过去常常在存储dll之前重命名它们。我仍然不知道是怎么回事,但是我改变了我的算法,这样我就可以以与最初编译时相同的名称来存储和调用dll。问题解决了。
更改AppDomainSetup会有什么影响?在第一个备选方案中,asp.net在asp.net项目bin目录中找到了重命名的dll (具有原始名称)的副本。
https://stackoverflow.com/questions/29523800
复制相似问题