AGB  ·  Datenschutz  ·  Impressum  







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

ShellExcecute Formulierung

Ein Thema von geldis · begonnen am 4. Feb 2022 · letzter Beitrag vom 4. Feb 2022
Antwort Antwort
Seite 2 von 2     12   
geldis

Registriert seit: 19. Jan 2022
39 Beiträge
 
#11

AW: ShellExcecute Formulierung

  Alt 4. Feb 2022, 15:49
@delphi.narium

War Zufall. Ist mir eben vor die Füsse gefallen.
Dein Vorschlag funktioniert bestens, vielen Dank.

Leerzeichen im Dateinamen sind so auch kein Problem.
Auch an alle anderen natürlich.

geldis

Ups, eines noch: der Slash am Ende vom OutPath passt ihm allerdings gar nicht.

Geändert von geldis ( 4. Feb 2022 um 15:56 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#12

AW: ShellExcecute Formulierung

  Alt 4. Feb 2022, 16:09
Wem passt das nicht?

Dem? -> polon.exe

Oder dem? -> ShellExecute

Bei ShellExecute würd' mich das eher wundern.
Gibt es denn OutPath?

Delphi-Quellcode:
WorkFile := '"C:\Users\Geldis\Projekt 7\PIC\polon.exe"';
OutPath := 'C:\Users\Geldis\Projekt 7\OUT\';
if not ForceDirectories(OutPath) then
begin
  Fehlermeldung, dass der Ausgabepfad nicht erstellt werden kann.
end else
begin
  InPath := 'C:\Users\Geldis\Projekt 7\IN\';
  if not ForceDirectories(InPath) then
  begin
    Fehlermeldung, dass der Eingabepfad nicht erstellt werden kann.
  end else
    InFile := Format('"%s%s"',[InPath,'sample.jpg']);
    if not FileExists(InFile) then
    begin
      Fehlermeldung, dass es das InFile nicht gibt.
    end else
    begin
      // Wenn polon.exe ein Problem mit dem abschließenden \ hat so:
      Params := Format('%s -w 256 -h 256 -ft tga -o "%s"',[InFile,ExcludeTrailingPathDelimiter(OutPath)]);
      // ansonsten so:
      Params := Format('%s -w 256 -h 256 -ft tga -o "%s"',[InFile,OutPath]);
      if ShellExecute(0, 'open', PChar(WorkFile), PChar(Params), nil, SW_HIDE) <= 32 then
      begin
        Fehlerbehandlung, Fehlermeldung ...
      end;
    end;
  end;
end;
(ungetestet hingedaddelt)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#13

AW: ShellExcecute Formulierung

  Alt 4. Feb 2022, 16:20
Achso:

ShellExecute hat da doch noch so einen Parameter, der momentan Nil ist.

Heißt irgendwie "Directory"!

Da könnte man ja dann ggfls. den OutPath angeben. Keine Ahnung wie polon.exe arbeitet.

Wo schreibt's hin, wenn kein OutPath angegeben ist?
Ins aktuelle Verzeichnis, das wäre dann das im Directoryparameter von ShellExecute.
In dem Fall könnte dann eventuell die Angabe des OutPath in den Parametern entfallen.

Ist jetzt alles nur Spekulation, aber eventuell hilft's ja irgendwie weiter.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#14

AW: ShellExcecute Formulierung

  Alt 4. Feb 2022, 16:36
Ups, eines noch: der Slash am Ende vom OutPath passt ihm allerdings gar nicht.
Das liegt dann aber eher am interpretierenden Programm (polon.exe?).
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#15

AW: ShellExcecute Formulierung

  Alt 4. Feb 2022, 20:25
Und es kommt drauf an, wo der Ausgabepfad/Arbeitsverzeichnis liegt.

Nicht Jeder kann bei Allem mit Netzwerkpfaden umgehen, wie z.B. die Console nicht.


So müßte man dann sicher sein, dass sowas dann nie vorkommen kann.
$2B or not $2B
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 13:49 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