![]() |
Parameter zu lang?
Hi, ich hab ein Problem mit der Länge der Parameter, hier erst mal der Code:
Code:
Das Problem: Wenn ich kurze Dateinamen compiliere (z.b.: c:\Temp), klappt das wunderbar. Bei Dateinamen, die länger als ca. 15 Zeichen sind geht das nicht. (Blitz Compiler meldet: File not found). Alle scheint an den Parametern zu hängen, erst da fängt er an den falschen Dateinamen auszuspucken.
SetEnvironmentVariable(PChar('Blitzpath'),PChar(pfad));
file_name := dateipfad[tabber1.ActivePage.tag]; If file_name <> '' then begin synedit1.Lines.SaveToFile(file_name); end; If file_name = '' then begin saveexecute(sender); file_name := dateipfad[tabber1.ActivePage.tag]; end; Application.ProcessMessages; ShellExecute(Handle, 'open', PChar('blitzcc.exe'),PChar('-d '+file_name), pchar(pfad+'\bin'),sw_ShowNormal); Ich bastle gerade an BlitzEdit ( ![]() ![]() |
Re: Parameter zu lang?
Ich würde Pfade generell nie fest im Quelltext verdrahten.
Versuch doch mal, Konstanten zu definieren und mit diesen zu arbeiten... |
Re: Parameter zu lang?
Mit Konstanten zu arbeiten wäre ungünstig und behebt auch nicht mein Problem.
|
Re: Parameter zu lang?
Zitat:
Edit: Hast Du ggf. Leerzeichen im Pfad? /edit |
Re: Parameter zu lang?
Ok du hast recht...Was hat das mit meinem Problem zu tun?
|
Re: Parameter zu lang?
Code:
Was du willst, ist folgendes:
$ dir /b
dies ist ein file dies ist ein zweiter $ dir /b dies ist ein file Datei nicht gefunden
Code:
$ dir /b "dies ist ein file"
|
Re: Parameter zu lang?
Ich verstehe nicht ganz was du meinst...
|
Re: Parameter zu lang?
Wenn Du ein leerzeichen in Deinem Pfad und/oder Dateinamen hast, dann musst Du den Pfad inklusive Dateinamen in Hochkommas setzen.
Zitat:
|
Re: Parameter zu lang?
Ah jetzt versteh ich, mal gucken ob das mein Problem löst.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz