Jump to content

Automatisches Herunterfahren?


Borlox

Recommended Posts

Hi Leute,

 

wenn ich meinen Videorecorder so programmiere, dass am Ende mein Computer herunterfahren soll, dann klappt das leider nicht! Ich habe Windows ME und er meldet mich nur ab und es kommt dann der anmelde Dialog! Kann ich das irgendwie ändern oder gibt es noch eine andere Möglichkeit? Bitte helft mir!

 

Vielen Dank schon mal im voraus

 

Borlox

Link to comment

Eigentlich kannst Du dass sowohl im Recorderfenster wie auch über das TimerPlugin einstellen. Funktioniert es bei beiden nicht?

 

Steffen

Link to comment

Einestellen kann ich es schon! Aber wenn ich Erzwinge Herunterfahren einstelle, dann verhält er sich so, als wenn er sich nur kurz mit meinem Benutzer abmeldet und dann die Eingabe eines neuen Benutzers wünscht!

 

Eigentlich kann man da ja nicht so viel falsch machen! Oder?

 

Borlox

Link to comment

Hmmm, eigentlich kann man da nichts falsch machen. Es hat sich auch noch niemand gemeldet der dieses Phänomen hatte.

Hat Du eingentlich mehrere Nutzer / User auf Deinem Rechner? Oder benutzt Du ihn allein?

Steffen

Link to comment

@Borlox: Wie schon von Klausing angeregt... falls du die Vollversion hast, kannst du mal probieren, ob das Problem auch mit dem Sleeptimer-Plugin auftritt? Dies wäre für eine Diagnose sehr aufschlußreich.

 

Griga

Link to comment

So, habe mal ein bischen gesucht! Und habe mir mal den Sleeptimer genommen und den dort vorhandenen Shutdown-Befehl durch den folgenden ersetzt!

 

exitwindowsex(EWX_SHUTDOWN,0);

 

Und siehe da, es klappt! Vielleicht hilft euch das ja weiter!

Wie kann ich denn eigentlich ein Plugin am Ende einer Aufnahme anwenden? Erst immer den Timer einstellen finde ich eigentlich blöd! Besonders wenn ich morgens die Aufnahmen programmiere, dann muss ich da ja ein paar Hundert Minuten dort einstellen!

 

Bis dann

 

Borlox

Link to comment

Siehe da, noch ein Delphi-kundiger :jump:

 

Eigentlich ist die Option Start/Stop Recording des Sleeptimers nicht als Standardlösung für Timeraufnahmen gedacht, sondern nur als Notlösung, wenn man abends eine Aufnahme manuell gestartet hat und dann plötzlich schrecklich müde wird...

 

Griga

Link to comment

Ich hatte unter ME das gleiche Problem. Nach meinen Recherchen im Internet ist das Problem unter ME bekannt. Da hat sich nämlich ein kleiner Bug eingeschlichen, der statt den PC herunterzufahren nur den Benutzer abmeldet. Da ich mittlerweile aber einen neuen Rechner mit WinXP habe, hat sich das Problem von selbst erledigt.

 

Gruß Jörg

Link to comment

Ja, bin Delphi-Kundig! Und werde mir wohl mal versuchen nun ein eigenes Plugin zu schreiben! Vielleicht bekomme ich das ja hin! Wie kann ich denn ein Plugin zeitgesteuert aufrufen? Wenn man im Videorecorder ist, dann kann man da doch anklicken Use Plugin, wie kann ich darauf zugfreifen??

 

Danke!

Borlox

Link to comment
Wie kann ich denn ein Plugin zeitgesteuert aufrufen? Wenn man im Videorecorder ist, dann kann man da doch anklicken Use Plugin, wie kann ich darauf zugfreifen??

 

Uff, das geht, ist aber ein bißchen kompliziert...

 

Zunächst muss die DLL folgende Funktion exportieren:

 

function EventMsg(EventType: Integer; Data: Pointer): Integer;stdcall;

 

Der Parameter EventType kann z.Z. folgende Werte annehmen:

 

0: Achtung, die DLL wird gleich entladen!

 

1: Ein in dem entsprechenden DVBViewer-Fenster definierter Timer-Event steht zur Ausführung an. Wenn die Funktion 0 zurückgibt, macht der DVBViewer das. Wenn sie 1 zurückgibt, wird der DVBViewer nicht aktiv, d.h. das Plugin übernimmt die Ausführung. Der Parameter Data zeigt auf eine Struktur mit den Timerdaten (musst du den Pointer typecasten):

 

  tVCRRec=record
  Description: PChar;
  Channel: PChar;
  StartTime,EndTime:TDateTime;
  Date:TDateTime;
  ShutDown: Word;
  JobShop: Word;
  TimerAction: Word;
 end;

 

Der Zeiger data und die PChar-Felder sind nur lokal innerhalb der Funktion gültig. Wenn du sie in der DLL später noch verwenden willst, darfst du nicht die PChar speichern (die zeigen dann sonstwohin), sondern mußt sie durch Zuweisung in Strings konvertieren.

 

Zu beachten ist, dass StartTime und EndTime eine reine Uhrzeitangabe sind (ohne Datum), und das StartTime > EndTime sein kann, wenn die Aufnahme Mitternacht überschreitet. Die korrekte Endzeit inklusive Datum zwecks Vergleich mit Now muss also so berechnet werden:

 

  RecEndTime:=Date + EndTime;
 if EndTime < StartTime then RecEndTime:=RecEndTime+1;

 

Die Felder ShutDown, JobShop und TimerAction geben den Listenindex der entsprechenden Comboboxen im DVBViewer-Timerfenster an, beginnend mit 0.

 

JobShop ist z.B. bei Einmal = 0, Täglich = 1, Wöchentlich = 2.

 

ShutDown bezieht sich entsprechend auf die Liste unten links mit den Aktionen nach dem Aufnahmeende, und TimerAction auf die Liste unten rechts, wo auch Use Plugin steht - musst du dir entsprechende Konstanten deklarieren.

 

Allerdings bekommen Plugins *alle* Events gemeldet, auch "Record" und "Only Tune Channel". Der Eintrag "Use Plugin" ist bereits durch den Audiorecorder besetzt und wird im nächten Release auch so heißen ("Use Audiorecorder").

 

So, damit hast du erst mal was zu tun, glaube ich :jump:

 

Griga

Link to comment
  • 6 months later...

Nachdem das Problem bei DVBViewer 2.1 und Windows 98 Second

Edition immer noch existiert wollte ich mal nachfragen ob der Punkt in

Vergessenheit geraten ist, oder als erledigt betrachtet wird (Bin ich der

einzige ohne Win XP / 2000)?

Link to comment
Guest Oliver

Zumindest der einzige Tester. ;)

 

Hast du das schon versucht:

 

Starte RegEdit und suche nach:

 

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon.

 

Nun mache einen Doppelklick darauf und füge einen neuen Eintrag „PowerdownAfterShutdown“ ein und setze den Wert auf 1.

 

Bis dann, Oliver

Link to comment

Bei mir (WinXP) gibt es den gleichen Registry-Schlüssel noch mal unter HKEY_CURRENT_USER:

 

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon

 

Vielleicht sollte man da noch mal nachhaken... unter HKEY_LOCAL_MACHINE ist der Wert für PowerdownAfterShutdown bei mir übrigens als Reg_SZ eingetragen, aber das ist wie gesagt XP...

Link to comment

bei win98 existiert der Registrypfad zu winlogon nicht und wird meines wissens nach auch nicht abgefragt.

Hast du schon das Shutdown-Supplement für win98 von Microsoft installiert?? Das behebt einige Probleme mit dem Herunterfahren.

Es kann auch am schnellen Herunterfahren liegen. Ändere mal in der Registry unter

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Shutdown

den schlüssel FastReboot von 1 auf 0

Link to comment

Danke erst mal für die Hilfe.

 

Shutdown-Supplement installiert,

FastReboot auf 0

Ergebnis wie gehabt.

 

Ich dachte auch das die Lösung vielleicht weiter vorne schon mal erwähnt wurde.

Borlox schrieb:

So, habe mal ein bischen gesucht! Und habe mir mal den Sleeptimer genommen und den dort vorhandenen Shutdown-Befehl durch den folgenden ersetzt!

exitwindowsex(EWX_SHUTDOWN,0);

Und siehe da, es klappt! Vielleicht hilft euch das ja weiter!

Zusätzlich scheint es mir nicht generell an Win98 zu liegen, weil TmpgEnc schaffts

nach einem Batchjob locker die Kiste herunterzufahren.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...