Hallo,
Ich bin neu auf dem Forum und bräuchte eure Hilfe:
Ich möchte ein Programm schreiben der Ressourcen innerhalb fertig kompilierten .exe Dateien einfügen bzw. modifizieren kann. Ich habe das folgendes Problem: die Ressourcen die ich erzeugen möchte sind vom Typ messageTable, und ich habe keine Idee wie ich der UpdateResource Befehlaufruf schreiben soll mit messageTable als Parameter. Ich habe folgendem Code geschrieben, anhand von Beispiele die ich hier im Forum gefunden habe:
Delphi-Quellcode:
procedure TMTPForm.patchButtonClick(Sender: TObject);
var
hFile : THandle;
Value : String;
FileName : String;
begin
FileName := 'patch_me.exe';
hFile := BeginUpdateResource(PChar(FileName), False);
Value := 'TEST';
UpdateResource(hFile, MAKEINTRESOURCE(RT_MESSAGETABLE), MAKEINTRESOURCE(1),
LANG_SYSTEM_DEFAULT{MakeLangID(LANG_GERMAN, SUBLANG_GERMAN)},
PChar(Value), SizeOf(Value));
EndUpdateResource(hFile, False);
end;
Es ist mir relativ klar dass ich ein messageTable aus einem String nicht erzeugen kann, aber was soll ich hier als Parameter geben?
Mir ist schon bekannt wie man messageTable mit dem mc.exe Programm kompilieren kann und danach aus dem brcc32 Tool ein .res Datei erzeugen kann. Aber darum geht es hier: ich möchte diese Schritte überspringen und direkt in Delphi messageTables erzeugen. Ich weiss auch dass es möglich ist, da zum Beispiel die Software XN Resource Editor in Delphi programmiert würde und genau das machen kann.
Hat jemand eine Idee?
Gruß
Bat