asp.netで記述されたイントラネットWebアプリケーションからローカルマシンのスキャナーにアクセスするdllがあります。dllは、caspolを使用してローカルマシンで完全な信頼を与えられます。Win XPではすべてが正常に機能しましたが、Win7では機能しませんでした。
コードは次のとおりです。
PermissionSet ps = new PermissionSet(PermissionState.Unrestricted);
ps.AddPermission(new SecurityPermission(SecurityPermissionFlag.AllFlags));
ps.Assert();
wiaDevMgr = new DeviceManager();
foreach (DeviceInfo di in wiaDevMgr.DeviceInfos) {
DeviceInfosのリクエストは、次のエラーをスローします。
Exception: Acquire from WIA failed Request for the permission of type 'System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
caspolを使用して実際の権限を確認しました-関連するゾーンのエントリは次のとおりです。
1.2. Zone - Intranet: FullTrust
1.2.1. All code: Same site Web
1.2.2. All code: Same directory FileIO - 'Read, PathDiscovery'
1.2.3. Url - http://srvr/tpc/pictureConverter.dll: FullTrust
1.2.4. Url - http://srvr/tpc/printUniformities.dll: FullTrust
1.2.5. Url - http://srvr/tpc/WiaOneScan.dll: FullTrust
1.2.6. Url - http://srvr/tpc/DocPrint.dll: FullTrust
1.2.7. Url - http://srvr/tpc/FileAdmin.dll: FullTrust
1.2.8. Url - http://srvr/tpc/Interop.ImageMagickObject.dll: FullTrust
1.2.9. Url - http://srvr/tpc/Interop.WIALib.dll: FullTrust
関連するdllがWiaOneScan.dllの場合
アイデアをありがとう。