Qual è il modo più semplice per installare centinaia di file in un progetto di installazione di Visual Studio

StackOverflow https://stackoverflow.com/questions/498932

  •  20-08-2019
  •  | 
  •  

Domanda

Ho un'applicazione c # standard che funge da front-end della GUI per un " R " motore statistico. & Quot; quot R &; è composto da circa 600 file in circa 50 cartelle diverse e può essere " installato " su una macchina tramite distribuzione xcopy.

Vorrei impacchettare sia il motore R sia la mia c # gui in un setup.exe in modo che l'utente non debba andare prima a installare R e poi la mia applicazione c # separatamente.

So che posso produrre un progetto di installazione e quindi aggiungere i file R uno per uno, ma l'aggiunta di tutti i 600 file sarà molto noiosa!

Esiste un modo più semplice di fare ciò che voglio? Posso aggiungere la singola cartella R e aggiungere automaticamente le sottocartelle e i file per salvarmi aggiungendoli uno per uno? O forse eseguire una procedura di decompressione nel mio progetto di installazione che decomprimerà il motore R in una volta sola?

È stato utile?

Soluzione 4

Non sono riuscito a elaborare il file di progetto, quindi quello che ho fatto alla fine è stato comprimere tutti i file che volevo distribuire, aggiungere il file zip all'applicazione e creare una classe di installazione personalizzata per decomprimerli (usando CSharp ziplib)

Altri suggerimenti

Puoi semplicemente trascinare / rilasciare la cartella in Esplora risorse nella vista File System del tuo programma di installazione vdproj. Tutti i file e le cartelle nella gerarchia verranno aggiunti al progetto di installazione.

Suggerimento: se le cartelle si trovano in SVN o un controllo del codice sorgente simile, eliminare tutte le cartelle nascoste prima di farlo! Se hai PowerShell, controlla

get-childitem . -include _svn -force -recurse | foreach ($_) {remove-item -recurse -force $_.fullname}

Oppure puoi sempre utilizzare Ricerca di Windows per trovare tutte le directory nascoste nella gerarchia ed eliminarle dalla finestra dei risultati.

Penso che Badjer sia in gran parte lì.

Se i tuoi 600 file fanno parte di un progetto e il " Crea azione " per ognuno di questi è impostato come contenuto è possibile aggiungere tutti questi semplicemente:

  1. Andare al progetto di installazione
  2. Selezionando Aggiungi > Output del progetto
  3. Selezionando il progetto a cui appartengono i file dal menu a discesa
  4. Selezione dell'opzione &; File di contenuto " opzione dall'elenco seguente
  5. Facendo clic su OK.

Puoi controllare che i file vengano aggiunti nella posizione appropriata andando su Visualizza > File system sul progetto di installazione e verifica che l'output dei file di contenuto venga aggiunto alla cartella corretta.

I file verranno aggiunti alla directory di installazione nella stessa gerarchia specificata nel progetto a cui appartengono.

Dai un'occhiata al file di progetto. Credo che sia basato sul testo. Potresti essere in grado di inserire i percorsi dei file direttamente lì con alcuni copia-incolla-sostituisci.

Una cosa che potresti provare è l'aggiunta dei file R come contenuto nel progetto C # - quindi il progetto di installazione può semplicemente copiarli per te (assicurati di configurare il file di installazione per copiare i file di contenuto dal tuo progetto, non solo il uscita primaria).

Puoi aggiungere manualmente le cartelle R nel progetto o impostare uno script per modificare il file .csproj (è solo un file XML) - gli elementi di contenuto sono rappresentati da questi nodi:

<Content Include="myfile" /> 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top