2009-07-23 10 views
19

Qualcuno sa come impostare un'icona dell'applicazione console C# nel codice (non utilizzando le proprietà del progetto in Visual Studio)?C# console application icon

risposta

20

Non è possibile specificare l'icona di un file eseguibile nel codice: fa parte del file binario stesso.

Dalla riga di comando si utilizza /win32icon:<file> se questo è un aiuto, ma non è possibile specificarlo nel codice dell'applicazione. Non dimenticare che la maggior parte delle volte viene visualizzata l'icona dell'applicazione, la tua app non funziona affatto!

Ciò presuppone che si intenda l'icona del file stesso in explorer. Se intendi l'icona dell'applicazione mentre è in esecuzione se fai doppio clic sul file, credo che sarà sempre l'icona della console stessa.

+0

Non sono sicuro che funzionerà per me. Sto compilando un'applicazione concolata in un'applicazione C#, utilizzando CSharpCodeProvider e davvero, voglio davvero configurare l'icona explorer per il file binario risultante ... – kal3v

+8

Ho trovato le opzioni del compilatore: CompilerParameters cp = new CompilerParameters(); cp.CompilerOptions = "/ optimize/target: winexe /win32icon:program.ico"; Grazie! – kal3v

+1

Piccola nota a margine: sembra che il debugger VS avvia occasionalmente programmi di console senza mostrare correttamente la loro icona. Ma non influisce sul programma attuale; è probabilmente solo perché viene avvolto in un debugger o qualcosa del genere. – Nyerguds

22

È possibile modificarlo nelle proprietà del progetto.

veda questo articolo Stack Overflow: Is it possible to change a console window's icon from .net?

In sintesi tasto destro del mouse sul progetto (non la soluzione) nel selezionare le proprietà di Visual Studio e. Nella parte inferiore della scheda "Applicazione" c'è una sezione per "Icona e manifest" in cui è possibile modificare l'icona.

+2

la risposta giusta. Grazie. – cgTag

+3

Stiamo semplicemente ignorando che OP ha specificamente dichiarato che vogliono un modo per farlo in codice ... NON dalle proprietà del progetto ?? – Kristopher