Français
Forum

Erledigt: Shutdown intercepter

 

Stefan
M.
Caillet
je voudrais bien cette Code de Andreas Miethe en supplément verwenden, um pour einem "Herunterfahren Befehl"
encore quelques Dinge trop erledigen. à et pour sich kalppt cela aussi. mais si cela Erledigen quelque chose dauert, erscheint une Dialogbox. qui volontiers cette Code finissons serait. Klicke je sur démolir peux qui Code zwar sa travail erledigen, mais Windows wird pas plus automatisch finissez. je voudrais cette Code so anpassen, dass Windows zwar cela Runterfahren stillschweigend (sans cet Dialogbox) unterbricht, mais si qui Code qui notwendigen Dinge erledigt hat, cette Windows sagt, dass es maintenant tout de suite runterfahren peux.mon Code devrait alors cela Runterfahren démolir, et pour getaner travail une neuen ShutDown erzeugen, sans cependant selber wieder puis trop réagir.
malheureusement finde je im Code qui Stelle(n) pas, wohin je intervenir muss (- peux).
alors s'il te plaît je um eure Aider.
#############################
Test-Programme pour :
XProfan
#############################
Author : Andreas Miethe
août 2003
#############################
Thema : Windows-Ende intercepter
#############################
 $H windows.ph
 $H messages.ph
DEF HiWord(1) And(&(1)>>16,$FFFF)
DEF LoWord(1) And(&(1),$FFFF)
Déclarer Ende&,Button&,OldWindowProc&

Proc Speicher_Routine

    Déclarer X&
    Statt einer grenier-Routine fonctionne ici seulement un Zähler par
    ~TextOut(%hDC,0,0,"Speicher-Dummy :",16)

    Whilenot X& > 20000

        Localiser 2,0
        Imprimer X&
        Inc X&

    Endwhile

    ~TextOut(%hDC,0,100,"fertig avec Sauver :",22)
    ~TextOut(%hDC,0,150,"Taste.... :",11)
    Waitinput

ENDPROC

Proc Frage_Speichern

    Si Messagebox("Erstmal alle données Sauver ?","Windows_Ende?",36) = 7

        return 1Windows wird tout de suite finissez

    D'autre

        bevor 1 retour wird peux ici une grenier-Routine
        incorporé volonté. Windows wird seulement finissez si alles erledigt est.
        Speicher_Routine
        return 1Windows wird pour dem Sauver finissez
        return 0 Windows pas finissez

    Endif

ENDPROC

Proc WindowProc

    Paramètres Wnd&, Msg&, wParam&, lParam&

    Si Msg& = ~WM_COMMAND

        Si lParam& = Button&Contrôle abfragen

            Si HiWord(wParam&) = ~BN_CLICKEDKlick sur Button

                SendMessage(Wnd&,~WM_CLOSE,0,0)

            Endif

        Endif

    Endif

    Si Msg& = ~WM_CLOSE

        Speicher_Routine
        ~PostQuitMessage(0)Programme-Ende

    Endif

    Si Msg& = ~WM_QUERYENDSESSION

        Retour Frage_Speichern()

    Endif

    alle Messages qui pas behandelt wurden à qui Original-Procédure weiterleiten
    return ~CallWindowProc(OldWindowProc&,Wnd&, Msg&, WParam&, LParam&)

ENDPROC

set("Fastmode",1)
SetTrueColor 1
Fenêtre Style 31
Fenêtre 0,0-640,480
CLS ~GetSysColor(~COLOR_BTNFACE)
Button& = CreateButton(%hwnd,"Ende",10,50,80,24)
SendMessage(Button&,~WM_SETFONT,~GetStockObject(~DEFAULT_GUI_FONT),1)
Fenêtre-Procédure austauschen et qui Original-Procédure dans
OldWindowproc sichern
OldWindowProc& = ~SetWindowLong(%hwnd,~GWL_WNDPROC, ProcAddr(windowProc,4))

WhileNot Ende&

    WaitInput

Endwhile


merci
Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
12.08.2009  
 



je fürchte - um es kurz trop faire - cela allez pas (net).

Du könntest qui Api(s) hooken et "zurücksetzen" et ensuite selbst selbige Shutdown-Anforderung nochmals expédier - je mon mais ici sollte anders angesetzt volonté weil aussi solch Hook entweder vom OS pas erlaubt wird/volonté pourrait (z.B. UAC) bzw. ah viel blabla... si qui Code mais seulement pour un bestimmtes Windows son soll, ensuite pourrait on vlt. mais toutefois ansetzen. ca va alors z.B. seule um Win98 - ensuite est un Hook vlt. une Possibilité.

Besser wäre: si Shutdown "registriert" (avec obigen Code) ensuite tout de suite finissons - z.B. alle States _fix abspeichern et seulement beim prochain Start Deiner Anwendung ensuite réagir - z.B. avec Wiederherstellen qui fix gespeicherten States. So bliebe es sur jeden le cas "sauber" et Du müsstest aucun Kämpfe vers cela OS mener.
 
13.08.2009  
 




Stefan
M.
Caillet
le son dem Code de Andreas gibt es oui qui Possibilité par Retour = 0 aus qui Frage_Speichern Proc
cela herunterfaren abzubrechen. quoi je eh bien bräuchte ist après qui winproc wieder trop désactiver, et aus qui Tandis que Ende& schleife rauszukommen. après peux je mon Dinge erledigen et une neuen Shutdown abzusetzen. mon Problem: comment peux je pour dem Retour 0 cet Winproc wieder désactiver, dmit Windows sa messages wieder selber regelt?
Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
13.08.2009  
 



Achso, simple indem Du OldWindowProc& utilise statt procAddr et den SetWindowLong nochmals absendest.
 
13.08.2009  
 




Stefan
M.
Caillet
Sorry iF, steh sur dem Schlauch (wiedermal)
Sei so lieb et zeig mir, comment et wohin je quoi oui c'est ca im Code insérer muss.
Wär mir vraie ne grosse Aider.
merci.
Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
13.08.2009  
 



Du änderst qui WProc oui avec qui la ligne:
wobei avec cela qui vorherige procAddr oui dans oldWindowProc& landet.

et alors si Du Votre wProc nommé "WindowProc" wieder ablösen vouloir ensuite:
~SetWindowLong(%hwnd,~GWL_WNDPROC, OldWindowProc&)
womit (comment Du meintest "winproc wieder trop deaktivieren") Votre wndProc arrêt wieder raus aus dem Spiel ist.

quoi je plan pas oui c'est ca weiss ist, quand oui c'est ca Du Votre eigene wProc wieder "abschiessen" veux mais qui la ligne peux Du insérer wohin Du vouloir.
 
13.08.2009  
 




Stefan
M.
Caillet
iF, glaub es ou bien glaub es pas, mais es klappt!
je hab là nämlich ne Possibilité gebraucht, sur nem älteren Laptop de ner älteren madame, qui pas so fest im selle qui Computerwelt sitzt, données comment qui E-Mails, Adressbuch usw dans regelmässigen abstänedn sur ne Speicherkarte im PCMCIA-Slot trop sichern. cela Plénier absolu sans son zutun beim débrancher des "Lappis" (comment vous ihn liebevoll nennt) automatisch passer. Acronis ist zwar pas mal, fragt mir mais trop souvent pour, et je voulais ca so avons, dass plan aucun rückfragen, mais seulement qui Hinweis "BackUp wird erstellt - qui ordinateur schaltet sich après automatisch aus") erscheint.
eh bien peux je cet Programme fertigstellen, car dank Andreas Miethe et Dir iF funktioniert eh bien qui Windows Hook.
merci eucch vielmals.
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
13.08.2009  
 




Sato
Pinto
allô

oui, zum Glück gibt es un paire gens ici dans Xprofan den on pas missen voudrais.
Si et Andreas Miethe sommes bestimmt aussi avec cela gemeint. quelquefois soll "muss"
on Komplimente à vous écrivez.

Gruss
Pedro
 
Sato Pinto
WIN XP Home
XPROFAN 11
13.08.2009  
 



répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

4.285 Views

Untitledvor 0 min.
RudiB.04.10.2016
Stefan M. Caillet29.07.2011
Untitled27.06.2011

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie