Autor Thema: Open von 2 Dateien gleichzeitig  (Gelesen 2971 mal)

Offline ewald

  • Aktives Mitglied
  • ***
  • Beiträge: 140
  • Geschlecht: Männlich
Open von 2 Dateien gleichzeitig
« am: 17.10.08 - 17:41:46 »
Hallo,

gibt es eine Möglichkeit 2 Dateien gleichzeitig zu öffnenhabe folgendes Problem:

   Open fileName$ For Output As fileNum%
   Open OtherfileName$ For Output As OtherfileNum%

Das Problem ist, ich krieg immer die Fehlermeldung "File already open", das heisst, ich muss erst immer eine Datei schliessen, bevor ich die nächste öffne. Sagt auch die DesignerHilfe. Gibt es irgendeine Möglichkeit, zwei Dateien Gleichzeitig zu öffnen?

Ewald
« Letzte Änderung: 17.10.08 - 18:28:52 von ewald »

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Open von 2 Dateien gleichzeitig
« Antwort #1 am: 17.10.08 - 17:47:29 »
Solange in fileNum% und OtherfileNum% zwei unterschiedliche Zahlen stehen, sollte das funktionieren, IMHO.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #2 am: 17.10.08 - 17:50:16 »
Das funktioniert unter den von Dir genannten Bedingungen auch, Martin.

Ewald: Was sagt Freefile? Oder öffnest Du tatsächlich mit einer nicht initialisierten Integervariablen (also 0) den Output? Weiters: Worauf beziehst Du Dich da in der DesignerHelp?

Bernhard

Offline ewald

  • Aktives Mitglied
  • ***
  • Beiträge: 140
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #3 am: 17.10.08 - 18:01:06 »
So initialisier ich das.

   Dim fileName As String, fileNum As Integer
   fileNum% = Freefile()

   Dim sReportfileName As String, iReportfileNum As Integer
   iReportfileNum% = Freefile()


   Open fileName$ For Output As fileNum%

Ist das vielleicht das Problem mit der nicht initialisierten Integervariablen?
Würde es da reichen, wenn ich bei den beiden Freefiles() jeweils ne Zahl reinschreibe?

Offline ewald

  • Aktives Mitglied
  • ***
  • Beiträge: 140
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #4 am: 17.10.08 - 18:28:22 »
Ich habs jetzt :-)

   Dim fileName As String, fileNum As Integer
   fileNum% = 1

   Dim sFTPfileName As String, iFTPfileNum As Integer
   iFTPfileNum% = 2

   Dim sReportfileName As String, iReportfileNum As Integer
   iReportfileNum% = 3

Statt Freefile() jetzt 1, 2 und 3 und schon gehts. Ihr habt mir den richtigen "Schubbs" gegeben ;-) Danke 

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #5 am: 17.10.08 - 18:30:43 »
Genau das ist der falsche Weg, weil Du niemals wissen kannst, welcher FileHandle schon vergeben ist.

Ich befürchte eher, Du führst Freefile aus, ohne vorher den anderen Handle eröffnet zu haben. Dann bekommst Du natürlich die gleiche Nummer, die Du dann nicht zweimal verwenden kannst.

Bernhard

Offline ewald

  • Aktives Mitglied
  • ***
  • Beiträge: 140
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #6 am: 17.10.08 - 18:39:14 »
 :-[
heisst das, ich muss, wie vorher, Freefile() verwenden aber sofort danach den ersten Open machen bevor ich den nächsten Freefile() mache?

Offline ewald

  • Aktives Mitglied
  • ***
  • Beiträge: 140
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #7 am: 17.10.08 - 19:05:33 »
Bernhard, so gehts  ;D

erst mit Freefile() initialisieren, dann gleich öffnen und DANACH erst die nächste Freefile() initialisierung und dann wieder öffnen

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Open von 2 Dateien gleichzeitig
« Antwort #8 am: 17.10.08 - 23:47:37 »
Naja, dafür ist Freefile ja auch da: "Gib mir den nächsten freien file handle". Machst Du das zweimal direkt hintereinander, bekommst Du die gleiche Nummer (und beim dritten Mal auch noch) - der nächste freie handle ist eben jener. Erst, wenn Du diesen belegst, wird die folgende Nummer belegt.

Da auch andere Programme handles belegen können, ist die "freihändige" Vergabe eigener Nummern identisch mit Russischem Roulette.

Vulgo:
Freefile -> sage mir die nächste freie Patronenkammer.
Open -> stecke eine Patrone hinein.
Freefile -> ... usw.
Im Gegensatz zu einem Trommelrevolver bietet Freefile 256 handles  ;D

Bernhard

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz