Info.Software "Portable"

di il
9 risposte

Info.Software "Portable"

Ciao a tutti, spero di aver azzeccato la Sezione giusta dove scrivere.
E' possibile creare una versione "Portable" di un software creato con linguaggio .NET (nello specifico sto usando C#) ?
Questo per evitare di installarlo su PC dove non si hanno privilegi di Amministratore?
Pensavo di farlo copiando direttamente la Cartella Release ma non so se è la procedura corretta (nel caso ce ne fosse una).
Grazie, buon serata

9 Risposte

  • Re: Info.Software "Portable"

    Ciao

    Devi fare un'applicazione nuova, oppure vorresti gestire questa cosa in un'applicazione già esistente?

    Che sappia io, il framework "core" di .NET consente di rilasciare delle app complete e auto-eseguibili (poi in base al tipo di progetto ci sono più o meno alternative)

    Il framework "full", invece, richiede che il framework sia installato sulla macchina
  • Re: Info.Software "Portable"

    stevign76 ha scritto:


    E' possibile creare una versione "Portable" di un software creato con linguaggio .NET (nello specifico sto usando C#) ?
    Quando parli di "Portable", ti riferisci al fatto di poterla copiare e lanciare anche se sulla macchina è assente il .NET Framework come pre-requisito?

    Lo chiedo perché qualsiasi programma .NET può essere copiato ed eseguito senza essere installato: è una delle prerogative del framework, benché ciò sia possibile solo se .NET come componente è già presente e installato nel sistema.

    stevign76 ha scritto:


    Questo per evitare di installarlo su PC dove non si hanno privilegi di Amministratore?
    Il problema in sé non è nell'installazione, ma nella cartella in cui tu vuoi installare il software: se predisponi un setup con ClickOnce, ad esempio, puoi installarlo in una sottocartella del profilo dell'utente corrente in automatico, senza aver bisogno di alcun privilegio speciale.

    Al contrario, devi essere amministratore se vuoi copiarlo in una cartella di sistema (es. Programmi) oppure se hai bisogno di leggere e scrivere chiavi del Registro (sulla root HKLM) e così via.

    E' il comportamento del programma a determinare la sua natura.

    stevign76 ha scritto:


    Pensavo di farlo copiando direttamente la Cartella Release ma non so se è la procedura corretta (nel caso ce ne fosse una).
    Puoi copiare l'eseguibile e tutte le DLL referenziate che trovi nella cartella "Release", oppure fare un Publish se usi Visual Studio.

    Per dettagli maggiori, dovremmo conoscere la versione di VS e/o del .NET Framework con cui stai lavorando.

    Ciao!
  • Re: Info.Software "Portable"

    Ciao ad entrambe e grazie .

    Sto usando Microsoft Visual Studio Community 2022 (64 bit) - Versione 17.1.2 con Microsot.NET Framework Versione 4.8.04084 installati sul PC .

    L'Applicazione che sto facendo è scritta in C# (..alla fine sarà un dialetto di C# perché non sono molto pratico di programmazione ..) con Framework di destinazione 4.7.2.

    Specifico meglio dicendo che l'idea era proprio di evitare il fatto di installare il programma, averne appunto una versione "Portable" (mi pare si chiamino così), a meno che ci siano particolari controindicazioni rispetto ad una versione installabile. In effetti dovrei però verificare che chi usufruirà di questa applicazione abbia installato Framewrok 4.7.2 , giusto?

    Grazie
  • Re: Info.Software "Portable"

    Ciao

    Si, se sviluppi in .NET e non usi particolari librerie, per il resto ti basta sia installato il .NET Framework nel PC di destinazione.
    In questo caso puoi benissimo prendere la cartella "Release" dentro al direttorio "bin" e puoi già usarlo (lo faccio spesso perchè lo trovo molto comodo).

    Nella prima risposta pensavo non volessi installare nulla sul PC, nemmeno il .NET Framework
  • Re: Info.Software "Portable"

    Ciao, si in effetti diciamo che il TOP (nel mio caso intendo) sarebbe non installare nulla ma penso sia impossibile.
    Almeno il Framework dovrei installarlo.
    Grazie ancora, buona giornata.
  • Re: Info.Software "Portable"

    stevign76 ha scritto:


    Ciao, si in effetti diciamo che il TOP (nel mio caso intendo) sarebbe non installare nulla ma penso sia impossibile.
    Almeno il Framework dovrei installarlo.
    Se non vuoi installare nulla, devi avere come target una versione del .NET Framework che sia già presente nel sistema operativo di riferimento, ma non può essere sempre una garanzia assoluta.

    La soluzione sarebbe usare un altro linguaggio e ambiente di sviluppo che, a differenza di Visual Studio e C#, produce eseguibili nativi e autosufficienti.
  • Re: Info.Software "Portable"

    Delphi?
  • Re: Info.Software "Portable"

    gian82 ha scritto:


    Delphi?
    Delphi è senz'altro l'alternativa più vicina, per feature dell'ambiente e del linguaggio, ma anche C, C++ e tanti altri.

    In breve, tutti quei linguaggi e compilatori che producono eseguibili che non necessitano di un runtime (o che sono in grado di incorporarlo, ovviamente a un certo costo).

    Ciao!
  • Re: Info.Software "Portable"

    @gian82 e @Alka siete due "inzigoni" .. Non so quasi neanche da che parte son girato con C#
    Scherzi a parte vedo cosa riesco a combinare.. tanto in effetti forse partire da 1 (con scala 0-10) con C# o partire da 0 con Delphi è poi uguale
Devi accedere o registrarti per scrivere nel forum
9 risposte