Ik ben na een tijdje maar weer eens begonnen met een beetje programmeren.
Nu wil ik een menu maken met rommetjes, die in een lijst komen te staan.
De bedoeling is dat, na het selecteren van een rom, de knop "Run Emu" aangeklikt kan worden.
Deze knop moet een programma starten, met als parameter de juiste rom.
Nu heb ik hier op GoT gevonden dat dit kan met ShellExecute, dus dat heb ik eens geprobeerd.
Ik heb de knop de volgende code geveven:
Echter, na het klikken op de knop start VisualBoyAdvance met de melding dat hij het bestand C:\0001 niet kan openen.
Hieruit begrijp ik dus dat ShellExecute niet met spaties in de filename overweg kan.
Dit heb ik getest door het bestand te renamen naar 0001.gba en dit in de code te veranderen.
Dan werkt het dus wel, maar dat wil ik niet!
Nu vroeg ik mij af of iemand weet hoe ik deze spaties wel kan laten herkennen, of dat iemand voor mij een vervangende procedure weet om programma + parameter te starten.
Nu wil ik een menu maken met rommetjes, die in een lijst komen te staan.
De bedoeling is dat, na het selecteren van een rom, de knop "Run Emu" aangeklikt kan worden.
Deze knop moet een programma starten, met als parameter de juiste rom.
Nu heb ik hier op GoT gevonden dat dit kan met ShellExecute, dus dat heb ik eens geprobeerd.
Ik heb de knop de volgende code geveven:
code:
1
2
3
4
5
| procedure TGbaMain.BtnRunEmuClick(Sender: TObject); begin ShellExecute(Application.Handle,'open','C:\visualboyadvance.exe', 'C:\0001 - F-Zero (J).gba',nil,SW_SHOWNORMAL); end; |
Echter, na het klikken op de knop start VisualBoyAdvance met de melding dat hij het bestand C:\0001 niet kan openen.
Hieruit begrijp ik dus dat ShellExecute niet met spaties in de filename overweg kan.
Dit heb ik getest door het bestand te renamen naar 0001.gba en dit in de code te veranderen.
Dan werkt het dus wel, maar dat wil ik niet!
Nu vroeg ik mij af of iemand weet hoe ik deze spaties wel kan laten herkennen, of dat iemand voor mij een vervangende procedure weet om programma + parameter te starten.