AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Finde keinen Fehler

Ein Thema von TheMiller · begonnen am 20. Mai 2003 · letzter Beitrag vom 20. Mai 2003
Antwort Antwort
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

Finde keinen Fehler

  Alt 20. Mai 2003, 18:40
Hey Leute,
bin gleich mit den Nerven am Ende! Möchte ein Programm per Knopfdruck mit ShellExecute öffnen, wobei der Pfad für die Datei aus einer InI kommt. habe schon einmal Hilfe angefort und bekam eine Antwort, dass ich dem DateiPfad eine Variable geben soll, welche dann in Shell Execute angegeben wird.

uses ShellAPI;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

var Pfad : String;
    Ini : TIniFile;
begin
Ini := TIniFile.create('C:\a.ini');
Try
Pfad := Ini.readstring('1','1',text);
Finally
FreeAndNil(ini);
ShellExecute(Handle, nil, 'Pfad', nil, nil, SW_SHOW);


end;
end;
end.
Das ist mein Code

Finde den Fehler nicht. Datei existiert, Prog startet, aber bei Klick auf Button tut sich nix...

Danke im Vorraus
  Mit Zitat antworten Zitat
lordcroc

Registriert seit: 13. Aug 2002
Ort: Braunschweig
137 Beiträge
 
Delphi 7 Professional
 
#2
  Alt 20. Mai 2003, 18:46
versuch mal deine Variable ohne Häcken beim Shellexecute.
die häcken bewirken das alles was dazwischen ist als een string interpretiert wird.
im momement versuchst du eine Datei Namens: Pfad zu starten

Veruchs mal mit:

ShellExecute(Handle, nil, Pfad, nil, nil, SW_SHOW);
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3
  Alt 20. Mai 2003, 18:49
geht leider auch nicht
  Mit Zitat antworten Zitat
Benutzerbild von Duffy
Duffy

Registriert seit: 19. Mär 2003
Ort: Wuppertal
835 Beiträge
 
Delphi 3 Standard
 
#4
  Alt 20. Mai 2003, 19:00
Hallo DJ-SPM,
versuchs mal so
ShellExecute(0, nil, PChar(Pfad), nil, nil, SW_SHOW); bye
Künftige Generationen wollen ihre Fehler selber machen.
Jedes Programm wird nie das können, was Du wirklich brauchst.
Das Gegenteil von gut ist gut gemeint
-----
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5
  Alt 20. Mai 2003, 19:05
Hey Duffy,

mein Retter in Not. Es funzt!!!!! Klasse, BigTHX!!!
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#6
  Alt 20. Mai 2003, 20:27
Hi,
ist genaugenommen immer noch ein wenig falsch: du sagst ShellExecute nicht was du eigentlich tun willst.
Korrekt wäre daher:
ShellExecute(Handle, 'open', PChar(Pfad), nil, nil, SW_SHOW); Aber das ist eigentlich nur kleinschei***ei...

Chris
  Mit Zitat antworten Zitat
Tom

Registriert seit: 7. Jan 2003
318 Beiträge
 
RAD-Studio 2009 Pro
 
#7
  Alt 20. Mai 2003, 23:53
Zitat von Chakotay1308:
Korrekt wäre daher:
ShellExecute(Handle, 'open', PChar(Pfad), nil, nil, SW_SHOW);
Der PSDK sagt dazu
Zitat:
...
lpOperation
...
NULL
For systems prior to Microsoft® Windows® 2000, the default verb is used if it is valid and available in the registry. If not, the "open" verb is used.

For Windows 2000 and later systems, the default verb is used if available. If not, the "open" verb is used. If neither verb is available, the system uses the first verb listed in the registry.
Korrekt ist demnach für EXE-Dateien 'open' oder nil. Für normale Dateien ist auf jeden Fall nil korrekt, da es nicht für jede registriete Dateiendung den Registryeintrag ...Shell\Open\Command gibt. Auch diese Dateien können mit ShellExecute "gestartet" werden, sofern man nicht 'open' sondern nil angibt.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz