Zitat:
Die Notation mit "@Path@" ist mir nicht bekannt und erscheint mir suspekt.
Nur nochmal zur Auffrischung und eine kleine Erklärung.
Im Grunde genommen muss man das als Platzhalter verstehen klar hätte ich auch "Hänschen" benennen können.
Im Code prüfe ich ob der Anwendungspfad der gleiche ist wie der Arbeitspfad wenn das zutrifft wird der Arbeitspfad
durch diese Variable ersetzt um nicht ellenlange Strings in die Konfigurationsdatei zu schreiben.
bsp:
@PATH@UserIcon\48x48\Prompt.png := Der Anwendungspfad + der Ordner wo sich die Icons befinden.
Ich denke auf diese Art einen Platzhalter zu definieren ist durchaus angebracht.
Oder der Anwendungspfad zu meiner Anwendung.
Jetzt!
Zitat:
"c:\program files (x86)\microsoft visual studio\vb98\sourcemein\skaero projekte\sound machine\_build\soundmachine.exe, Soundmachine, @PATH@UserIcon\48x48\SoundMachine.png,@PATH@, 1'"
Und ohne Platzhalter
Zitat:
"c:\program files (x86)\microsoft visual studio\vb98\sourcemein\skaero projekte\sound machine\_build\soundmachine.exe, Soundmachine, c:\program files (x86)\microsoft visual studio\vb98\sourcemein\skaero projekte\sound machine\_build\UserIcon\48x48\SoundMachine.png, c:\program files (x86)\microsoft visual studio\vb98\sourcemein\skaero projekte\sound machine\_build\, , 1'"
So wie oben bleibt das wenigstens noch Lesbar.
Aber gut sei's drum.
--------------------
Mit den Verknüpfungen bin ich noch nicht durch.
Wenn ich jetzt direkt die *.lnk Dateien als Anwendungspfad angebe gibt es Probleme wenn der User diese vom Desktop entfernt.
Es gibt dann auch noch das Problem das die User definierten Icons dann für *.lnk Dateien unnötig sind zudem wird die Konfiguration dann unbrauchbar.
Eventuell muss ich den String parsen und nach dem Namen Icon scannen
Und nur dann wenn dieser existiert den Anwendungspfad austauschen mit dem vom Desktop wo die Verknüpfung abgelegt ist.
C:\Windows\Installer\{90160000-0011-0000-1000-0000000FF1CE}
Icon.40BB677D.0A7A.4D43.9F72.5AE6F0E9 7EE2.exe
Ich denke das sollte auf allen Windows verschiedener Sprachen gleich sein.
Auf "C:\Windows\Installer\" hin zu prüfen dürfte fehlschlagen.
PS:
Habe jetzt nochmal alles umgebaut es werden jetzt nur noch positive Array Indexes verwendet.
gruss