amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > Hollywood ReadString unter MOS [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

24.01.2005, 22:06 Uhr

[ujb]
Posts: 423
Nutzer
Hi,

ich habe ein Problem mit Hollywood unter MOS. Der folgende einfache
Code läuft nicht.

%Code
OpenFile (1,"C:assign")
data$=ReadString (1,100)
CloseFile(1)
WaitLeftMouse


Das programm bricht ab, da ReadString fehl schlägt. Der Requester
sagt, es hätten nicht alle zeichen eingelesen werden können und ob das
File evtl. Lesegeschützt sei (nota bene: ist es nicht).
Unter UAE funktioniert gleicher Codeschnipsel, ReadLine() und
ReadChr() funktioniert bei gleichem Restcode unter MOS.
Das mitgelieferte WinCopy beispiel funktioniert auch und nutzt
ebenfalls ReadString.
Hat jemand eine Idee was falsch ist?

[ - Antworten - Zitieren - Direktlink - ]

24.01.2005, 22:14 Uhr

Holger
Posts: 8089
Nutzer
Zitat:
Original von [ujb]:
OpenFile (1,"C:assign")
data$=ReadString (1,100)

Ich kenn mich mit Hollywood ja nicht aus, aber das sieht so aus, als ob Du einen Befehl wie einen Text einlesen willst. Ist das korrekt?
In dem Fall gäbe es ja dann mehrere Möglichkeiten. Erst einmal ist der Inhalt der Datei höchstwahrscheinlich anders, zum anderen könnte es auch sein, daß die Datei assign.elf heißt, ich weiß nicht, wie das mit den ppc binaries bei MOS ist...

mfg
--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Antworten - Zitieren - Direktlink - ]

24.01.2005, 22:34 Uhr

[ujb]
Posts: 423
Nutzer
Ich will irgendein binary in ein Arrray einlesen, readstring ist der
Befhel unter Hollywood um binaries einzulesen.
Das öffnen der Datei klappt, nur das Einlesen selbst nicht. ReadLine
hingegen funktioniert...

[ - Antworten - Zitieren - Direktlink - ]

24.01.2005, 22:47 Uhr

Holger
Posts: 8089
Nutzer
Zitat:
Original von [ujb]:
Ich will irgendein binary in ein Arrray einlesen, readstring ist der
Befhel unter Hollywood um binaries einzulesen.
Das öffnen der Datei klappt, nur das Einlesen selbst nicht. ReadLine
hingegen funktioniert...

Öffnen heißt ja nicht, daß es tatsächlich eine Datei ist, könnte ja ja auch ein Link sein, oder weniger als die 100 bytes haben, die Du einlesen willst. (Falls das die Bedeutung dieses Parameters ist)

mfg
--
Good coders do not comment. What was hard to write should be hard to read too.

[ - Antworten - Zitieren - Direktlink - ]

24.01.2005, 23:19 Uhr

[ujb]
Posts: 423
Nutzer
Jepp, der zweite Parameter spezifiziert die einzulesenden Bytes.
100 ist natürlich ein willkürlicher Wert (schlägt ach mit 1 oder
jedem anderen Wert fehl), allerdings hat C:assign deutlich mehr Bytes.
Die Datei ist vorhanden und mit ReadLine (Befehl um eine
Zeile einzulesen) kann ich auch von dieser Datei lesen...



[ - Antworten - Zitieren - Direktlink - ]

25.01.2005, 20:49 Uhr

[ujb]
Posts: 423
Nutzer
Saudummer Fehler im Beispiel von mir!!! Ich habe mossys:c mit C:
verwechselt. In c: bei MOS liegt dieser Befehl nicht, daran habe ich
nicht gedacht.
Manchmal liegt der Fehler aber auch im Detail. Der Befehl openfile
legt ggf. die Datei an, so dass in C: nach meinem ersten Versuch das
Programm zu starten eine leere Datei namens assign vorhanden war.
nach der Fehlermeldung checkte ich zwar die Schutzbits, aber nicht die
Größe.

[ - Antworten - Zitieren - Direktlink - ]

26.01.2005, 08:29 Uhr

p-OS
Posts: 131
Nutzer
Zitat:
Original von [ujb]:
Saudummer Fehler im Beispiel von mir!!! Ich habe mossys:c mit C:
verwechselt. In c: bei MOS liegt dieser Befehl nicht, daran habe ich
nicht gedacht.

Verweißt der Assign C: nicht standardmäßig auf SYS:C und(!) MOSSYS:C ?
Hätte Open() die Datei denn dann nicht trotzdem finden müssen ?



[ - Antworten - Zitieren - Direktlink - ]

26.01.2005, 08:49 Uhr

thomas
Posts: 7675
Nutzer
Zitat:
Original von p-OS:
Verweißt der Assign C: nicht standardmäßig auf SYS:C und(!) MOSSYS:C ?
Hätte Open() die Datei denn dann nicht trotzdem finden müssen ?


Wenn die Datei zum Lesen geöffnet wird, ja. Aber offenbar wird sie ja angelegt, d.h. sie wird mindestens mit MODE_READWRITE geöffnet. Und da wird immer nur auf den ersten Teil eines Multi-Assigns zugegriffen.

Gruß Thomas
--
Email: thomas-rapp@web.de
Home: home.t-online.de/home/thomas-rapp/

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > Hollywood ReadString unter MOS [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2022 by amiga-news.de - alle Rechte vorbehalten.
.