3

Windows Azure ストレージのパブリック コンテナーにデプロイしたい WPF アプリケーションがあります。

私が試したこと:

1. VISUAL STUDIO 2012 の発行ウィザード

Visual Studio 2012 の ClickOnce Publish ウィザードからコンテナー URL を直接使用しようとしました。次のエラーが発生しました。

次のエラーで に接続できませんでした: Web サイトを作成できません Web サーバーに FrontPage Server Extensions がインストールされていないようです。FrontPage Server Extensions がインストールされている場合、_vti_bin 仮想ディレクトリが実行可能としてマークされていないために、このエラーが発生する可能性があります。この問題を解決するには、インターネット インフォメーション サービス マネージャーを実行し、問題のある Web サーバーを選択してから、[サーバー拡張機能の確認] コマンドを使用します。

2. ツールの追加

いくつかの調査の後、2012 Visual Studio Authoring Extensionsをインストールする必要があると考えました。それは問題を解決しませんでした。

さらに調査したところ、公開ウィザードをブログ ストレージ URL で直接使用しても機能しないことが示されました。

3. サードパーティのアップロード ツール

だから私がしたことは、自分のコンピューターのローカル ファイルに公開し、ツールを使用してそれらのファイルを BLOB ストレージにアップロードすることでした。(私はAZURE EXPLORERを使用しました)

ローカルの発行フォルダーのコンテンツ全体を Azure BLOB ストレージにアップロードした後、ブラウザーで BLOB ストレージの URL を要求しましたが、何も行われなかったため、URL を使用して setup.exe で終了しました。このファイルはローカルにダウンロードされ、実行されました。これによりエラーが発生しました。.Application ファイルも使用しようとしましたが、同じエラーが発生しました。

4.再アップロード

初めてファイルが破損する可能性があると考えて、現在のファイルを上書きしてファイルを再度アップロードしました。これは修正されませんでした。

5. SETUP.EXE、PUBLISH.HTM、APPNAME.APPLICATION を試してみた

setup.exe、publish.htm、または appname.application ファイルを使用すると、同じエラーが生成されます。


編集開始 #2

6. MIME タイプの確認と拡張子の展開

コメントで @Gaurav Mantri によって提案された記事を読んだ後、公開オプションで .deploy を dll に追加するオプションがチェックされていることを確認し、ClickOnce MIME タイプに関するこの記事に従って正しい MIME タイプが使用されていることも確認しました. これらの設定はすでに正しく行われているため、問題の解決策ではありません。

編集の終了 #2


エラー:

Azure BLOB ストレージから setup.exe ファイルを実行しようとしたときに発生したエラーは次のとおりです。

エラーの概要 以下にエラーの概要を示します。これらのエラーの詳細は、ログの後半に記載されています。* C:\Users\Jordan\Downloads\FTC_Application (1).application のアクティベーションで例外が発生しました。次の失敗メッセージが検出されました: + http://*******/FTC_Application/FTC_Application.application のダウンロードに失敗しました。+ リモート サーバーがエラーを返しました: (500) 内部サーバー エラー。

コンポーネント ストア トランザクション エラーの概要 トランザクション エラーは検出されませんでした。

警告 この操作中に警告はありませんでした。

運用進捗状況 * [2013/10/5 9:39:52 AM] : C:************\Downloads\FTC_Application (1).アプリケーションのアクティベーションが開始されました。

エラーの詳細 この操作中に次のエラーが検出されました。* [2013 年 10 月 5 日 9:39:52 AM] System.Deployment.Application.DeploymentDownloadException (不明なサブタイプ) - http://************/FTC_Application/FTC_Application.application のダウンロードに失敗しました。- ソース: System.Deployment - スタック トレース: System.Deployment.Application.SystemNetDownloader.DownloadSingleFile (DownloadQueueItem next) で
....読みやすくするために削除されたスタック トレースの詳細.................... System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state) --- 内部例外 --- System.Net.WebException - リモート サーバーがエラーを返しました: (500) 内部サーバー エラー。- ソース: システム - スタック トレース: System.Net.HttpWebRequest.GetResponse() で System.Deployment.Application.SystemNetDownloader.DownloadSingleFile(DownloadQueueItem next) で

COMPONENT STORE TRANSACTION DETAILS 取引情報はありません。

質問:

ClickOnce 配置ファイル (setup.exe または appname.application または publish.htm) を実行しているときに、Azure Blob Storage から(500) Internal Server Error エラーが発生する理由を特定するのに誰か助けてもらえますか?

2 回目の編集後のフォローアップ: 質問: これは、プロジェクトのテストサインのみを使用したことが原因である可能性がありますか?

アップデート:

Azure BLOB ストレージでは組み込みの発行ウィザードを使用できないことを確認しました。SO サードパーティのアップロード ツールが必要です。すべてのファイルは、Azure BLOB コンテナーからパブリックにダウンロードできます。しかし、提案された URL を使用すると、次のようになります。

http://{AzureAccountName}.blob.core.windows.net/{BlobContainerName}/{ApplicationName}.application

ApplicationName.application ファイルがダウンロードされますが、それをクリックすると上記のエラーが生成されます。

4

1 に答える 1

3

そうです、Visual Studio から BLOB ストレージに直接発行することはできません。Gaurav のコメントで参照されている記事に記載されているように、ファイルをローカルで公開してアップロードできるはずです。

そうは言っても、BLOB ストレージ内のコンテナーに対する特権を確認し、BLOB へのパブリック読み取りアクセスがあることを確認してください。コンテナーはプライベートにすることができますが、BLOB はできません。少なくとも、publish.htm ファイルを開くことができるはずです (コンテナー内のフォルダーではなく、コンテナー内にあると仮定します)。

また、インストール URL が BLOB ストレージ コンテナーの最上位フォルダーを指していることを確認してください。これにより、ファイルにアクセスできる場合に、ファイルが正しく検出されます。

お使いのコンピューターに問題がないことを確認するには、BLOB ストレージに発行したテスト用の clickonce アプリの発行ページへのこのリンクを試してください。

于 2013-10-18T18:11:47.307 に答える