#MB_IconError laden?
- KeyKon
- Beiträge: 1412
- Registriert: 10.09.2004 20:51
- Computerausstattung: Laptop: i5 2,8 Ghz, 16GB DDR3 RAM, GeForce 555GT 2GB VRAM
PC: i7 4,3 Ghz, 32GB DDR3 RAM, GeForce 680 GTX 4GB VRAM
Win10 x64 Home/Prof
PB 5.30 (64bit) - Wohnort: Ansbach
- Kontaktdaten:
#MB_IconError laden?
Wie kann ich denn dieses Icon als Image laden?
(Ich nehme an es ist in der Shell32.dll, aber wie finde ich am einfachsten den Index raus?)
(Ich nehme an es ist in der Shell32.dll, aber wie finde ich am einfachsten den Index raus?)
(\/) (°,,,°) (\/)
- Fluid Byte
- Beiträge: 3110
- Registriert: 27.09.2006 22:06
- Wohnort: Berlin, Mitte
Es ist user32.dll
Außerdem musst du die Größe angeben die du laden willst. Es handelt sich hier um ein Multi-Icon und nicht ein gewöhnliches Bitmap:
PS: Den Index (= Resource ID) kannst du mit "XNResourceEditor" oder "Resource Hacker" herrausfinden.

Außerdem musst du die Größe angeben die du laden willst. Es handelt sich hier um ein Multi-Icon und nicht ein gewöhnliches Bitmap:
Code: Alles auswählen
OpenWindow(0,0,0,320,240,"void",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
OpenLibrary(0,"user32.dll")
hbmErrorIcon1 = LoadImage_(LibraryID(0),"#103",#IMAGE_ICON,16,16,0)
hbmErrorIcon2 = LoadImage_(LibraryID(0),"#103",#IMAGE_ICON,32,32,0)
hbmErrorIcon3 = LoadImage_(LibraryID(0),"#103",#IMAGE_ICON,48,48,0)
CloseLibrary(0)
StartDrawing(WindowOutput(0))
DrawImage(hbmErrorIcon1,20,40)
DrawImage(hbmErrorIcon2,55,30)
DrawImage(hbmErrorIcon3,105,22)
StopDrawing()
DestroyIcon_(hbmErrorIcon1)
DestroyIcon_(hbmErrorIcon2)
DestroyIcon_(hbmErrorIcon3)
While WaitWindowEvent() ! #PB_Event_CloseWindow : Wend
Windows 10 Pro, 64-Bit / Outtakes | Derek
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Code: Alles auswählen
LoadIcon_(0, #IDI_ERROR)
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Da hab ich dann doch noch einen kleinen Verbesserungsvorschlag:KeyKon hat geschrieben:THX für die CodesFluidBytes is optimal da ich das Icon eh auf 16x16 benutze...
Code: Alles auswählen
OpenWindow(0,0,0,320,240,"void",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
hbmErrorIcon1 = LoadImage_(GetModuleHandle_("user32.dll"), "#103", #IMAGE_ICON, 16, 16, #LR_LOADTRANSPARENT | #LR_SHARED)
StartDrawing(WindowOutput(0))
DrawImage(hbmErrorIcon1,20,40)
StopDrawing()
While WaitWindowEvent() ! #PB_Event_CloseWindow : Wend
der Application geladenen user32.dll und wird mit Programmende autom.
destroyed.
Gruß
Thomas
// edit:
so siehts schöner aus

Zuletzt geändert von ts-soft am 18.04.2009 17:41, insgesamt 1-mal geändert.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Dann muß ich es wieder selber destroyen, hab ich überlesen, das er dannedel hat geschrieben:Was passiert denn wenn du LR_SHARED entfernst? Mit LR_SHARED wird das
erste gefundene Icon, passend zur Nummer, unabhaengig der Groesse
zurueck gegeben.
die größe ignoriert. Also einfach das Flag wieder entfernen und das Icon am
ende mit DestroyIcon_() freigeben.
Merkwürdigerweise erscheint es bei mir in 16 x 16 ?
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
@KeyKon
Haste irgendeinen Nicht MS-Style installiert?
Haste irgendeinen Nicht MS-Style installiert?
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
