5

Windows 7 OS で Team City Build エージェントを実行する Windows サービスがあります。

このエージェントは、Selenium IE Web ドライバーを使用して一連のテストを実行する NUnit テストをトリガーします。

Selenium IE Web ドライバーが機能するには、すべてのゾーンの保護モードを同じ値 (保護モードのオンまたはオフ) に設定する必要があります。

問題は、ローカル システム アカウントの既定の設定が無効であることです (一部のゾーンは保護モードで実行され、他は保護モードで実行されていません)。

すべてのユーザーまたはローカル システム アカウント ユーザーの保護モード設定を変更する方法を誰か教えてもらえますか?

4

4 に答える 4

11

これが解決策です(そして、私はこれを得るためにインターネットの隅々まで行きました):

起動RegEditして、このキーに移動します。

HKEY_USERS\S-1-5-18\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones

私のマシン (Windows 7) では、ローカル システム アカウントはS-1-5-18. これは Windows のすべてのバージョンで同じかもしれませんが、私はそれについて知りません。

そのレジストリ キーには、さらに 5 つのキー 1、2、3、4、および 5 があり、それぞれがゾーンを表しています。

すべてのゾーンで、「2500」という名前の DWORD 値がある場合は、その値を 0 に設定して保護モードをオフにします。存在しない場合は追加する必要はありません。

値「2500」は、「保護モードを有効にする」チェックボックスを制御することになっています。

更新 (anon ユーザーから):

同じことをグラフィカルに行う方法は、「Interactive Services Detection」サービス (UI0Detect) が実行されていることを確認することです (Windows 8/2012 以降HKLM\SYSTEM\CurrentControlSet\Control\Windows\NoInteractiveServicesでポップアップを表示するには、レジストリ キーを正しく設定する必要があることに注意してください)。psexecそして走る

psexec -si 0 "C:\Program Files\Internet Explorer\iexplore.exe"

ポップアップで [メッセージを表示] をクリックし、画面が Internet Explorer に切り替わった後、[ツール] -> [インターネット オプション] | [インターネット オプション] に移動します。各ゾーンのセキュリティ レベルを確認します。

ハッピーUIテスト!

于 2011-10-22T13:40:43.183 に答える
0

UAC を無効にすることもできます。これにより、システム内のすべてのユーザーの保護モードも無効になります。

于 2011-08-30T02:13:26.690 に答える
0

ソリューションの最良の説明はこれです https://stackoverflow.com/a/30242504/1371989

于 2015-04-28T15:23:11.257 に答える
-1

IE WebDriver には、保護モード設定を無視するように指示する設定があります。設定の名前から判断すると、「不安定」になる可能性がありますが、このアプローチで問題はありませんでした。

var options = new InternetExplorerOptions();
// avoid the "Protected Mode must be set to the same value (enabled or disabled) for all zones" error
options.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
return new InternetExplorerDriver(options);
于 2012-08-23T03:56:19.863 に答える