2009-06-02 3 views
25

Ich habe eine Anwendung, die ich auf ClickOnce umstelle und die App hat einen mittelgroßen Datenordner mit Hunderten von Dateien, die ich in der Bereitstellung angeben muss. Der Ordner muss sich nach der Bereitstellung an der gleichen Position wie die EXE befinden. Ich habe mehrere Vorschläge dazu gesehen, aber es scheint keine vereinbarte Methode dafür zu geben.Hinzufügen von Dateien zu einem Klick nach der Bereitstellung

Alle Vorschläge wären toll -

Vielen Dank!

Antwort

0

Nach der Bereitstellung werden alle als Daten markierten Dateien in den Ordner ApplicationDeployment.DataDirectory gestellt. Ich weiß nicht, wie ich das ändern könnte. Sie können die Datendateien während des ersten Laufs Ihrer App kopieren, diese Vorgehensweise wird jedoch keine Upgrades mit Datendateiänderungen überstehen.

Alternativ können Sie, wenn Sie während der Entwicklung den Speicherort des Datenordners steuern, denselben relativen (zum App-Ordner) Speicherort angeben, der nach der Bereitstellung angegeben wird.

45

Eine gute Möglichkeit, dies zu tun ist:

  • einen Ordner in VS-Namen unter dem App erstellen z.B. „Datendateien“
  • alle Dateien in diesem Ordner hinzufügen hinzufügen als Link im Dialogfeld nach Auswahl mit Add bestehenden auf den Ordner
  • Markieren Sie alle Dateien, die als Kopieren, falls neuere (kopieren Ausgabeverzeichnis Eigenschaft)
  • sicherstellen, dass die Build Aktion ist Inhalt

-> Wenn Sie die Dateien veröffentlichen, werden in diesen Ordner gelegt und ein Teil der Installation der Anwendung sein

Viel Glück!

+1

Wenn Sie die Dateiverknüpfungen bei der Veröffentlichung in die Anwendungsdateien einbeziehen möchten, müssen Sie die Build-Aktion in den verknüpften Dateien auf "Inhalt" setzen. – Zebaz

+0

Ich habe die Option "Als Link hinzufügen" nicht gesehen, also habe ich die Dateien einfach zum Ordner hinzugefügt, danach alle ausgewählt, mit der rechten Maustaste geklickt und das Eigenschaftsfenster geöffnet und die folgenden Optionen ausgewählt: "In Ausgabeverzeichnis kopieren: Kopieren wenn neuere "und" Build Action: Content ", und es hat gut funktioniert. Vielen Dank! –

+1

Ich versuche, eine XML-Datei mit meiner Anwendung zu integrieren. Ich habe die Anweisungen hier gelesen, aber wenn ich auf die Datei im Code verweisen muss, was ist der Dateipfad? – marky

0

https://msdn.microsoft.com/en-us/library/kzy0fky2.aspx

https://msdn.microsoft.com/en-us/library/6fehc36e.aspx

Diese beiden Artikel bieten Methoden, dies zu tun. Zwischen den beiden Dingen können Sie eine finden, die für Sie arbeitet. Der eine, der für mich funktionierte, war:

Mit einem Projekt im Projektmappen-Explorer, im Projekt-Menü, klicken Sie auf Eigenschaften. Klicken Sie auf die Registerkarte Veröffentlichen. Klicken Sie auf die Schaltfläche Anwendungsdateien , um das Dialogfeld Anwendungsdateien zu öffnen. Wählen Sie im Dialogfeld "Dateien" der Anwendung die Datei aus, die Sie als Daten markieren möchten. Wählen Sie unter das Feld Veröffentlichungsstatus aus der Dropdownliste Datendatei aus.

Verwandte Themen