Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1

    [C#] Includere un programma (binario) all'interno di un altro

    In pratica la situazione è questa, ho un file eseguibile (un programma fatto da me) e vorrei fare in modo di installarlo in una cartella sulla macchina, il tutto tramite un altro programma eseguibile (sempre fatto da me) che si occupi di copiare il programma principale dove voglio.

    Ora, il programma principale deve essere contenuto nel programma di installazione e una volta lanciato quest'ultimo, dovrà essere lui a pensare all'installazione del programma allegato.

    Come posso associare al mio programma di installazione il programma da installare (già binario) in un unico pacchetto?

    Grazie.

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Ma perché non creare un comune e banale programma di installazione?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Originariamente inviato da alka
    Ma perché non creare un comune e banale programma di installazione?
    In sostanza è quello che stavo chiedendo.

    Ma dato che non lo ho mai fatto chiedo in questa sede come potrei farlo.

    Che classi/metodi potrei utilizzare?

    Grazie.

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Originariamente inviato da SkyNET290897
    Ma dato che non lo ho mai fatto chiedo in questa sede come potrei farlo.
    Che classi/metodi potrei utilizzare?
    Non ci sono classi o metodi... ci sono tool appositi per la creazione di pacchetti di installazione.
    Cerca nel forum, ne abbiamo parlato più che spesso.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    Ok capito, per pura curiosità, come potrei "allegare" un file ad una applicazione scritta in C#?

  6. #6
    Allegare?Mi spieghi che intendi?
    Cmq non andare troppo sul generico vai dritto al problema e soprattutto spiegaci il project che vuoi realizzare.

  7. #7
    In sostanza vorrei che il mio progetto facesse riferimento ad un eseguibile (sempre di un mio progetto), tipo programma di installazione.

    Quindi quando compilo il progetto principale, vorrei se possibile, che nell'eseguibile sia compreso anche quello del secondo progetto.

    Spero di non essere stato troppo contorto.

  8. #8

  9. #9
    Mooolto interessante!

    Una cosa non mi è chiara però:

    impostare tra le proprietà la Build Action come Embedded Resource;
    Non ho chiaro come eseguire l'operazione.



    EDIT:

    Chiarita la questione di sopra, però non mi è chiaro come sfruttare poi all'interno del codice il file incluso.

    Per esempio, includo un file JPG e voglio aprirlo premendo su un tasto creato da me.

    Nell'esempio del link (in VB) è riportato il seguente codice:

    codice:
    Private bmStop As Bitmap
    
    Dim a As Reflection.Assembly = System.Reflection.Assembly.GetExecutingAssembly()
    bmStop = New Bitmap(a.GetManifestResourceStream( "NamSpaceRadice.NomeFile.Est"))
    Ecco, a parte il linguaggio, non mi è charo ciò che devo fare per utilizzarlo.

    Ora, per lanciare il file incluso, ho provato a implementare il codice seguente:

    codice:
    Process processo = new Process();
    processo.StartInfo.FileName = "immagine.jpg";
    processo.Start();
    Quando cerco di lanciare il file da programma, esso mi risponde che non riesce a trovare il file, ok, vorrà tutto il persorso, penso.
    Però, domanda, se io metto tutto il percorso, il programma andrà a pescare il file da lanciare come separato e quindi in caso io sposti l'eseguibile del programma su un'altra macchina dove NON C'E' il file suddetto, il file non verrà trovato. Invece mi occorre che il file da lanciare faccia effettivamente parte del file eseguibile del programma.


  10. #10
    Allora, dopo avere aggiunto una immagine bitmap come risorsa incorporata ho implementato il seguente codice:

    codice:
    Assembly asm = Assembly.GetExecutingAssembly();
    Bitmap img = new Bitmap(asm.GetManifestResourceStream("Inclusione_di_un_oggetto.immagine.bmp"));
    Ora, come posso utilizzare il file?

    Ho provato il seguente frammento di codice:

    codice:
    Process processo = new Process();
    processo.StartInfo.FileName = ???
    processo.Start();
    Come si può notare dai "???" non so cosa mettere per identificare il nome del file da lanciare (quello aggiunto al progetto).


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.