Also hier ist eine kurze Zusammenfassung des Problems:
Zusammenfassung:
Ich setze fileAssociations für meine ClickOnce-Anwendungen, sie werden jedoch nicht registriert , wenn ich mein Programm ausführe / aktualisiere (wie in den .bvr-Dateien Ich versuche zu assoziieren haben kein Symbol und ich kann nicht doppelt auf sie klicken, um meine Anwendung zu starten) .
Zusatzinfo:
Ich habe zuerst versucht, zu Eigenschaften zu gelangen - & gt; Veröffentlichen - & gt; Optionen - & gt; Dateizuordnungen und Einstellung von dort von dort. Nach diesem fehlgeschlagenen Versuch habe ich versucht, es direkt in app.manifest zu setzen:
%Vor%Ich habe so viele Artikel darüber gelesen, dass ich frustriert werde. Einige Informationen:
Ich handle auch mit den Daten, die über AppDomain übergeben werden, aber ich bezweifle, dass das wirklich etwas ändert.
Ich habe mich gefragt, ob Dateizuordnungen möglicherweise nur bei der Installation festgelegt werden.
Wie auch immer, ich würde wirklich etwas Einsicht in dieses Problem schätzen. Ich würde gerne Dateiverknüpfungen in meinem Projekt machen.
Danke allen im Voraus.
PS: Getestet unter Windows XP und Windows 7.
Bearbeiten: Ich habe dies auch auf Microsoft gepostet, übrigens.
Wenn jemand auch eine Antwort darauf posten möchte. Ich kann das wirklich nicht herausfinden. : D
Wenn der Dateityp, den Sie registrieren möchten, zuvor mit einem anderen Programm (z. B. notepad) registriert oder sogar im Editor geöffnet wurde, wird der Dateityp in 2 nur aus der Registrierung gelöscht Standorte und dann neu starten. Danach veröffentlichen Sie ein Update für Ihre App, und wenn diese Art von Problem in Ihrem guten Zustand ist.
HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ AktuelleVersion \ Explorer \ FileExts \ .bvr
HKEY_CLASSES_ROOT \ .bvr
Neustart
Veröffentlichen Sie ein Update für Ihre App.
Sind Sie sicher, dass das folgende Element nicht in Öffnen mit ... Dateioptionen angezeigt wurde - Clickonce Application Deployment Support Library mit Fragezeichen? Versuchen Sie es als Standard festzulegen.
Ich hatte das gleiche Problem wie Ihres, aber ich habe bemerkt, dass diese seltsame Option nach der Installation meiner Anwendung erscheint. Nach so viel versuchen und googeln versuchte ich eine einfache Sache - einverstanden, diese Clickonce Application Deployment Support Library eine Standardeinstellung für den gewünschten Dateityp zu machen. Und ta da! Das Symbol der Datei wurde zu meinem App-Symbol und es startete meine App. Ich denke, die Sache war, dass mein gewünschter Dateityp bereits mit Editor verknüpft war, also lehnte ClickOnce diese Einstellung ab.
ClickOnce übergibt Befehlszeilenargumente nicht wie üblich, sondern über
Also müssen Sie beim Start Ihrer Anwendung überprüfen, ob das Programm keine Zeichenfolgen enthält, und Ihr Startverhalten entsprechend ändern.
Dies liegt daran, dass ClickOnce-Anwendungen über das Bereitstellungsmanifest auf dem Server und nicht über eine EXE gestartet werden. Btw: Einstellung Ihrer Dateizuordnungen über Eigenschaften - & gt; Veröffentlichen - & gt; Optionen - & gt; Dateizuordnungen sollten funktionieren.
Bearbeiten: (wie ich meine Beispiel-App erstellt habe)
Alle nicht erwähnten Einstellungen wurden nicht berührt ... das ist alles, was ich getan habe!
Scheint so, als hätten Sie genau das getan - versuchen Sie vielleicht, eine einfache Testanwendung zu erstellen, und prüfen Sie, ob das für Sie funktioniert. Da diese Antwort Ihre Frage nicht wirklich beantwortet, lassen Sie mich bitte wissen, wenn Sie fertig sind, damit ich sie löschen kann.
Dies passierte, als wir die Versionsnummer erhöhten und die App in einem anderen Unterordner veröffentlichten. Zum Beispiel
\server\product\version 1.0\
veröffentlicht
\server\product\version 2.0\
veröffentlicht
Ich folgte der Antwort von @EvAlex, und ein Dialog wurde aufgefordert, und ich klickte auf die Schaltfläche "Details", die eine Protokolldatei öffnete. In der Protokolldatei habe ich festgestellt, dass das Programm versucht hat, von einem Pfad einer alten Version herunterzuladen, der Pfad, nach dem es gesucht hat, ist immer \server\product\version 1.0\
.
Dann erkannte ich, dass es etwas in der Registry sein sollte.
Ich habe regedit
geöffnet und nach product
gesucht (was mein Produktname ist) und den Pfad gefunden, den der Protokollfehler unter einigen Schlüsseln wie folgt beschwert hat:
Ich habe diese Schlüssel gelöscht und die Open With
-Aktion wiederholt, das Symbol ist zurück und es hat dann wie ein Zauber funktioniert.
Es sieht so aus, als wäre die App nicht sauber deinstalliert worden oder es gibt einen Bug von ClickOnce, der diese Schlüssel aus unbekannten Gründen aktualisiert.
Ich fand Alans Beitrag oben am hilfreichsten. Es funktionierte so, wie es für mich auf einem meiner Computer geschrieben wurde, aber auf einem anderen brachte es mich nicht ganz dahin. Ich hatte gehofft, nur einen Kommentar zu seinem Beitrag hinzuzufügen, aber Stack Overflow sagt, dass ich dafür keine Reputationspunkte habe.
Wenn Sie es brauchen, hoffe, Sie können es immer noch hier finden.
Ich musste auch einen Schlüssel wie den folgenden für jedes Erweiterungsmapping entfernen:
%Vor% Das Hinzufügen von Adams Entfernung der anderen .ext
Schlüssel hat das Problem auf meiner anderen Maschine behoben.
Tags und Links c# file deployment clickonce associations