myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

C# Computer herunterfahren

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 02.12.09, 18:25   #1
Darren
Fraek
 
Benutzerbild von Darren
 
Registriert seit: Sep 2009
Beiträge: 107
Bedankt: 2
Darren ist noch neu hier! | 0 Respekt Punkte
Standard C# Computer herunterfahren

weiß wemand von euch den code um den computer herunter zu fahren

einen code mit dem man die exe datai nicht mehr schließen kan (auf x drücken) nur durch eine passwort eingabe

und eine timer( noch 10,9,8........)

dake
Darren ist offline   Mit Zitat antworten
Ungelesen 02.12.09, 20:17   #2
manta656
Profi
 
Benutzerbild von manta656
 
Registriert seit: Jan 2009
Beiträge: 1.435
Bedankt: 1.504
manta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punktemanta656 leckt gerne myGully Deckel in der Kanalisation! | 2541547 Respekt Punkte
Standard

also ein Timer , wirst du sehr leicht hinbekommen ... Dass man das Programm nicht schliessen kann , wird allerdings schwieriger , da ich nicht genau weiss , wie man es vor den Prozessen im Taskmanager versteckt Aber auf das X klicken , geht auch ganz leicht mit C# . Mit etwas erfahrung , kannst du das alleine hinbekommen
das ist eine möglichkeit zum hertunterfahren

hier musst du noch System.Diagnostics importieren also über den using befehl.
Code:
System.Diagnostics.Process.Start("cmd.exe /k shutdown -f -s");
oder

Code:
using System;
using System.Runtime.InteropServices;

namespace ShutDown
{
    class XPShutDown
    {
 [StructLayout(LayoutKind.Sequential, Pack=1)]
     internal struct TokPriv1Luid
 {
     public int Count;
     public long Luid;
     public int Attr;
 }

 [DllImport("kernel32.dll", ExactSpelling=true)]
 internal static extern IntPtr GetCurrentProcess();

 [DllImport("advapi32.dll", ExactSpelling=true, SetLastError=true)]
 internal static extern bool OpenProcessToken(IntPtr h, int acc, ref IntPtr phtok);

 [DllImport("advapi32.dll", SetLastError=true)]
 internal static extern bool LookupPrivilegeValue(string host, string name, ref long pluid );

 [DllImport("advapi32.dll", ExactSpelling=true, SetLastError=true)]
 internal static extern bool AdjustTokenPrivileges(IntPtr htok, bool disall, ref TokPriv1Luid newst, int len, IntPtr prev,IntPtr relen);

 [DllImport("user32.dll", ExactSpelling=true, SetLastError=true)]
 internal static extern bool ExitWindowsEx(int flg, int rea);

 internal const int SE_PRIVILEGE_ENABLED = 0x00000002;
 internal const int TOKEN_QUERY = 0x00000008;
 internal const int TOKEN_ADJUST_PRIVILEGES = 0x00000020;
 internal const string SE_SHUTDOWN_NAME = "SeShutdownPrivilege";
 internal const int EWX_LOGOFF = 0x00000000;
 internal const int EWX_SHUTDOWN = 0x00000001;
 internal const int EWX_REBOOT = 0x00000002;
 internal const int EWX_FORCE = 0x00000004;
 internal const int EWX_POWEROFF = 0x00000008;
 internal const int EWX_FORCEIFHUNG = 0x00000010;

 private static void XPRebootCommand(int flg)
 {
     bool ok;
     TokPriv1Luid tp;
     IntPtr hproc = GetCurrentProcess();
     IntPtr htok = IntPtr.Zero;
     ok = OpenProcessToken( hproc, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, ref htok );
     tp.Count = 1;
     tp.Luid = 0;
     tp.Attr = SE_PRIVILEGE_ENABLED;
     ok = LookupPrivilegeValue( null, SE_SHUTDOWN_NAME, ref tp.Luid );
     ok = AdjustTokenPrivileges( htok, false, ref tp, 0, IntPtr.Zero, IntPtr.Zero );
     ok = ExitWindowsEx( flg, 0 );
 }

 static void Main()
 {
     XPRebootCommand(EWX_REBOOT + EWX_FORCE);
 }
    }
}
alles über google gefunden , der erste code , sieht mit plausiebel aus da er über die Konsole geht , der 2. könnte klappen , hab halt nicht mit C# gearbeitet ^^ also nicht so viel ^^

noch einen

Code:
using System.Runtime.InteropServices;

namespace ShutDown
{
class XPShutDown
{
[DllImport("user32.dll", ExactSpelling=true, SetLastError=true)]
internal static extern bool ExitWindowsEx(int flg, int rea);

internal const int EWX_LOGOFF = 0x00000000;
internal const int EWX_SHUTDOWN = 0x00000001;
internal const int EWX_REBOOT = 0x00000002;
internal const int EWX_FORCE = 0x00000004;
internal const int EWX_POWEROFF = 0x00000008;
internal const int EWX_FORCEIFHUNG = 0x00000010;
 ok = ExitWindowsEx( flg, 0 );
}

static void Main()
{
 ExitWindowsEx(EWX_REBOOT + EWX_FORCE, 0);
}
}
}
einer der 3 muss gehen
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
manta656 ist offline   Mit Zitat antworten
Ungelesen 02.12.09, 20:30   #3
nightmare1942
PC Doktor
 
Benutzerbild von nightmare1942
 
Registriert seit: Apr 2009
Ort: 127.0.0.1
Beiträge: 1.872
Bedankt: 901
nightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punkte
Standard

wenn du beim ersten noch "-t 60" dranhängst, fährt er sich in 60 sekunden runter!
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
"95% aller Computerprobleme befinden sich zwischen Tastatur und Stuhl"
nightmare1942 ist offline   Mit Zitat antworten
Ungelesen 02.12.09, 20:30   #4
gosha16
Banned
 
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 815
Bedankt: 640
gosha16 ist noch neu hier! | 0 Respekt Punkte
Standard

im Habo gibts ne Anleitung zum verstecken eines Prozesses. Das funktioniert auch mit C#
gosha16 ist offline   Mit Zitat antworten
Ungelesen 03.12.09, 13:58   #5
gosha16
Banned
 
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 815
Bedankt: 640
gosha16 ist noch neu hier! | 0 Respekt Punkte
Standard

shutdown exe kann ich aber deaktivieren oder nach dem start abschießen.
gosha16 ist offline   Mit Zitat antworten
Ungelesen 11.12.09, 15:26   #6
nooneonearth
Anfänger
 
Registriert seit: Jul 2009
Beiträge: 10
Bedankt: 10
nooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punktenooneonearth putzt sich die Zähne mit Knoblauch. | 2870 Respekt Punkte
Standard

Wenn du mit Visual Studio arbeitest, kannst du dir aus dem Server-Explorer den Unterknoten Servers -> COMPUTERNAME -> Management Classes -> Operating Systems -> @ (ggf. deutsch) auf bspw. eine Windows-Forms-Anwendung ziehen und dann die Methode Win32Shutdown(int, int) von der erstellten Instanz der generierten Klasse aufrufen, z.B.
Code:
operatingSystem01.Win32Shutdown(0, 0);
nooneonearth ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:19 Uhr.


Sitemap

().