Dateien mit WinCe auf MMC löschen (Kill)

Dino

Level-1
Beiträge
39
Reaktionspunkte
9
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe Programmierer!

Es handelt sich um .csv-Dateien die ich mit Hilfe von WinccFlex 2008 und einem MP277 8 Zoll (WinCe) auf der MMC-Karte löschen möchte. Gemäss Handbuch und Beispiele in diesem Forum ist das ganz einfach:

Dim fso
Set fso = CreateObject("FileCtl.FileSystem")
fso.Kill ("\Storage Card MMC\*.*")


habe es natürlich auch schon so geschrieben:

fso.Kill ("Storage Card MMC\*.*")

und mit einer Variable mit Inhalt "Path und Filename" in einer Schlaufe auch schon!

Die Antwort meines Panel ist "Fehler: Access is denied"

Ich möchte dazu noch sagen, dass über den Explorer die Dateien die in Frage kommen löschbar sind! Also keine Hardwaresperrung vorhanden (denke ich)

Bin um jede Hilfe dankbar, Gruss Dino
 
dateien geschlossen?

Remarks​
The​
Kill method supports the use of multiple-character (*) and single-character (?) wildcards to specify
multiple files.

An error occurs if you try to use
Kill to delete an open file.
probier mal den exakten dateinamen anzugeben anstatt die wildcards
 
Enthält Deine MMC auch Ordner? Die können nicht mit Kill gelöscht werden, sondern nur mit RmDir.
Eventuell legt Deine WinCCflex-Runtime Ordner oder Dateien auf der MMC an?
Als Du die Dateien mit dem Windows Explorer gelöscht hast, lief da die Runtime?

Debug-Tips:
Laß Dir mal auflisten, welche Dateien und Ordner auf der MMC zur RT-Laufzeit vorhanden sind (die also von Kill
gelöscht werden sollten).
Code:
Dim fso, fname

Set fso = CreateObject("FileCtl.FileSystem")
fname = fso.Dir("\Storage Card MMC\*.*")
While fname <> ""
    ShowSystemAlarm "Dir MMC: '" & fname & "'"
    fname = fso.Dir()
Wend
Wenn noch nicht vorhanden, dann füge in ein Bild eine Meldeanzeige für "(x)Meldeereignisse" ein, die auch
Meldungen der Klasse "System" anzeigt. Dann kannst Du dort nachlesen, welche Dateien Dir aufgelistet wurden.

Eine MMC unabhängig vom Inhalt komplett löschen geht nur mit größerem Aufwand (oder per Formatieren, was aber
imho auf dem MP277 nicht geht).

Um den Windows Explorer während laufender Runtime zu öffnen, braucht man nur auf der Bildschirmtastatur
zweimal die Windows-Taste drücken -> es erscheint die Taskbar mit dem Startmenü.
Um die Bildschirmtastatur anzuzeigen, tippe in ein Eingabefeld oder mache eine Schaltfläche mit dem Ereignis
"OeffneBildschirmtastatur".

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Harald, Hallo Volker,

Danke für Eure Interesse. Ich hatte so ziemlich alles von Euch vorgeschlagenes schon vor meinem Hilferuf getan (löschen über Explorer im Runtimemodus, exakten Dateinamen eingeben, usw.).

Kommt Zeit, kommt Rat, ich habe festgestellt, dass die Dateien die ich löschen wollte als "Read only" deklariert sind und über die Kill-Funktion nicht löschbar sind!
Archivdateien.csv werden von meinem System als read only angelegt! Finde ich auch richtig so!

Um Euch ein bisschen Klarheit zu schaffen, mein Vorgang ist wie folgt:
1- Archivieren als .csv auf MMC (läuft)
2- USB-Stick suchen (läuft)
3- Alle .csv von MMC auf USB kopieren (läuft)
4- Alle .csv von MMC löschen (geht "noch" nicht)

Nun werde ich probieren vor dem :sw9: Kill-Auftrag mit "SetAttr" die Attribute von "Read only" auf "Normal" zu setzen.

Gerne nehme ich immer noch Tips und Tricks diesbezüglich entgegen. Übrigens Harald, der Code für das Auflisten werde ich ganz sicher noch brauchen, Danke.

Schöner Gruss, Dino
 
dafür gibt es ereignisse in flex die du dafür nutzen kannst
 

Anhänge

  • Zwischenablage05.gif
    Zwischenablage05.gif
    8 KB · Aufrufe: 64
Zurück
Oben