[gelöst] Shell-Funktion: Fehlermeldung wegen Länge der Para.

4. August 2006 13:31

Hallo,
ich möchte mit der Shell-Funktion eine exe aufrufen und Parameter mit übergeben...
Wie es scheint dürfen die Parameter insgesamt nur 250 Zeichen lang sein.

So in etwa ist die Zeile Code:


SHELL(Datei, parameter1 + parameter2 + parameter3 + parameter4 + parameter5 + parameter6 + parameter7 + parameter8);


Datei ist eine Textkonstante, wo der Pfad der Datei hinterlegt ist.
Parameter1 - Parameter8 sind Textvariablen, die ich mit irgendwelchen Tabellenfeldern fülle...

Bei dem Aufruf kommt dann die Fehlermeldung:

Die Quell-Länge überschreitet die Größe des Zielpuffers.

Kann ich das vielleicht irgendwie anders lösen oder weiß jemand sonst was??

Danke schonmal
Zuletzt geändert von PB am 7. August 2006 11:24, insgesamt 1-mal geändert.

4. August 2006 18:25

Du kannst nur dafür sorgen, dass deine Parameter nicht mehr als 250 Zeichen werden, sonst nichts.
welches Programm will den Parameter von mehr als 250 Zeichen haben?
Vielleicht kann dieses Programm die Parameter auch aus einer Textdatei lesen, dann könntest du die Parameter in eben eine solche schreiben und den PFad und namen der Textdatei mit dem nötigen Aufrufparameter (z.B. -f"c:\temp\textdatei.txt") an die Exe übergeben.

7. August 2006 10:29

Wenn Du die Parameter wie in der Hilfe beschrieben übergibst:
Code:
SHELL(Name [, Param, ...])

in Deinem Fall:
Code:
SHELL(Name,parameter1,parameter2,parameter3,parameter4,parameter5,parameter6,parameter7,parameter8)

dann gilt die begrenzung nur für einen Parameter und da muss ich Michael rechtgeben gibt es wohl kein Programm, das mehr als 250 Zeichen erwartet.

7. August 2006 11:23

danke für eure Antworten....:)
habs anders gelöst.
Das Programm konnte nicht aus ner Textdatei lesen,
aber hab einfach ne Anweisung in ne Batch-Datei geschrieben und diese
dann aufgerufen, welche dann die Exe startet und die Parameter übergibt..
Funktioniert so wunderbar
nochma danke