.NET 4.0 C# コンソール アプリケーションがあります。アプリケーションは、次のようにネットワーク ファイル共有 (Windows 2000 Server ファイル サーバーだと思います) に展開されます。
\\server\share\Apps\Beta\Group\JobName\JobName.exe
アプリケーションを実行するエージェント マシンは、Windows 2008 R2 サーバー、x64 です。ドメイン ユーザー アカウントを使用して、コマンド ラインからアプリケーションを実行しています。UserBetaを呼び出す特定のアカウントで実行すると、WCF サービスに接続しようとすると、アプリケーションは次の例外をスローします。
System.Configuration.ConfigurationErrorsException: Error creating the Web Proxy specified in the 'system.net/defaultProxy' configuration section. ---> System.Net.Sockets.SocketException: An invalid argument was supplied
ユーザー アカウントUserBetaには、フォルダーベータで導入され、上記のパスの子フォルダーによって継承される、変更、読み取りと実行、フォルダーの内容の一覧表示、読み取りと書き込みのアクセス許可があります。2 番目のユーザー アカウントUserStageを使用すると、 Appsフォルダーで 1 つ上のフォルダーに導入されることを除いて同じアクセス許可を持つUserStage で、アプリケーションは例外なく実行されます。どちらのアカウントも、エージェント サーバーのローカルの Administrators グループに属しています。
興味深いことに、アプリケーションが UserStage として実行されてから 15 秒以内に UserBeta として実行された場合、アプリケーションも正常に実行されます。
また、 GroupBetaアカウントとしてローカル ドライブからアプリケーションを実行すると、アプリケーションが正常に動作することにも注意してください。そのため、ネットワーク共有から実行されている特定のアカウントには、ある種の信頼の問題があるようです。
ネットワーク共有からUserBetaアカウントとしてアプリケーションを実行する必要があります。ClickOnce は現在、オプションではありません。AppsフォルダーにUserBetaのアクセス許可を追加することで問題を解決できると思いますが、それが本当に問題でない限り、何かにもっとアクセスするのは好きではありません. 誰かが他のアイデアを持っている場合、またはアクセス許可を調整することが正しい行動方針である理由を教えてくれる場合は、非常に感謝しています.