Seite 1 von 1

Runprogramm macht Schwierigkeiten *gelöst*

Verfasst: 28.02.2009 13:35
von dysti
Hallo,
ich habe folgenden Code schnell erstellt:

Code: Alles auswählen

StandardFile$ = "c:\"   ; anfänglichen Pfad + Dateiname festlegen
  ; Mit dem nächsten String werden die Pattern (mit "|" als Trennzeichen) für anzuzeigende
  ; Dateitypen festgelegt:
  ;  Erster:  "Text (*.txt)" als Name, ".txt" und ".bat" als erlaubte Dateiendungen
  ;  Zweiter: "PureBasic (*.pb)" als Name, ".pb" al erlaubte Dateiendung
  ;  Dritter: "Alle Dateien (*.*) als Name, "*.*" als erlaubte Dateiendung, gültig für alle Dateien
  Pattern$ = "PDF (*.pdf)|*.pdf|Alle Dateien (*.*)|*.*"
  Pattern = 0    ; wir verwenden den ersten von drei möglichen Pattern als Standard
  File$ = OpenFileRequester("Bitte Datei zum Laden auswählen", StandardFile$, Pattern$, Pattern)
  If File$
    RunProgram("F:\test\Foxit Reader.exe", "-noregister "+ File$, "", #PB_Program_Wait);|#PB_Program_Connect)
  Else
    MessageRequester("Information", "Der Requester wurde abgebrochen.", 0) 
  EndIf
und diese Zeile macht Probleme:

Code: Alles auswählen

RunProgram("F:\test\Foxit Reader.exe", "-noregister "+ File$, "", #PB_Program_Wait)
Der Pdfreader öffnet und liest auch kleine PDF´s ein (ca. 300KB) aber bei einer größeren PDF (ca. 2MB) startet der Reader nur und zeigt die PDF nicht an.
Wenn ich dann auf die Datei im gestarteten Reader auswähle, lädt er anstandslos die Datei.
Damit scheidet ein Speicherproblem aus.

Was läuft hier verkehrt.

......oder kennt jemand eine andere Möglichkeit, PDF´s anzuzeigen?

MfG

Dysti

Re: Runprogramm macht Schwierigkeiten

Verfasst: 28.02.2009 13:39
von Kiffi
<AusDerHüfteGeschossen>
kann es sein, dass im Pfad + Dateinamen der grösseren PDFs ein
Leerzeichen vorkommt?
</AusDerHüfteGeschossen>

Grüße ... Kiffi

Verfasst: 28.02.2009 13:43
von dysti
@Kiffi,
Volltreffer und versenkt. Das war´s.
Danke

Verfasst: 28.02.2009 14:24
von Mok
Was ist denn eigentlich so schlimm daran, dass in einer Datei ein Leerzeichen vorkommt?

Verfasst: 28.02.2009 14:58
von ts-soft
Mok hat geschrieben:Was ist denn eigentlich so schlimm daran, dass in einer Datei ein Leerzeichen vorkommt?
Dann muß der Dateiname von tüddelchen (") umgeben werden, seid Win95
ist das so, aber manche habens bis heute nicht gescheckt :mrgreen:
Um einen String in PB mit tüddelchen zu umgeben kannste es wie folgt machen:

Code: Alles auswählen

file.s = "Mein File mit Leerzeichen.txt"
file = #DQUOTE$ + file + #DQUOTE$; #DQUOTE$ steht für "

Verfasst: 28.02.2009 14:59
von dysti
@mok,
ich hoffe ich habe dich nicht mißverstanden, aber es geht hier nicht um ein Leerzeichen innerhalb einer Datei sondern um den Dateinamen.
Er war zum Beispiel "rufe datei.exe". Das darf nicht sein, sondern so: "rufe_datei.exe".
Jetzt kann man nur die Vermutung anstellen, das der Dateiname innerhalb des Pdfreader`s mit einer Funktion wie "Alltrim()" gefiltert wird,
so findet er dann natürlich keine Datei auf der Platte, weil ja der Dateiname verfälscht worden ist.

Edit:
Habe Blödsinn geschrieben!!!!!

@TS-Soft super. das "#DQUOTE$" war es. Nun können auch die Dateinamen Leerschritte beinhalten.

@Little John, nun ja, typischer Anfängerfehler

Verfasst: 28.02.2009 14:59
von Little John
Mok hat geschrieben:Was ist denn eigentlich so schlimm daran, dass in einer Datei ein Leerzeichen vorkommt?
Gar nichts.
Es ging hier allerdings um
Pfad + Dateinamen
Daran ist jedoch auch nichts Schlimmes, wenn man richtig damit umgeht. D.h. Pfad- und Dateinamen mit Leerzeichen werden meist nur wie erwartet verarbeitet, wenn sie in " eingeschlossen werden.

Gruß, Little John