Hi zusammen
In meinem OpenfileFrame möchte ich PDF-Dateien direkt in einem entsprechenden Programm öffnen, bearbeiten und wieder schliessen Zudem soll das fremde Programm auf einem Container als Parent platziert werden. Dazu verwende ich vorerstfolgendes Codeschnipsel, noch ohne die beabsichtigte Platzierung:
Delphi-Quellcode:
procedure TAlexOpenfileFrame.TVFilesExplorerMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var AnItem: TTreeNode; P: TPoint; LSelectItem, ext :
String;
begin
AnItem := TVFilesExplorer.GetNodeAt(X, Y);
if Button =(mbLeft)
then
begin
LSelectItem := PNameRec(AnItem.Data)^.RealName;
ext := ExtractFileExt(LSelectItem);
if ext = '
.pdf'
then
begin
ShellExecute(
handle, '
open', PChar('
F:\Externer Programmordner\Ashampoo\Ashampoo PDF Free\Ashampoo PDF.exe', PChar(LSelectItem),
nil, SW_SHOWNORMAL));
end;
end;
...
...
Sorgen macht mir die Zeile mit Shellexecute.Die Fehlermeldung :
Zitat:
[dcc32 Fehler] AlexOpenfileFrameUnit.pas(691): E2029 ')' erwartet, aber ',' gefunden
Dabei ist schon vorher die letzte Klammer rot markiert. Und was soll das mit dem Komma? Da ist weit und breit keines. Einzig LSelectItem könnte der Übeltäter sein - der enthält den kompletten Pfad. Aber auch das wird mW. so erwartet.
Gruss
Delbor