0

プライベートギャラリーでホストするVisual Studioエクステンションがあります。初期バージョンがインストールされている場合、ページのページに戻ると、インストールされた拡張機能の一覧に表示されます。それを強調表示すると、[無効]と[アンインストール]リンクが表示され、右側のウィンドウで正しい「作成者」、「インストール日」、「バージョン」、および「この拡張子を自動的に更新する」がチェックされます。我々はアップデートを準備するときプライベートギャラリーの更新Visual Studioエクステンション

、我々は以下の解放処理を行う。AssemblyInfo.csで

  1. を、我々は次のバージョンに、例えば「のAssemblyVersion」と「AssemblyFileVersion」を更新しますsource.extension.vsixmanifestで「1.12.1.0」
  2. 、我々は(我々は同じ値を使用しているため、すなわち「1.12.1.0」)次のバージョンに「バージョン」の更新
  3. 私たちは、その後、VSIXに署名パッケージ
  4. 私たちのプライベートギャラリーにVSIXファイルを入れます
  5. 次に、atom.xmlファイルを更新します。 atom.xmlファイルはVSIXと同じフォルダに存在しますが、これらの拡張は限られているためです。

ただし、Visual Studioを起動すると自動的に更新されず、[拡張機能と更新]にアクセスしても更新プログラムとして表示されません。したがって、ユーザーは新しいバージョンの通知を受けて、既存のものを手動でアンインストールして、アップデートをインストールする必要があります。

さて、VSIXファイル自体に迷惑なことはありません。私は、atom.xmlに誤りがあると思われます。 atom.xmlファイルを作成する方法についてはいくつかの記事がありますが、これらの間には少しの矛盾があります。 MSDN,justinmchase,Kornfeld Eliyahu Peter,stackoverflowなど

大丈夫です。ここに私のatom.xmlがあります(少し編集しました)

<?xml version="1.0" encoding="utf-8"?> 
<feed xmlns="http://www.w3.org/2005/Atom"> 
    <title type="text">Our Extension Gallery</title> 
    <id>uuid:b62cf56a-8a60-4eb6-b217-5e2972e01b39;id=1</id> 
    <updated>2017-02-28T11:57:22Z</updated> 
    <entry> 
    <id>MyAssemblyName.Microsoft.0681eb6c-4275-4d64-9333-dfdabe14f286</id> 
    <title type="text">Description One</title> 
    <summary type="text">Description Two</summary> 
    <published>2017-01-31T11:57:22Z</published> 
    <updated>2017-02-28T11:57:22Z</updated> 
    <author> 
     <name>Me!</name> 
    </author> 
    <content type="octet/stream" src="http://server/VisualStudioGallery/MyAssemblyName.vsix" /> 
    <Vsix 
     xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns="http://schemas.microsoft.com/developer/vsx-syndication-schema/2010"> 
     <Id>0681eb6c-4275-4d64-9333-dfdabe14f286</Id> 
     <Version>1.12.1.0</Version> 
    </Vsix> 
    </entry> 
</feed> 

このように、私たちはatom.xmlで何を更新しますか?いくつかの例では、更新

  • フィード/
  • フィード/エントリ/更新
  • フィード/エントリ/ VSIX /バージョン

日付のフォーマット

  • I '見た' 2011-04-14T14:24:22-07:00 '、 他にも私は' 2012-11 -06T22:19:45Z '。それは問題ですか?

  • UTC、サーバーとクライアントの間に混乱があった場合に備えて、「時間」部分を「T00:00:01Z」として試してみました。失敗。

対 'フィード/エントリ/ ID' 'フィード/エントリ/ VSIX/ID'

  • 私はこれらのXML要素の正しいケースを持っていますか?

  • 'feed/entry/id'の場合、ダウンロードするには「MyAssemblyName.Microsoft.0681eb6c-4275-4d64-9333-dfdabe14f286」が必要でしたが、フィード/エントリ/ Vsix/Idではただ '0681eb6c-4275-4d64-9333-dfdabe14f286'です。

私はXMLのあらゆる部分をちょっと試してみましたが、役に立たないと思います。私はそれが簡単だと確信しています....しかし、それは私を逃すものです。エントリの一意のIDである 'フィード/エントリ/ ID' の

おかげ

グリフ

答えて

1
  1. 、。 VSIXパッケージのIDとまったく同じでなければなりません!

  2. VSIXパッケージのIDであるフィード/エントリ/ Vsix/Idの場合。

vsixパッケージの製品IDと同じに変更してください。

enter image description here

+0

こんにちはコール - はい、これは本当に一致します。 – DrGriff

+0

My AssemblyVersion(およびAssemblyVersion)は「1.12.1.0」です。このバージョンはマニフェストバージョンにも入っていますか?そうでない場合、マニフェスト・バージョン(「n.n」または「n.n.n.n」)の形式は何ですか?これらが異なる場合は、どのバージョンをatom.xmlに入れる必要がありますか? – DrGriff

+0

xmlファイルに基づいて、 'feed/entry/id'と 'feed/entry/Vsix/Id'の値はdiffenertです。 –

0

コール呉の有益なコメントのおかげで、私は最終的に仕事にこれを得ました。

更新プログラムを動作させるために必要な2つのID。

だから、私は以下の持って明確にする:

AssemblyInfo.cs

[assembly: AssemblyVersion("1.15.0.0")] 
[assembly: AssemblyFileVersion("1.15.0.0")] 

source.extension.manifest

ProductID: MyApplication.Microsoft.0681eb6c-4275-4d64-9333-dfdabe14f286 
Version: 1.15 

atom.xml

<?xml version="1.0" encoding="utf-8"?> 
<feed xmlns="http://www.w3.org/2005/Atom"> 
    <title type="text">Our Extension Gallery</title> 
    <id>uuid:b62cf56a-8a60-4eb6-b217-5e2972e01b39;id=1</id> 
    <updated>2017-02-28T00:00:01Z</updated> 
    <entry> 
    <id>MyApplication.Microsoft.0681eb6c-4275-4d64-9333-dfdabe14f286</id> 
    <title type="text">Description 1</title> 
    <summary type="text">Description 2</summary> 
    <published>2017-01-31T00:00:01Z</published> 
    <updated>2017-03-01T00:00:01Z</updated> 
    <author> 
     <name>Me</name> 
    </author> 
    <content type="octet/stream" src="http://server/VisualStudioGallery/application.vsix" /> 
    <Vsix 
     xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xmlns="http://schemas.microsoft.com/developer/vsx-syndication-schema/2010"> 
     <Id>MyApplication.Microsoft.0681eb6c-4275-4d64-9333-dfdabe14f286</Id> 
     <Version>1.15</Version> 
    </Vsix> 
    </entry> 
</feed> 
  • フィード/エントリ/ ID =フィード/エントリ/ VSIX/ID = source.extension.manifest.ProductID
  • フィード/エントリ/ VSIX /版= source.extension.manifest.Version
関連する問題