super X360 Andy
Klar, andere hätte dafür 4 Dateien gebraucht ^^
die eine die sagt welcher User, und dann 3 für die jeweiligen User,
was ich eigentlich auch besser finden würde, weil man dann halt einen User einfach "kopieren" kann und woanders mitnehmen kann,
bei dir müsste man seinen User immer erst ausschneiden und irgendwo zwischenspeichern...
naja.
BTW:
Ich habe auch manchmal solche "Glücks-Momente" wenn ich sehe wie einfach eine Lösung sein kann.
Ich für meinen Teil habe zB Base64 ins herz geschlossen.
Situation:
Ich hatte auch eine Preference für die jeweilige Sprachen für ein Programm:
Code: Alles auswählen
[MenuTitle]
File = &Datei
Edit = &Bearbeiten
Insert = &Einfügen
Window = &Fenster
Help = &Hilfe
usw.
Nun wollte ich auch für jede Sprache n Icon haben (später für die ComboBox) wo die Flagge dargestellt wird.
Aber ich wollte nun keine extra .ico oder .png für alle Sprachen mitschleifen.
Da "erschein" mir Base64Decoder:
Einfach das Image Base64Encoden und dann direkt mit in die Preference:
Code: Alles auswählen
[Resources]
LanguageIcon =
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/
oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oFHRcIENnlukIAAAFnSURBVDjL1ZM9ihVBFIW/
7tcPjAbFxMBJDRUcI0PFbEBD9zGBu3AjA28TJk7qUgTpur/HoHveYGSqBYdzKO79bkFVwX+/puvr96JW6IbDg
mfjkagD6L8CloiVm5svAHQ33U1VUnXvSeauCLKSzCAiOJ1uWeZ5BuD73Y+tIJOIwN1xc8wNsweNMbAx+Pjp3
XaCS+BxN5d7c7qTEYQZYYa7E2PgNjAzYh2YG88yNsDnMK6quIpA7ujezZAZPYy2seeBVqN9cIxkARaFoypw
Rx7IBnKnz4C92Yxe1zNU4QhYBFD551R3NAY9xgNoXZEbNWyrraCAJd4CL4QOjarpaDrqnJXaHSqEEjqE3kyMb
7DoJeh5oydF9yZ10ZWom+7crreKLu17oKcT/QEWHJQBx9fMOFMXamfqBAXqQh2oE6mQEinBk/kXTKevr/So
oB10AFu396cLmAd0gR+gfMvHGXoAB/jp/8Jn+g1hYolf/PmInAAAAABJRU5ErkJggg==
(In der echten Datei ohne Umbrüche!)
Nun kann ich einfach auch mittels ReadPreferenceString() den Code auslesen
und als Bild laden:
Code: Alles auswählen
Procedure DecodeImage(Image, String$)
Protected *Buffer = AllocateMemory(Len(String$))
Protected Length = Base64Decoder(@String$, Len(String$), *Buffer, Len(String$))
Image = CatchImage(Image, *Buffer, Length)
FreeMemory(*Buffer)
ProcedureReturn Image
EndProcedure
Seit dem, benutze ich Base64 immer häufiger ...
Habe sogar n Exe geschrieben, bei der ich eine Datei einfach anklicken -> Base64 und in der Zwischenablage mein Code habe der dann irgendwo hin kommt.
Das ist meiner meinung auch fürs Board besser als diese komischen DataSections für Bilder oder so ...