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

    [C#] Esportazione programmi

    Ciao! Ieri non riuscivo a prendere sonno così mi è sorta una piccola curiosità, quando realizzo un programma in Visual C#, come faccio ad esportarlo su un'altra macchina?

    Mi spiego, è sufficiente copiare l'eseguibile sull'altra macchina (non penso proprio) od occorre che sull'altra macchina sia installato il Framework 2.0 (e tutti i componenti necessari)?

    Nello specifico, cosa devo aggiungere al mio programma per poterlo usare su una macchina diversa dalla mia (dove sono installati tutti i componenti)?

    Grazie.

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,477
    Meglio fare sempre una ricerca prima di postare: molto spesso si è parlato della dipendenza delle applicazioni basate sul .NET Framework.

    Il Framework è senz'altro indispensabile.

    Oltre al file eseguibile, devi installare qualsiasi DLL a cui fai riferimento, a meno che questa non sia inclusa nel suddetto framework, oltre ad eventuali file esterni di cui la tua applicazione fa uso e si aspetta di trovare, come ad esempio un file di database.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  3. #3
    Capisco, quindi in sostanza devo controllare tutti i NameSpace utilizzati e le relative DLL e poi copiarle sulla macchina dove voglio che giri il programma . . .

    Non c'è un modo per far si che in automatico, al momento del salvataggio dell'intero progetto nella sua cartella, vengano salvati anche tutti i componenti di cui ha bisogno?

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,477
    Originariamente inviato da SkyNET290897
    Non c'è un modo per far si che in automatico, al momento del salvataggio dell'intero progetto nella sua cartella, vengano salvati anche tutti i componenti di cui ha bisogno?
    Generalmente, quando compili in Debug o in Release, le DLL vengono copiate nella directory di output dell'eseguibile.

    I namespace non c'entrano nulla: è sufficiente che guardi i riferimenti del progetto.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  5. #5
    Scusa ma non mi è del tutto chiaro, sulla macchina in cui voglio far girare la mia applicazione, occorre per forza installare il Framework 2.0? O nella cartella del progetto dovrebbero essere salvate le DLL necessarie a far girare il programma anche sull'altra macchina senza dover necessariamente installare il Framework?

    EDIT:

    Allora, la mia situazione è la seguente: ho due PC collegati in rete LAN e sul primo ho installato il Framework 2.0 con Visual C# ecc... sul secondo non c'è installato nulla di tutto ciò.

    Ora, ho controllato il mio programma per capire quali DLL vengono utilizzate, poi ho creati una cartella chiamata "DLL" nella cartella del progetto e ci ho copiato dentro le DLL in questione.
    Sono andato nel codice del programma ed ho modificato i riferimenti facendo puntare alle DLL nella nuova cartella "DLL".

    Ho provato a vedere se funzionava sulla mia macchina con i riferimenti "nuovi" e funziona.

    A questo punto ho copiato la cartella con il progetto sulla seconda macchina (quella senza Framework 2.0), facendo attenzione a copiare il progetto nella stessa cartella di riferimento, con la stessa path (in pratica "C:\Progetto" sulla prima macchina e "C:\Progetto" sulla seconda macchina) in modo che anche sulla seconda macchina il programma punti alle giuste DLL.

    Quando ho lanciato l'eseguibile sulla seconda macchina compare il seguente messaggio:

    Applicazione non correttamente inizializzata (0x000135). Fare clic su OK per chiudere l'applicazione.
    Adesso, il problema quale è? L'assenza del Framework 2.0 che anche con la presenza delle DLL causa comunque l'errore o altro?

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,477
    Il .NET Framework deve essere ovviamente presente, come ti ho scritto peraltro nella prima risposta che ti ho fornito.

    Senza il framework installato, non hai alcuna possibilità di eseguire le tue applicazioni, che non sono native.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  7. #7
    Ok, niente da fare, in ogni modo mi sembra assurdo dover per forza installare il Framework su una macchina per utilizzare le applicazione scritte in C# ecc...

    Certi componenti dovrebbero essere forniti di serie con i sistemi Windows, probabilmente con Windows Vista saranno compresi nel SO.

  8. #8
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,477
    Originariamente inviato da SkyNET290897
    Ok, niente da fare, in ogni modo mi sembra assurdo dover per forza installare il Framework su una macchina per utilizzare le applicazione scritte in C# ecc...
    Perché mai dovrebbe essere assurdo dover installare il framework visto che le tue applicazioni possono essere eseguite solamente dal runtime incluso?

    Non c'è nulla di assurdo. Hai un'applicazione costituita da linguaggio intermedio che accede a classi della libreria base, pertanto il CLR per compilare il codice intermedio e le classi devono essere presenti.

    Originariamente inviato da SkyNET290897
    Certi componenti dovrebbero essere forniti di serie con i sistemi Windows, probabilmente con Windows Vista saranno compresi nel SO.
    Con Windows XP SP2 è incluso .NET 1.1, con Vista sarà di serie il 2.0.

    La dipendenza dal .NET Framework è una delle valutazioni da fare quando si inizia a sviluppare, è un requisito.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Detto in altri termini, se tu sviluppi in Java, ti sembra strano dover installare il runtime di Java in una macchina dove eseguirai il tuo programma ...?

  10. #10
    Ok, ragazzi non arrabbiatevi . . .

    Capisco, era solo per il fatto che dover dipendere da qualcosa non mi piace, ma come avete giustamente fatto notare, è il linguaggio stesso che lo richiede.

    In ogni modo ho installato il Framework 2.0 anche sull'altra macchina ed ora funziona tutto, semplicemente con l'eseguibile.

    Una cosa, avete detto che con il SP2 è incluso di serie il Framework 1.1, la seconda macchina monta il SP2, ma la mia applicazione fa uso di routine fornite dal Framework 2.0, quindi dovrò aspettare Vista per essere sicuro che la mia applicazione non faccia capricci . . .

    Grazie per l'aiuto!

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.