14.10.2010 15:52 | |
Beiträge: 68 Bewertung: (9) |
Hallo woisi, "nur" ein Verzeichnis auszulesen ist nicht so schwer wie es zunächst aussieht - aber Du wirst Dich zwangsweise mit den Themen VBScript unter WindowsCE und Objektorientiertes Programmieren ein wenig auseinandersetzen müssen. Vorsicht: WCF PC (=WCF Runtime) und WCF Panel haben verschiedene VBScript Objekte was das Dateisystem angeht - ergo es gibt auch verschiedene Dokumentationen darüber! Vielleicht hilft Dir der folgende Beitrag etwas: http://support.automation.siemens.com/WW/view/de/26150018 oder hier findest Du einige Beispiele zum Thema VBScript: http://support.automation.siemens.com/WW/view/de/22900091 Dein größeres Problem ist die Dialogbox oder besser wo und wie Du die Liste verarbeiten kannst. Fertige Dialoge gibts unter WCF leider nicht. Da musst Du gaaanz viel "von Hand" frickeln und evtl. auch einige Funktionalität in die SPS verlagern. Du müsstest eine eigene Dialogbox aus mehreren EA-Feldern (als Box-Zeilen) mit Auswahl-Schaltflächen darüber und evtl "Blättern"-Schaltflächen komplett selbst gestalten und programmieren! Machbar ist das alles, ja. Aber der zeitliche Aufwand ist zumindest unter WCF enorm. Überleg Dir also gut, ob Du dein Vorhaben nicht vielleicht mit Rezepturen lösen kannst. Oder evtl. mit dem Pocket Internet Explorer des Panels einfach eine programmierte HTML-Seite aufrufen kannst? Werd Dir, sobald ich morgen wieder im Büro bin mal auch ein kleines Beispiel reinstellen... Mfg.: Heiko. |
16.11.2010 18:54 | |
Beiträge: 21 Bewertung: (3) |
Hallo und Danke an alle Ideen und Vorschläge. Da ich bis zu 250 Dateien sortieren müsste lass ich das schon alleine wegen der angesprochenen Performance (das glaub ich ohne nachzudenken ;). Ich hab jetzt eine andere herangehensweise gefunden: ich lese mittels Batch-Script den Ordner mit "dir" ein und leite die Ausgabe in eine Datei um ">". Die Idee hatte ich schon ganz am Anfang, nur leider funktioniert das Umleitungszeichen am Panel nicht (auf der Touch-Tastatur sucht man es vergebens, und eine externe USB-Tastatur liefert das Zeichen auch nicht auf der Kommandozeile (cmd)), somit hab ich dies damals aufgegeben. Nun eine neue Idee: Ich mache mit ein Batch-Script dafür am PC (da kann man ja das ">" Zeichen eingeben), kopiere das Script auf das Panel und starte das BatchScript mittels StartProgram in WinCCflexible. Dazu noch die richtigen Parameter für den "dir"-Befehl: dir /B /ON >files.txt /B Einfaches Format (keine Kopfdaten, keine Zusammenfassung) /O Gibt die Liste sortiert aus - N Name (alphabetisch) und schon funktionierts (fast). Fast deswegen, weil ich im Ordner "\Storage Card ...\.." arbeite und hier das WinCCflex-Script irgendwie trotz Anfürungszeichen immer mit der Fehlermeldung "finde \Storage ... nicht" (oder so ähnlich) beim esten Leerzeichen aufhört. Ich hab das Script dann auf \flash\ (hier gibts keine Leerzeichen) kopiert dann gings, wobei dann natürlich in der BatchDatei zuerst ins richtige Verzeichnis gewechselt werden muss (juhu, da geht dann das Leerzeichen wieder !?!): hier die vollständige BatchDatei: cd "Storage Card CF" cd Kunden dir /B /ON >"\Storage Card CF\files.txt" ich bin aber nicht glücklich darüber, da bei einem Gerätetausch auch die Datei dort wieder richtig in den /flash/ Ordner reinkopiert werden muss (und wer denkt dann daran schon) - naja ich werd da einen SupportRequest stellen. die Datei "files.txt" mit allen im Ordner "\Storage Card CF\Kunden enthaltenen Dateien lese ich dann im WinCCflex ein wie zB unter: http://www.sps-forum.de/showthread.php?t=15348 sehr gut beschrieben und hier noch schnell das WinCCflex-Script (momentan an einen Button projektiert): StartProgram "\flash\dirfiles.bat", "", hmiShowNormal, hmiNo |
Folgen Sie uns auf