Registriert seit: 8. Nov 2006
1.360 Beiträge
Delphi 10.3 Rio
|
Programm Ordner finden
6. Apr 2008, 14:06
Hi
Und zwar habe ich ein kleines Problem. Ich las den Benutzer über eine Groupbox sein schreib Programm wählen.
Der Pfad zum Programm ordner ändert sich ja aber immer (XP, Vista) wie kann ich jetzt den Programmpfad herausfinden immoment mache ich das so mit der abfrage des betriebsystem jetzt habe ich den Tipp bekommen das, das nicht schön gelöst ist.
Delphi-Quellcode:
sWindowsVersionName:= JvComputerInfoEx1.OS.ProductName;
Label3.Caption:= 'Verwendetes Betriebssytem: ' + Form1.sWindowsVersionName; // Windows Version anzeigen
if Form1.sWindowsVersionName = 'Microsoft Windows 2000' then
begin
sWinPfad:= 'C:\Programme';
end;
if Form1.sWindowsVersionName = 'Microsoft Windows XP' then
begin
sWinPfad:= 'C:\Programme';
end;
if Form1.sWindowsVersionName = 'Microsoft Windows Vista' then
begin
sWinPfad:= 'C:\Program Files';
end;
end;
//================Auswahl Programm==============================================
procedure TSoftwareeinstellungen.GrBoxProgrammauswahlClick(Sender: TObject);
begin
if GrBoxProgrammauswahl.ItemIndex = 0 then
begin
sProgrammPfad:= (sWinpfad +'\Windows NT\Accessories\wordpad.exe');
if not FileExists(sProgrammPfad) then
Begin
sProgrammPfad:= ('c:\Programme\Windows NT\Zubehör\Wordpad.exe');
End;
sProgramLabel:= ('Wordpad');
end;
if GrBoxProgrammauswahl.ItemIndex = 1 then
begin
if not FileExists (sWinpfad + '\OpenOffice.org 2.4\program\swriter.exe') then
begin
if Form1.MessageDlgPos2('OpenOffice 2.4 ist nicht Installiert.' + #10 +'Wollen Sie OpenOffice installieren?'
+ #10 + #10 + 'Nehmen Sie nach der Installation die Einstellungen nochmals vor',mtInformation,[mbYes,mbNo],self) = mrYes then
begin
if ShellExecute(Application.Handle,'open',PChar(sWinpfad + '\xxxxx\Support\OOo_2.4.0rc2_20080227_Win32Intel_install_de.exe'),Nil, Nil, SW_NORMAL) <= 32 then
end
else
begin
sProgrammPfad:= (sWinpfad + '\Windows NT\Accessories\wordpad.exe');
if not FileExists(sProgrammPfad) then
Begin
sProgrammPfad:= ('c:\Programme\Windows NT\Zubehör\Wordpad.exe');
End;
Form1.MessageDlgPos2('Standard Programm Wordpad wird ausgeführt!',mtInformation,[mbOk],self);
sProgramLabel:= ('Wordpad');
end;
end
else
begin
if fileExists (sWinpfad + '\OpenOffice.org 2.4\program\swriter.exe')then
begin
sProgrammPfad:=(sWinpfad + '\OpenOffice.org 2.4\program\swriter.exe');
sProgramLabel:= ('OpenOffice');
end
end;
end;
if GrBoxProgrammauswahl.ItemIndex = 2 then
begin
if not FileExists (sWinpfad + '\Microsoft Office\Office10\WINWORD.EXE')then
begin
if Form1.MessageDlgPos2('Word 2003 ist nicht Installiert.',mtInformation,[mbOK],self) = mrOK then
begin
sProgrammPfad:= (sWinpfad + '\Windows NT\Accessories\wordpad.exe');
if not FileExists(sProgrammPfad) then
Begin
sProgrammPfad:= ('c:\Programme\Windows NT\Zubehör\Wordpad.exe');
End;
sProgramLabel:= ('Wordpad');
Form1.MessageDlgPos2('Standard Programm Wordpad wird ausgeführt!',mtInformation,[mbOk],self);
end;
end
else
begin
sProgrammPfad:=(sWinpfad + '\Microsoft Office\Office10\WINWORD.EXE');
sProgramLabel:= ('Word 2003');
end;
end;
if GrBoxProgrammauswahl.ItemIndex = 3 then
begin
if not FileExists (sWinpfad + '\Microsoft Office\Office12\WINWORD.EXE')then
begin
if Form1.MessageDlgPos2('Word 2007 ist nicht Installiert.',mtInformation,[mbOK],self) = mrOk then
begin
sProgramLabel:= ('Wordpad');
sProgrammPfad:= (sWinpfad + '\Windows NT\Accessories\wordpad.exe');
if not FileExists(sProgrammPfad) then
Begin
sProgrammPfad:= ('c:\Programme\Windows NT\Zubehör\Wordpad.exe');
End;
Form1.MessageDlgPos2('Standard Programm Wordpad wird ausgeführt!',mtInformation,[mbOk],self);
end;
end
else
begin
sProgrammPfad:=(sWinpfad + '\Microsoft Office\Office12\WINWORD.EXE');
sProgramLabel:= ('Word 2007');
end;
end;
Label4.Caption:= 'Ihr gewähltes Programm: ' + sProgramLabel;
Oder hat jemand eine schönere Lösung
Gruß Sascha
[edit=MrSpock]Änderung am Programmpfad wie vom Ersteller gewünscht durchgeführt. Mfg, MrSpock[/edit]
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...
Surft Ihr mit dem Taschenrechner?"
|
|
Zitat
|