4

Web サーバーからインストールされた Outlook アドインがあります。このアドインは、私が Office で作業した他のすべてのアドインと同じように機能します。

  1. setup.exe をダウンロードして実行
  2. すべての前提条件 (.Net フレームワークなど) が検証されている
  3. vsto ファイルがダウンロードされます

これまでのところ、このアドインをインストールしたすべての人に問題はありません (このアドインは約 1 年間使用されています)。Windows 7 にインストールする新しい顧客がいて、最初の問題が発生しています。エラーは次のとおりです。

There was an error during installation:
Downloading http://<path and filename>.vsto did not succeed

***************** Exception Text******************
System.Deployment.Application.DeploymentDownloadException: Downloading http://<path and filename>.vsto did not succeed
System.Net.WebException: The remote server returned an error: (407) Proxy Authentication Required. ---> System.ComponentModel.Win32Exception: The token supplied to the function is invalid
at System.Net.NTAuthentication.GetOutgoingBlob(Byte[] incomingBlob, Boolean throwOnError, SecurityStatus& statusCode)
at System.Net.NTAuthentication.GetOutgoingBlob(String incomingBlob)
at System.Net.NtlmClient.DoAuthenticate(String challenge, WebRequest webRequest, ICredentials credentials, Boolean preAuthenticate)
at System.Net.NtlmClient.Authenticate(String challenge, WebRequest webrequest, ICredentials credentials)
at System.Net.AuthenticationManager.Authenticate(String challenge, WebRequest request, ICredentials credentials)
at System.Net.AuthenticationState.AttemptAuthenticate(HttpWebRequest httpWebRequest, ICredentials authInfo)
at System.Net.HttpWebRequest.CheckResubmitForAuth()
at System.Net.HttpWebRequest.CheckSubmit(Exception& e)
--- End of inner exception stack trace ---
at Microsoft.VisualStudio.Tools.Applications.Deployment.ClickOnceAddInDeploymentManager.InstallAddIn()

明らかに、私の場所から複製することはできません。私の直感では、この顧客のネットワーク セキュリティが問題を引き起こしているとのことですが (私の理解では、彼らは一連のファイアウォールなどを使用しているということです)、彼らの Windows XP マシンは問題なくインストールされています。

私が行方不明になっているものを見た人はいますか?

4

3 に答える 3

6

結局、答えはそれほど難しくありませんでした。起こっていたことは、明らかに、プロキシ資格情報を持っていなかったため、ユーザーが VSTO ファイルのダウンロードをブロックしているプロキシ サーバーの背後にいるということです。

そのため、これらのユーザーには例外を設けて、インストール可能なすべてのファイルを zip で送信する必要がありました。

これに遭遇したユーザーは、続行する前にコマンドを実行して ClickOnce アプリのキャッシュをクリアする必要があることに注意してください。これをインストールしようとしただけで、問題の原因となった残留物が残っていたようです。まだわからない場合は、コマンド プロンプトから次のコマンドを実行する (または次の内容を含む .bat ファイルを作成する) ことで、アプリのキャッシュをクリアできます。

    rundll32 dfshim CleanOnlineAppCache
于 2012-09-05T19:13:32.620 に答える
1

プロキシ認証を使用する場合の ClickOnce 配置の問題を修正するMS KB ( KB917952 )があります。

于 2012-08-31T14:01:11.940 に答える
0

エンド ユーザーまたは IT 部門は、machine.config を変更して、NTLM ログインでのプロキシ認証を有効にすることができます。これにより、認証が必要なプロキシの背後に ClickOnce または VSTO アプリケーションをインストールできます。

方法:デフォルト プロキシを変更して、常にデフォルトの資格情報 (NTLM ログイン) を使用します。

  1. %windir%\Microsoft.NET\Framework\v4.0.30319\config\machine.config を編集します

  2. 以下に示す defaultProxy 要素を追加します。system.net セクションが既に存在する場合は、忘れずに既存のセクションに追加してください。

<configuration>
..

  <system.net>
    <defaultProxy enabled="true" useDefaultCredentials="true"/>
  </system.net>

...
</configuration>

要素(ネットワーク設定)

useDefaultCredentials Web プロキシへのアクセスに、このホストのデフォルトの認証情報を使用するかどうかを指定します。デフォルト値はfalseです。

于 2015-12-08T23:40:27.650 に答える