Toon posts:

[java] programma moet starten als windows afsluit

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een programma gemaakt (in java) dat nakijkt of de modem is uitgeschakeld, zo kan ik voorkomen dat die de hele nacht blijft opstaan. Nu heb ik nog een probleempje: hoe laat ik dat programma automatisch opstarten als windows wordt afgesloten?

bedankt

  • zneek
  • Registratie: Augustus 2001
  • Laatst online: 08-02-2025
http://msdn.microsoft.com -> Als het kan, staat het daar. Ik weet het zo niet, en anders moet ik gaan zoeken op MSDN, en aangezien het zondag is ... :)

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Als je een interne modem hebt dan sluit die toch automatisch af als je pc uitgaat?

en voor een externe weet ik het niet, maar ik neem aan dat dit ook wel opgelost is, omdat er zoveel mensen zijn geweest die dit ook hebben gebruikt.

  • Rashann
  • Registratie: Maart 2000
  • Laatst online: 24-08 07:20

Rashann

Zoek de hond...

Alarmnummer schreef op 11 augustus 2002 @ 12:45:
Als je een interne modem hebt dan sluit die toch automatisch af als je pc uitgaat?

en voor een externe weet ik het niet, maar ik neem aan dat dit ook wel opgelost is, omdat er zoveel mensen zijn geweest die dit ook hebben gebruikt.
[Oops]

[ Voor 0% gewijzigd door Rashann op 11-08-2002 14:09 . Reden: Ik moet leren lezen! :P ]

If nothing is written below, I was the last to reply...


  • Potatoman
  • Registratie: September 2000
  • Laatst online: 00:48

Potatoman

koniwa

Zomaar ff een ideetje: als windows je programma probeert af te sluiten (als je je pc afsluit dus) kan je waarschijnlijk bij een windowclosing method wel instellen dat ie wat moet doen. Ik weet alleen niet of windows dan nog doorgaat met afsluiten.

The cyclographing developer


Verwijderd

Topicstarter
ga ik eens probere, bedankt

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 31-03 16:47

CyberSnooP

^^^^ schrijft --->

Er bestaat ongetwijfeld freeware waarmee je dit kunt bereiken (zie ook download.com).

Windows stuurt alle processen een message zodra het systeem wordt afgesloten. Je software kan daar op reageren en zo het afsluiten cancelen. Ik neem aan dat Java een of andere event laat optreden en in die event-handler kun jij je code plaatsen. Je moet dan je programma wel automatisch laten opstarten en op de achtergrond laten draaien.

Er bestaat geen "Afsluiten" groep (ook niet in het register), windows bied geen standaard voorziening hiervoor.. dus MSDN zal niet helpen.

|_____vakje______|


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Waarschijnlijk kan je gewoon ergens in een key van het register wel instellen dat hij wat moet doen bij het afsluiten dus ik zou inderdaad even zoeken op msdn.microsoft.com

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 31-03 16:47

CyberSnooP

^^^^ schrijft --->

rwb schreef op 11 augustus 2002 @ 14:40:
Waarschijnlijk kan je gewoon ergens in een key van het register wel instellen dat hij wat moet doen bij het afsluiten dus ik zou inderdaad even zoeken op msdn.microsoft.com
CyberSnooP schreef op 11 augustus 2002 @ 14:34:
Er bestaat geen "Afsluiten" groep (ook niet in het register), windows bied geen standaard voorziening hiervoor.. dus MSDN zal niet helpen.
Mezelf quoten heerscht :)

|_____vakje______|


  • ^Mo^
  • Registratie: Januari 2001
  • Laatst online: 04-11-2025
Misschien kan je hier wat mee:
WM_QUERYENDSESSION
The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls the ExitWindows function. If any application returns zero, the session is not ended. The system stops sending WM_QUERYENDSESSION messages as soon as one application returns zero.

After processing this message, the system sends the WM_ENDSESSION message with the wParam parameter set to the results of the WM_QUERYENDSESSION message.

WM_QUERYENDSESSION
nSource = (UINT) wParam; // source of end-session request
fLogOff = lParam // logoff flag

Parameters
nSource
Reserved for future use.
fLogOff
Value of lParam. Indicates whether the user is logging off or shutting down the system. Supported values include: ENDSESSION_LOGOFF.
Return Values
If an application can terminate conveniently, it should return TRUE; otherwise, it should return FALSE.

Remarks
By default, the DefWindowProc function returns TRUE for this message.

Windows NT: When an application returns TRUE for this message, it receives the WM_ENDSESSION message and it is terminated, regardless of how the other applications respond to the WM_QUERYENDSESSION message.

Windows 95: After all applications return TRUE for this message, they receive the WM_ENDSESSION and they are terminated.
'k heb alleen geen idee of je met Java deze message kan opvangen.... :?

"There are 10 kinds of people in the world, those who understand binary and those who don't" | Werkbak specs


Verwijderd

Uhm.. wanneer windows sluit worden toch alle processen afgesloten..? Dus ook het java programmatje wat jij hebt gemaakt. Als je een close van je eigen programma kunt afvangen dan heb je precies wat je wilt.. hoef je ook niet te pielen met windows zelf.

edit:
uhh... als je het ding wilt starten bij het opstarten van windows...

  • Bobco
  • Registratie: Januari 2001
  • Laatst online: 30-10-2023

Bobco

I used to dream about Verona.

Heb je het al geprobeerd met een ShutdownHook?. In de class Runtime zit een method addShutdownHook. Die krijgt als argument een Thread mee die door de JVm wordt gestart op het moment dat de JVM van buiten wordt gestopt.

Is erg makkelijk te gebruiken:

code:
1
2
3
4
5
6
public class MyHook extends Thread {
   
   public void run() {
   // doe hier de dingen die je wilt doen
   }
}


En deze hook er aan hangen:

code:
1
2
   Runtime runTime = Runtime.getRuntime();
   runTime.addShutdownHook(new MyHook());

With the light in our eyes, it's hard to see.


Verwijderd

Topicstarter
bedankt!!

  • Dash2in1
  • Registratie: November 2001
  • Laatst online: 31-08 22:49
damn, dat lijkt me irritant om te testen als het niet werkt! :)

  • MisterData
  • Registratie: September 2001
  • Laatst online: 26-08 21:52
Anders kun je die message wel afvangen met een stukje native code :) Via JNI dus
Pagina: 1