Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   FreePascal (https://www.delphipraxis.net/74-freepascal/)
-   -   FreePascal Programm Build - dynamisch erzeugen (https://www.delphipraxis.net/167078-programm-build-dynamisch-erzeugen.html)

thomasschaf 12. Mär 2012 18:58

AW: Programm Build - dynamisch erzeugen
 
Diese Lösung scheint mir doch die einfachste.
Soweit ich es getestet habe, schein es auch zu funktionieren.

Danke für den Link.

thomasschaf 13. Mär 2012 16:01

AW: Programm Build - dynamisch erzeugen
 
Nun wollte ich die andere Möglichkeit mit UpdateResource noch ausprobieren.

Wie man damit eine Resource in einer exe-Datei ändert habe ich schon herausgefunden.
Wie / wo kann ich diese Resource erstellen, die in dem zu ändernden Programm enthalten sind ?


Edit:
Jetzt weiß ich nicht wo der Fehler steckt.
Ich habe eine Resource in Programm B per lrs-file eingebunden.
Diese kann ich im Programm B selber abfragen:
Delphi-Quellcode:
LazarusResources.Find('text').Value;
(Die Resource heißt text)

Ich hoffte, diese mit Programm A ändern zu können, hier mein Code:
Delphi-Quellcode:
function SetRes(filename, resname, resvalue: string): boolean;
var
  hUpdate: THandle;
  Size:   DWord;
begin
  hUpdate := BeginUpdateResource(PChar(filename), True);
  if (hUpdate <> 0) and (hUpdate <> INVALID_HANDLE_VALUE) then
  begin
    try
      Size  := Succ(Length(resvalue)) * SizeOf(char);
      Result := UpdateResource(hUpdate, RT_RCDATA, PChar(resname),
        0, PChar(resvalue), Size);
    finally
      EndUpdateResource(hUpdate, False);
    end;
  end;
end;
folgende Parameter verwende ich:
Syntax:
Delphi-Quellcode:
SetRes('ProgrammB.exe','text','Ein Test...')
Der einzige Unterschied, den ich in B festmachen kann, ist, dass das Design anders ist; ein Button wird nicht mehr blau sondern eher gräulich ist, es erinnert an win98(?).

Edit^2: habe den namen auch mal von "text" umbenannt, aber es funktioniert nicht!

Vielen Dank


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:05 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz