Deutsches AutoHotkey Homepage AutoHotkey Community
Wir helfen uns gegenseitig aus der Patsche
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Programm zum Abarbeiten einer externen Datei

 
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Skripte & Funktionen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
HermannDerUser
Gast





BeitragVerfasst am: Sa Mai 05, 2007 7:06 pm    Titel: Programm zum Abarbeiten einer externen Datei Antworten mit Zitat

Hallo,
da ich mein Programm mit viel Hilfe aus diesem Forum fertiggestellt habe, möchte ich es hier kurz vorstellen:

Das Programm liest bei jedem Aufruf die erste Zeile aus der Datei "timer.lst" und verarbeitet sie, der Rest wird wieder in die Datei geschrieben. In der Datei "timer.lst" stehen Uhrzeiten, die mit Hilfe des Programms CMOSTimer http://www.boraxsoft.de den Timer des Rechner-Bios setzen. Bei meinem BIOS ist nur die Zeit einstellbar. Wenn aber eine Zeit für den nächsten Tag gesetzt werden soll, die vor der aktuellen Zeit liegt, muß das Datum einen Tag vorgestellt werden. Ist die List abgearbeitet (letzter Eintag ist ENDE) wird sie gelöscht und der BIOS-Timer ausgeschaltet.

Code:

scriptname = CMOSTimer
timerliste = %a_scriptdir%\timer.lst
temp = %a_scriptdir%\temp.tmp
filedelete, %temp%                                   ; aufruen

IfNotExist, %timerliste%
    ExitApp                                          ; wenn timer.lst nicht existiert, Programm beenden

loop, read, %timerliste%                             ; Schleife liest die erste Zeit aus
{
if a_index = 1
{
  Zeit = %a_loopreadline%
}
Else
{
  fileappend, %a_loopreadline%`n, %temp%             ; und schreibt den Rest in die Datei temp.tmp
}
}

datum += 1, days                                     ; das Datum wird um einen Tag erh�
tag   := SubStr(datum, 7, 2)                         ; ist n�, da sonst kein weiterer Zeitpunkt gesetzt werden kann
monat := SubStr(datum, 5, 2)                         ; der Morgen vor der aktuellen Zeit liegt
jahr  := SubStr(datum, 1, 4)

datum = %tag%.%monat%.%jahr%                         ; die Variable Datum, bekommt das Datum von Morgen

FileMove, %temp%, %timerliste%, 1                    ; flag = 1 weil schreiben aktiv sein muss!

if Zeit <> ENDE
{
Run, D:\Programme\CMOSTimer\CMOSTimer.exe /wakeup=%datum% %Zeit%,D:\Programme\CMOSTimer   ; wenn eine Zeit vorhanden, CMOSTimer ausf�
}
else
{
Run, D:\Programme\CMOSTimer\CMOSTimer.exe /off,D:\Programme\CMOSTimer                     ; bei ENDE CMOSTimer deaktivieren
FileDelete, %timerliste%                                                                  ; und timer.lst l�en
}


Liebe Grüße
HermannDerUser
Nach oben
Chucky



Anmeldedatum: 07.01.2006
Beiträge: 928
Wohnort: Land der tausend Berge

BeitragVerfasst am: So Mai 06, 2007 7:45 am    Titel: Antworten mit Zitat

Hi HermannDerUser,
was tut denn Dein Script? Wie es arbeitet, hast Du ja beschrieben, aber nicht, wozu.
"Wo ist denn da die Sinngebung?" (Herbert Knebel) Smile

Einige Deiner Script-Zeilen sind übrigens abgeschnitten, immer an Stellen, wo ursprünglich mal Umlaute hinsollten. Das liegt wohl an der Methode, wie Du Dein Script gepostet hast, denn im HTML-Quelltext fehlen die Zeichen ebenfalls.

__________________________________________
Created with BBCodeWriter 7.0 - the one and only Very Happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
HermannDerUser
Gast





BeitragVerfasst am: Mo Mai 07, 2007 4:59 pm    Titel: Antworten mit Zitat

@Chucky

Mit dem Script wird das Kommandozeilentool CMOSTimer gesteuert. Man kann eine Liste von Uhrzeiten angeben, mit denen dann der Timer im BIOS nacheinander gesetzt wird. Ich benutze es für TV Aufnahmen mit einer Satkarte.

Beispiel:

Die Liste enthält folgenden Inhalt:
20:10
23:10
ENDE

Im Scheduler von Windows lege ich Einträge an, die zeitlich kurz nach meinen TV Aufnahmen liegen.
Die TV Software führt die Aufnahme durch -> das Script wird vom Scheduler gestartet und teilt dem CMOSTimer mit, dass der Timer im BIOS auf 20:10 gesetzt werden soll -> der CMOSTimer setzt das BIOS und fährt den Rechner runter -> durch den Timer fährt der Rechner vor der nächsten TV Aufnahme selbständig wieder hoch -> die TV Software macht die nächste Aufnahme u.s.w.

Ich hoffe der Sinn ist jetzt klar Laughing

HermannDerUser
Nach oben
Chucky



Anmeldedatum: 07.01.2006
Beiträge: 928
Wohnort: Land der tausend Berge

BeitragVerfasst am: Di Mai 08, 2007 7:08 pm    Titel: Antworten mit Zitat

HermannDerUser hat Folgendes geschrieben:
...
Ich hoffe der Sinn ist jetzt klar Laughing

Jo, quasi ein Videorecorder. Ich habe mich mit dem BIOS-Timer bisher noch nicht beschäftigt. Aber für diese Anwendung ist er ja gut zu gebrauchen.
In meinem PC ist keine TV-Karte. Aber wenn mal was kommen sollte, womit man die Werbung bei der Aufnahme überspringen kann, werde ich mir sowas mal überlegen.

Hm, gab's da nicht mal was, eine Internetseite, die für jeden Sender ein Signal Werbung/keine Werbung bereitstellte? Entdecke die Möglichkeiten ... Very Happy
__________________________________________
Created with BBCodeWriter 7.0 - the one and only Very Happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
BoBo
Gast





BeitragVerfasst am: Mi Mai 09, 2007 4:27 am    Titel: Antworten mit Zitat

Zitat:
Hm, gab's da nicht mal was, eine Internetseite, die für jeden Sender ein Signal Werbung/keine Werbung bereitstellte?
Einfach checken ob das Senderlogo angezeigt wird. Wenn nicht, dann ist Werbung.
Nach oben
Chucky



Anmeldedatum: 07.01.2006
Beiträge: 928
Wohnort: Land der tausend Berge

BeitragVerfasst am: Mi Mai 09, 2007 10:36 pm    Titel: Antworten mit Zitat

Zitat:
Einfach checken ob das Senderlogo angezeigt wird. Wenn nicht, dann ist Werbung.
Da gucke ich mir doch gleich mal die Preise von TV-Karten an Smile .
Wenn man gewisse Abweichungen in Lage, Helligkeit und Farbe des Logos scriptmäßig akzeptieren könnte ... Dazu ist bestimmt viel Rechnerei nötig. Es gibt ja sogar Patente für das Erkennung von Werbung.

Es gab aber mal eine Internet-Seite, die es rund um die Uhr für jeden deutschen Sender bei Werbung ein Signal gab (rot/grün oder so). Mit einem - zu erwerbenden - Gerät konnte man dieses Signal mit dem DVD-Recorder verbinden, der sich bei Werbung auf Pause schaltete.
Dieses Signal wurde aber nicht automatisch erzeugt, sondern von Menschen, die sich rund um die Uhr alle Fernsehsendungen ansahen und nichts anderes zu tun hatten, als bei Werbung auf einen Knopf zu drücken und ihn bei Nicht-Werbung wieder loszulassen.

Die Seite finde ich natürlich nicht mehr. Crying or Very sad
(Ist ja auch off-topic jetzt.)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
BoBo¨
Gast





BeitragVerfasst am: Do Mai 10, 2007 8:01 am    Titel: Antworten mit Zitat

[Ohne Werbung geht es besser]
Nach oben
Chucky



Anmeldedatum: 07.01.2006
Beiträge: 928
Wohnort: Land der tausend Berge

BeitragVerfasst am: Do Mai 10, 2007 10:36 pm    Titel: Antworten mit Zitat

BoBo¨ hat Folgendes geschrieben:
[Ohne Werbung geht es besser]
Ja genau, sowas war das. Ich habe die Links in dem Bericht mal ausprobiert; die Dienste werden angeboten, teilweise kostenlos.
Aber eine Internet-Seite mit aktuellen Rot-Grün-"Ampeln" für Werbung war leider nicht mehr dabei.

Naja, kann man auch verstehen, Geschäft is Geschäft.

__________________________________________
Created with BBCodeWriter 7.0 - the one and only Very Happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    AutoHotkey Community Foren-Übersicht -> Skripte & Funktionen Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de