AW: Pfad richtig Escapen
Du sagst damit ja, daß dieses " ein "Zeichen" sein soll, so wie ein "A", aber das soll es ja nicht sein. :angle:
|
AW: Pfad richtig Escapen
Anführungszeichen werden in Batch gar nicht escaped sondern verdoppelt (oder vervierfacht). Escapen muss man nur Pipe (|), Umleitungen (< und >) sowie Befehlsgruppierungen (& und &&) und ggf. Klammern (welche ebenfalls der Befehlsgruppierung dienen).
Davon abgesehen frage ich mich aber noch, warum du die EXE nicht direkt ausführst. Das geht doch einfacher als der Umweg über CMD, oder nicht? Ergänzung: Zur Expandierung von Umgebungsvariablen nutze ich diese Funktion:
Delphi-Quellcode:
Die wird aber wahrscheinlich nicht mit WideStrings/Unicode funktionieren, schätze ich (ich weiß es nicht, weil ich bisher keine Notwendigkeit hatte, meine Programme darauf anzupassen und/oder zu testen).
function ExpandEnvStr(const sInput: string): string;
const MAXSIZE = 32768; // laut PSDK sind 32k das Maximum begin SetLength(Result, MAXSIZE); SetLength(Result, ExpandEnvironmentStrings(PChar(sInput), @Result[1], Length(Result))-1); //-1 um abschließendes #0 zu verwerfen end; MfG Dalai |
AW: Pfad richtig Escapen
Wer rechnet denn schon damit, dass man mit Shellexecute den Kommandoprozessor aufruft, um ein Programm auszuführen. Das ist ja von hinten durch die Brust ins Auge.
|
AW: Pfad richtig Escapen
Zitat:
Und dieser Thread hat mich dann durcheinander gebracht. Zitat:
Mit diesem Pfad
Delphi-Quellcode:
parameter := PWideChar('/K "C:\Program Files (x86)\PostgreSQL\9.1\bin\createuser" -s -U postgres test');
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:10 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