ja dann wir ein leere inhalt hinzugefügt
ich bin gerade dabei das
GUI für mein "
RES Builder" zu machen.
ich hab den nochmal komplett neu angefangen.
Ich leg das mal im anhang an.
hat aber noch keine richtige Funktion. Es wird nur das Forumular aufgebaut und in einem Feld benutzerringaben geprüft.
PS: Ich habs noch kürzer gemacht. Mehr oder weniger^^
Delphi-Quellcode:
procedure delphi_versionadd(ort, key:
string);
var regist: TRegistry;
pub: TStringList;
pubdir, pubbrc32, pubbrcc32:
string;
pubi: integer;
begin
regist := TRegistry.Create;
try
regist.RootKey := HKEY_LOCAL_MACHINE;
pub := TStringList.Create;
regist.OpenKey(ort, false);
regist.GetKeyNames(pub);
regist.CloseKey;
if pub.count > 0
then
begin
for pubi := 0
to pub.count - 1
do
begin
regist.OpenKeyReadOnly(ort + '
\' + pub[pubi]);
if regist.ValueExists(key)
then
begin
pubdir := regist.ReadString(key);
regist.CloseKey;
pubdir := IncludeTrailingPathDelimiter(pubdir) + '
Bin\';
if FileExists(pubdir + '
brc32.exe')
then
pubbrc32 := pubdir + '
brc32.exe';
if FileExists(pubdir + '
brcc32.exe')
then
pubbrcc32 := pubdir + '
brcc32.exe';
additem(pub[pubi], pubbrc32, pubbrcc32);
end;
end;
end;
finally
regist.free;
pub.Free;
end;
end;
procedure delphi_versions;
var i: integer;
begin
//L_NAME := lang.ReadString('lang', 'L_NAME', 'Deutsch');
if settings.SectionExists('
DelphiVersions')
then
begin
i := 1;
while settings.ValueExists('
DelphiVersions', inttostr(i) + '
KEY')
do
begin
delphi_versionadd(settings.ReadString('
DelphiVersions', inttostr(i) + '
KEY', '
'), settings.ReadString('
DelphiVersions', inttostr(i) + '
DIR', '
RootDir'));
i := i +1;
end;
end
else
begin
delphi_versionadd('
SOFTWARE\Borland\Delphi', '
RootDir');
delphi_versionadd('
SOFTWARE\Borland\BDS', '
RootDir');
delphi_versionadd('
SOFTWARE\CodeGear\BDS', '
RootDir');
end;
end;