7

ワークアイテムを開き、[添付ファイル] タブに移動します。.doc 添付ファイルをダブルクリックします。ファイルを Word で開く代わりに、ブラウザを起動して、ファイルをダウンさせます。

TFS で添付ファイルを Word で直接実行する方法はありますか?

4

2 に答える 2

4

添付ファイルは、特定の URL を介してサーバーからアクセスされます。

http://mytfs/tfs/default/WorkItemTracking/v1.0/AttachFileHandler.ashx?FileID=115&FileName=mydoc.doc

Visual Studio は基本的に、この URL の Shell Exec を実行します。これにより、既定の Web ブラウザーが起動します。

作業項目フォームの 2 つの実装があります。

  • デスクトップ 1: シェル exec を実行します
  • web one: 既に Web ブラウザーを使用しています

したがって、他に方法はなく、そのプロセスを短縮するためのカスタムツールがネット上にあるとは思えません...

于 2012-05-24T23:02:27.733 に答える
3

AttachFileHandler.ashx の HTTP 応答ヘッダーを見ると、「問題」はコンテンツがファイルとして返されているためです。

HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 11688
Content-Type: application/octet-stream
Server: Microsoft-IIS/7.0
X-AspNet-Version: 4.0.30319
content-disposition: filename=Screenshot.png
X-Powered-By: ASP.NET
Date: Fri, 17 Aug 2012 08:51:44 GMT

ブラウザが画像を直接表示できたとしても、名前を付けて保存ダイアログを強制しているのはcontent-dispositionヘッダーです。w3.orgの 19.5.1 Content-Dispositionに関するメモを参照してください。

このヘッダーが application/octet-stream コンテンツ タイプの応答で使用される場合、ユーザー エージェントは応答を表示せず、「応答を保存...」ダイアログに直接入る必要があることを暗黙的に示唆します。

TFS はこのようにして、受信ブラウザがコンテンツをネイティブに処理できるかどうか (たとえば、PDF 用のプラグインを使用するかどうか) に関係なく、任意のファイルを返すことができるようにしているのではないかと思います。コンテンツを返す方法を変更するために、AttachFileHandler.ashx を変更することは可能でしょうか?

于 2012-08-17T10:25:15.930 に答える