Archiv verlassen und diese Seite im Standarddesign anzeigen : Mal ne Frage zum Starten von MS-DOS Befehlen .
Also wie ist der Befehl zum starten von MS-DOS Befehlen wenn man z.B. auf einen Button klickt das sich dann die Maus deaktiviert oder so ? Den Code zum deaktivieren der Maus kenn ich aber ich weiß nicht wie man das dann starten lassen kann ! ;-)
MFG RiPpErO
Felix Kaiser
12.02.2002, 20:40
Was willst du mit MS-DOS Befehlen in Delphi ?
ich will das wenn man auf den Button klickt sich z.B. die maus deaktiviert ! ;-)
MFG RiPpErO
Felix Kaiser
12.02.2002, 22:26
In WINDOWS kann man nicht per MS-DOS Befehl die Maus deaktivieren ;)
Hehe, absolut korrekt, Guru.. Ripper, wie würdest du es denn ohne Delphi machen? wahrscheinlich suchst du ShellExecute.. gibts schon paar Beitrage zu hier.. such nach ShellExecute und du solltest was finden :)
Ups ich meinte : Wie kann man die Rundll32 Befehle über Delphi starten ? Also wenn man auf die Schaltfläche klickt soll dann z.B. die Maus deaktiviert werden ! Ich kenn den Rundll32 Befehl dafür . Ich müsste nur wissen wie man das dann mit Delphi anstellt ! ;-)
MFG RiPpErO
Felix Kaiser
13.02.2002, 17:48
ShellExecute(0,´open´,´rundll32´,´Parameter für rundll32´,nil,SW_SHOW);
Da wo Parameter ist setzt du halt deine Parameter für rundll32 zum Deaktivieren der Maus ein. Mich würde mal interessieren in wie weit das funktionieren soll mit dem Deaktivieren und in wie weit es von welchem Windows unterstützt wird. Kannst dann gerne bitte den RUNDLL32 Befehl hier posten!
Danke ! Ich weiß nicht genau bei welchen Windows Versionen das funzt . Probiers aus *gg* :
C:\windows\rundll32.exe user,disableoemlayer --> Systemabsturz
C:\windows\rundll32.exe keyboard,disable --> schaltet die Tastatur bis
zum nächsten Neustart aus
C:\windows\rundll32.exe mouse,disable --> schaltet die Maus bis zum
nächsten Neustart aus
C:\windows\rundll32.exe user,exitwindows --> Windows beenden
C:\windows\rundll32.exe user,exitwindowsexec --> Windows neustarten
Ein paar Rundll32 Befehle . Kann man z.B. einen dieser Befehle bei als Verknüpfung auf dem Desktop machen . So dass wenn man auf den Icon klickt z.B. der PC neustartet ! ;-)
MFG RiPpErO
Irgendwie funzt der Code nicht ! Woran könnte das liegen ?????? ;-)
MFG RiPpErO
Hmmm..welches OS?
Poste mal den Code :)
Cya
Steht doch alles schon hier aber na gut : ShellExecute(0,´open´,´rundll32´,´C:\windows\rundll32.exe mouse,disable ´,nil,SW_SHOW) ;-)
MFG RiPpErO
Felix Kaiser
14.02.2002, 18:52
Also der Vorschlag mit ExitWindows sagt mir sofort, dass es unter NT Systemen, WinME und/oder Win2000 nicht funktionieren muss.
Probiers mal so:
ShellExecute(0,´open´,´rundll32´,´mouse,disable´,nil,SW_SHOW);
Wenn das nicht klappt funktioniert der Aufruf nicht oder die Funktion für Maus deaktivieren wird nicht unterstützt.
Der funzt auch nciht ! immer das mit ShellExecute !!! ShellExecute(0,´open´,´rundll32´,´mouse,disable´,nil,SW_SHOW); ;-)
MFG RiPpErO
Felix Kaiser
14.02.2002, 22:52
Dann funktioniert das Mausdeaktivieren wohl anders oder wird vom Betriebssystem nicht unterstützt. Such doch nochmal bei Google nach einer weiteren möglichen Lösung oder mach ein neues Thema auf :)
wie man die mouse deaktivert weiss ich nicht aber damit kann man sie unsichtbar machen:
ShowCursor (false);
zum reaktivieren mache einfach
ShowCursor (true);
ciao...
Ja ok aber das iss nicht das gleiche naja trotzdem danke für den Tip !!! Ich guck nochmal ! ;-)
MFG RiPpErO
Felix Kaiser
15.02.2002, 14:23
Mit Cursorclipping kannst du vielleicht etwas anfangen. Kommt aber auf die Art der Verwendung an. Ich habs mal an einem Formular getestet: Maximiert + StayOnTop. Hatte 2 Buttons in dem. Der eine löst das aus:
var
r: TRect;
begin
r.Left:= Screen.Width;
r.Top:= Screen.Height;
r.Right:= Screen.Width+10;
r.Bottom:= Screen.Height+10;
ClipCursor(@r);
ShowCursor(False);
end;
Und der andere das:
begin
ClipCursor(nil);
ShowCursor(True);
end;
Hab ich nun den einen geklickt war Mauszeiger weg und Maus reagierte nicht mehr. Habe ich per Tastatur nun den anderen aufgerufen, so war alles wieder da.
Also bei mir funzt nur das nicht sichtbar machen und dann anschließend wieder sichtbar machen ! Bei den anderen Befehlen bekommt er immer Probleme und akzeptiert sie nicht ! ;-)
MFG RiPpErO
kann es sein dass du winnt hast und nicht als admin eingeloggt bist
Nein ich hab Win 98 . ;-)
MFG RiPpErO
ShellExecute(0,´open´,´rundll32´,´C:\windows\rundll32.exe mouse,disable ´,nil,SW_SHOW) ;-)
hast du gepostest
ersetz das mit
ShellExecute(0,´open´,´rundll32´,´mouse, disable ´,nil,SW_SHOW);
weil als parameter darfst du nicht die exe angeben ;)
aber wirklich super versteckt hast du den fehler mein kompliment...
Hmmmmmmmm so leid es mir tut das funzt auch nicht . Auch zu verflickst !!! Folgenes akzeptiert er nicht : ShellExecute(0,´open´,´rundll32´,´mouse, disable ´,nil,SW_SHOW); ! ;-)
MFG RiPpErO
Sonst wüsste ich noch gern wie man das Programm so macht das sich immer mehr Pop-Ups öffnen . *gg* . ;-)
MFG RiPpErO
sorry aber viren zu schreiben helf ich dir nicht
Viren ????????? Man kann das doch bestimmen wieviele Pop-Ups sich öffnen sollen oder nicht ? Außerdem iss es für meinen Freund . Keine Sorge ich schreib schon keine Viren ich mach mich nicht starfbar ! ;-)
MFG RiPpErO
das sag ich auch immer das ist ja das problem ;))
also wo ist das problem, lege ne 2. Form an
und mach
var
x : TForm2;
begin
while true do
begin
x := TForm2.Create (Application);
x.Show;
end;
end;
oder so irgendwie, ich schreibe in letzter zeit fast nur mehr c++ und habe etwas probs mit dem pascal syntax
auch aber noch besser ist wenn du ein prog mit einem windows machst und dann ewig ueber ShellExecute
das eigene prog ausfuehrst (Application.ExeName).
ACHTUNG das killt jeden windows!
mit etwas phantasie laesst sich da noch mehr boeses anstellen aber denk nur selbst auch etwas nach...
mom mom mom ... soweit ich mich erinnern kann, muss es so ähnlich heißen wie
ShellExecute(0,´open´,´rundll32´,´shell32.dll, MouseDisable ´,nil,SW_SHOW);
UND IMMER SCHÖN DARAUF ACHTEN, DASS DER GANZE KRAM CASE-SENSITVE IST!!! weil sonst kann man sich den funktionsaufruf sonstwohin schieben ;)
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.