tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
4675
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    snoopay snoopay ist offline Grünschnabel
    Registriert seit
    Feb 2004
    Beiträge
    1
    Hallo

    Ich möchte ein Programm schreiben das Windows mit einem Klick auf einen Buttom herunterfährt.

    Kann mir jemsnd sagen wie ich das machen kann?
     

  2. #2
    tomkruse tomkruse ist offline Mitglied Gold
    Registriert seit
    Jan 2004
    Ort
    Leonding
    Beiträge
    138
    Hi!

    Dazu wirst Du JNI benötigen, denn das Herunterfahren von Windows ist eine betriebssystemspezifische Sache, auf die Du aus reinem Java heraus keinen Einfluß hast.

    Aber mittels JNI kannst Du alles machen was auch ein C++ Programm darf

    Cu - Tom.
     
    Mein kleines selbstgemachtes
    Online Quiz
    freut sich über neue User, Rückmeldungen und Kritik :-)

  3. #3
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Servus!

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    
     
    import java.io.BufferedWriter;
    import java.io.FileWriter;
    import java.io.IOException;
     
    /*
     * Created on 09.02.2004
     *
     * To change the template for this generated file go to
     * Window>Preferences>Java>Code Generation>Code and Comments
     */
     
    /**
     * @author ASW
     *
     * To change the template for this generated type comment go to
     * Window>Preferences>Java>Code Generation>Code and Comments
     */
    public class Shutdown {
     
        public static void main(String[] args) {
            new Shutdown().doIt();
        }
     
        /**
         * 
         */
        private void doIt() {
            // TODO Auto-generated method stub
            FileWriter fw = null;
            BufferedWriter bw = null;
            try {
                fw = new FileWriter("c:/shutdown.vbs");
                bw = new BufferedWriter(fw);
     
                bw.write(
                    "set WshShell = CreateObject(\"WScript.Shell\")\r\nWshShell.SendKeys \"^{ESC}^{ESC}^{ESC}{UP}{ENTER}{ENTER}\"\r\n");
     
                bw.flush();
                                                                    bw.close();
     
                Runtime.getRuntime().exec(
                    "cmd /c start /min cscript c:\\shutdown.vbs");
     
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
     
        }
     
    }

    Funktioniert prima unter Windows 2000

    Gruß Tom
    Geändert von Thomas Darimont (09.02.04 um 14:54 Uhr)
     

  4. #4
    Registriert seit
    Feb 2002
    Beiträge
    475
    Was ich jetzt nicht verstehe, warum man das nicht z.B. mit

    C:\WINDOWS\system32\shutdown.exe -s -t 01
    loest? (Als Verknuefpung z.B.)
     
    Man muss die Welt nicht verstehen, man muss sich nur in ihr zurechtfinden. - Albert Einstein

  5. #5
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hi!

    ... weil das nur bei Windows XP funktioniert ...

    Gruß Tom
     

  6. #6
    Registriert seit
    Feb 2002
    Beiträge
    475
    Dann halt
    C:\WINDOWS\RUNDLL32.EXE user,ExitWindows
     
    Man muss die Welt nicht verstehen, man muss sich nur in ihr zurechtfinden. - Albert Einstein

  7. #7
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hi!

    Win 2000

    c:\winnt\SYSTEM32\RUNDLL32.EXE user,ExitWindows

    --->

    ---------------------------
    RUNDLL
    ---------------------------
    Fehler beim Laden von user

    Das angegebene Modul wurde nicht gefunden.


    ---------------------------
    OK
    ---------------------------

    Glaub mir, dass oben mit dieser Shutdown .vbs Lösung ist die einzige Lösung, die auch unter Win 2000 funktioniert ... ohne eine Fremdanwendung wie
    Shutdown.exe (siehe google) zu verwenden.

    Gruß Tom
     

  8. #8
    Registriert seit
    Feb 2002
    Beiträge
    475
    Wieder was gelernt
     
    Man muss die Welt nicht verstehen, man muss sich nur in ihr zurechtfinden. - Albert Einstein

Ähnliche Themen

  1. Windows Tasks beenden
    Von Beppo98 im Forum .NET Application und Service Design
    Antworten: 4
    Letzter Beitrag: 21.08.08, 10:53
  2. Windows task gewaltsam beenden ...
    Von liquidbeats im Forum Microsoft Windows
    Antworten: 8
    Letzter Beitrag: 19.09.07, 19:18
  3. Windows 98 per Anwendung beenden
    Von MarkusG im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 04.10.05, 10:08
  4. [Windows] Socket - Connect Funktion Beenden!
    Von lalala123 im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 20.03.05, 15:34
  5. Windows Beenden
    Von Chefprog im Forum Sonstige Sprachen
    Antworten: 3
    Letzter Beitrag: 28.06.01, 15:55