Skiftende tray icon alt efter servicetilstand.

Tags:    c#

Jeg har lavet en gui til en ftp daemon, og alt forløber sådan set efter planen. Jeg har kun et problem. Når jeg minimerer til tray vil jeg gerne have den til at skifte mellem et par ikoner, alt efter om den kører eller ej. Lidt i stil med Bulletproofs ikon. Jeg har 3 ikoner. ikon1.ico er den der er tilknyttet min NotifyIcon, og fungrer samtidig som programmets egentlige ikon til exe filen. Ikon2.ico og ikon3.ico er henholdsvis startet og stoppet tilstand. Jeg kan få det til at virke hvis jeg ikke embedder ikonerne, og bare kopierer dem i samme mappe som exe filen. Det jeg vil have dem til er at være embeddede, men jeg kan ikke få adgang til dem når de er embedded. Jeg har prøvet med RessourceManager og et par andre tricks jeg googlede mig frem til. Er der nogen der kan hjælpe med et par linier kode til at løse mit problem?



Så problemet er ikke at få skiftet ikonet, men at få loadet nogle ikoner embedded i assemblien?

Jeg har prøvet to forskellige metoder. Den ene virker når jeg bruger Visual Studio, den anden virker når jeg compiler med kommandolinje. Jeg har endnu ikke selv fundet ud af hvordan Visual Studio compiler, siden at man skal bruge en anden fremgangsmåde.

Kompilet via kommandolinje/csc:
Fold kodeboks ind/udKode 


Visual Studio:
Fold kodeboks ind/udKode 




Jeg har prøvet din løsning uden held. Jeg får en "Resource 'icon1.ico' cannot be found in class 'WindowsApplication1.mainform'.
Hvad skal jeg gøre for at få den væk?


Så problemet er ikke at få skiftet ikonet, men at få loadet nogle ikoner embedded i assemblien?

Jeg har prøvet to forskellige metoder. Den ene virker når jeg bruger Visual Studio, den anden virker når jeg compiler med kommandolinje. Jeg har endnu ikke selv fundet ud af hvordan Visual Studio compiler, siden at man skal bruge en anden fremgangsmåde.

Kompilet via kommandolinje/csc:
Fold kodeboks ind/udKode 


Visual Studio:
Fold kodeboks ind/udKode 




t