Hm, ich weiß nicht, in wie weit das in dem Fall nützlich ist. Aber bitte, hier ist der Kern-Teil, den ich zum Auslesen aus DLLs verwende:
Delphi-Quellcode:
hLib := LoadLibraryEx(PChar(lib), 0, LOAD_LIBRARY_AS_DATAFILE);
if LongBool(hLib) then
begin
try
SetString(Result, buf, LoadString(hLib, id, @buf[0], SizeOf(buf)));
finally
FreeLibrary(hLib);
end;
end;
Damit lassen sich Strings aus String Tables auslesen, da diese über eine ID ansprechbar sind (siehe angehängten Screenshot 1).
Das Problem an den anderen String ist, dass diese als Dialog/Control-Strings enthalten sind und für mich augenscheinlich keine ID haben und entsprechend nicht mit dieser Funktion ausgelesen werden können. Im zweiten angehängten Screenshot sieht man über den Resource Hacker jedoch, dass diese Strings ebenfalls vorhanden sind. Wie man jedoch drankommen könnte, ist mir schleierhaft.
Irgendeine Idee?