ja konnte ich, also erschließe ich darauß:
Bilder so anordnen das oben die letzte ebene kommt und zum schluss das Hintergrundbild, da autoit ja auch des Skript von oben nach unten list
Danke
ja konnte ich, also erschließe ich darauß:
Bilder so anordnen das oben die letzte ebene kommt und zum schluss das Hintergrundbild, da autoit ja auch des Skript von oben nach unten list
Danke
xD Das ist s doof das klappt auch noch,
nur versteh ich nicht warum das so
GUICtrlCreatePic("C:\OSPk\2.gif", 2, 104, 16, 15)
GUICtrlCreatePic("C:\OSPk\1.GIF", 0, 0, 273, 219, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
funktioniert und nicht andersherum?!
Danke erstmal für Deine schnelle hilfe funkey
Problem Nummer1 = GUICtrlCreatePic
Ich bekomme in meiner Gui die "2.gif" einfach nicht gesehen.
"1.gif" Soll als Hintergrundbild Dienen
Was mache ich Falsch?
[autoit]GUICtrlCreatePic("C:\OSPk\1.GIF", 0, 0, 273, 219, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
GUICtrlCreatePic("C:\OSPk\2.gif", 2, 104, 16, 15)
Hier habe ich mich mal an einem kleinen Skript Probiert, damit Kinder nicht so Leicht zugang haben.
Wer weiß wen es Intressiert, hätte vielleicht auch in die Kategorie "Sinnlos" gepasst
#include <WindowsConstants.au3>
#include <WinAPI.au3>
#include <GuiConstantsEx.au3>
#include <Misc.au3>
Opt("TrayIconHide", 1)
Opt("WinTitleMatchMode", 2)
OnAutoItExitRegister("_Exit")
$user_dll = DllOpen("user32.dll")
$pStub_KeyProc = DllCallbackRegister("_KeyProc", "int", "int;ptr;ptr")
$hHookKeyboard = _WinAPI_SetWindowsHookEx($WH_KEYBOARD_LL, DllCallbackGetPtr($pStub_KeyProc), _WinAPI_GetModuleHandle(0), 0)
_Main()
Func _Main()
[/autoit][autoit][/autoit][autoit]Local $GUI, $coords[4]
[/autoit][autoit][/autoit][autoit]$GUI = GUICreate("Gefängnis", 160, 70,"","")
GUICtrlCreateLabel("Deine Tastatur ist Gesperrt",2,"")
GUICtrlCreateLabel("und Deine Maus bleibt",2,15)
GUICtrlCreateLabel("in Diesem 'Gefängnis' bis Du",2,30)
GUICtrlCreateLabel("Dieses Fenster wieder Schließt!",2,45)
GUISetState(@SW_SHOW)
While 1
$coords = WinGetPos($GUI)
_MouseTrap($coords[0], $coords[1], $coords[0] + $coords[2], $coords[1] + $coords[3])
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case Else
EndSwitch
if not winactive ("Gefängnis") Then
winactivate ("Gefängnis")
if not WinExists ("Gefängnis") Then
Exit
EndIf
EndIf
WEnd
_MouseTrap()
Exit
EndFunc
While Sleep(100)
WEnd
Func _KeyProc($nCode, $wParam, $lParam)
If $nCode < 0 Then Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
Local $tKEYHOOKS = DllStructCreate($tagKBDLLHOOKSTRUCT, $lParam)
Local $vkCode = DllStructGetData($tKEYHOOKS, "vkCode")
If ($wParam = $WM_KEYDOWN) And $vkCode <> 0x77 Then
DllCall($user_dll, 'int', 'keybd_event', 'int', 0x0, 'int', 0, 'int', 0, 'ptr', 0)
Return -1
EndIf
Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
EndFunc
so ich Habe mein Skript jetzt so erweitert, das ich Das Skript von "K4z" mit meinem Vorhaben Kombiniert habe, wobei folgendes herausgekommen ist:
Ein Fenster, welches Die Maus Geschachtelt hält und beim Minimieren wieder Aktiviert wird
wärenddessen ist die Tastatur gesperrt
Beim Beenden des Fensters mittels [X] wird die Maus und die Tastatur Freigegeben.
Funktioniert zumindest bei mir so, wie ich es mir Vorstellte
#include <WindowsConstants.au3>
#include <WinAPI.au3>
#include <GuiConstantsEx.au3>
#include <Misc.au3>
Opt("TrayIconHide", 1)
Opt("WinTitleMatchMode", 2)
OnAutoItExitRegister("_Exit")
$user_dll = DllOpen("user32.dll")
$pStub_KeyProc = DllCallbackRegister("_KeyProc", "int", "int;ptr;ptr")
$hHookKeyboard = _WinAPI_SetWindowsHookEx($WH_KEYBOARD_LL, DllCallbackGetPtr($pStub_KeyProc), _WinAPI_GetModuleHandle(0), 0)
_Main()
Func _Main()
[/autoit][autoit][/autoit][autoit]Local $GUI, $coords[4]
[/autoit][autoit][/autoit][autoit]$GUI = GUICreate("Gefängnis", 160, 70,"","")
GUICtrlCreateLabel("Deine Tastatur ist Gesperrt",2,"")
GUICtrlCreateLabel("und Deine Maus bleibt",2,15)
GUICtrlCreateLabel("in Diesem 'Gefängnis' bis Du",2,30)
GUICtrlCreateLabel("Dieses Fenster wieder Schließt!",2,45)
GUISetState(@SW_SHOW)
While 1
$coords = WinGetPos($GUI)
_MouseTrap($coords[0], $coords[1], $coords[0] + $coords[2], $coords[1] + $coords[3])
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case Else
EndSwitch
if not winactive ("Gefängnis") Then
winactivate ("Gefängnis")
if not WinExists ("Gefängnis") Then
Exit
EndIf
EndIf
WEnd
_MouseTrap()
Exit
EndFunc ;==>_Main
While Sleep(100)
WEnd
Func _KeyProc($nCode, $wParam, $lParam)
If $nCode < 0 Then Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
Local $tKEYHOOKS = DllStructCreate($tagKBDLLHOOKSTRUCT, $lParam)
Local $vkCode = DllStructGetData($tKEYHOOKS, "vkCode")
If ($wParam = $WM_KEYDOWN) And $vkCode <> 0x77 Then ; // 0x77 -> F8
DllCall($user_dll, 'int', 'keybd_event', 'int', 0x0, 'int', 0, 'int', 0, 'ptr', 0)
Return -1
EndIf
Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
EndFunc
Super, genau sowas suchte ich,
vielen Dank, Okay, darauf wär ich nie selber gekommen, so Versiert bin ich dann doch noch nicht
Nein warum sollte es Ein FunVirus sein?
es steht doch in Dem Fenster geschrieben was passiert ist.
Ich bin mit den Forum regeln vertraut und habe soetwas nicht im Sinn.
ich möchte lediglich für eine Freundin ein möglichst einfaches Skript schreiben,
Das Ihre kleine Tochter nicht auf der Tastatur und der Maus rumklimpert und so
Ihre Tabs oder sonstige Sachen Schließt, wenn Sie auf dem WC oder sonstiges ist.
wie schon erwähnt, würde ich es ja mit Blockimput machen, um mir "DevCon" zu Sparen
Aber wie mache ich eine Tasteneingabe Ihrer Wahl, wenn denn Die Eingabegeräte gesperrt sind?
ich möchte aber auch keine Zeitliche festlegung wie z.b.
Blockinput(1)
sleep 5000 ;zum beispiel
Blockinput (0)
denn wer weiß schon vorher, wie lange er auf Dem Örtchen sitzt?!
Hallo, ich habe Hier eine Idee/Skript angefangen, welche, den PC etwas Kindersicher machen soll, hinsichtlich der EIngabegeräte
Ich habe das script in Kombination mit "DevCon" geschrieben, weil ich nicht weiß, wie ich nur mit Hilfe von AutoIt
die Tastatur blockieren soll.
Ausführung:
Beim Ausführen des Skriptes, wird die Maus in einem Fenster gefangen und mithilfe von DevCon die Tastatur deaktiviert.
beim schließen [X] des Fensters, wird sie wieder Aktiviert und die Maus Frei gelassen
Probleme:
1. Ich möchte verhindern, das man das Fenster in die Startleiste Ablegen kann
2...und ja ich weiß das es mit Blockinput viel einfacher gehen würde und würde es gerne auch lieber so umschreiben
Fragen:
zu 1 wenn ich es bei Diesem Skript belasse, wie kann ich Verhindern, das man das Fenster minimieren kann?
zu 2 wie kann ich Blockimput(1) nutzen ohne eine bestimmte zeit vorgeben zu müssen.
ich würde gerne mittels Tastenkompination oder 2x Rechte Maustaste
drücken das Skript beenden, aber wie, wenn die EIngabegeräte blockiert
sind?
gibt es einen Befehl, der NUR die Tastendrücke blockiert?
#include <GuiConstantsEx.au3>
#include <Misc.au3>
Opt("TrayIconHide", 1)
Opt("WinTitleMatchMode", 2)
Opt("MustDeclareVars", 1)
_Main()
[/autoit][autoit][/autoit][autoit]Func _Main()
[/autoit][autoit][/autoit][autoit]Local $GUI, $coords[4]
[/autoit][autoit][/autoit][autoit]$GUI = GUICreate("Gefängnis", 160, 70,"","")
GUICtrlCreateLabel("Deine Tastatur ist Gesperrt",2,"")
GUICtrlCreateLabel("und Deine Maus bleibt",2,15)
GUICtrlCreateLabel("in Diesem 'Gefängnis' bis Du",2,30)
GUICtrlCreateLabel("Dieses Fenster wieder Schließt!",2,45)
GUISetState(@SW_SHOW)
;Devcon-Ordner Ins sys32 packen, Version überprüfen 32 oder 64!
;*mein Persönlicher Wunschordner für das Programm
run ("cmd")
WinActivate("C:\Windows\system32\cmd.exe")
Sleep(500)
Send ("cd C:\Windows\system32\devcon\i386")
send ("{Enter}")
send ("devcon.exe")
send ("{Enter}")
send ("devcon disable HID\VID_046D*");ID der Tastaur eintragen
send ("{Enter}")
send ("exit")
send ("{Enter}")
While 1
$coords = WinGetPos($GUI)
_MouseTrap($coords[0], $coords[1], $coords[0] + $coords[2], $coords[1] + $coords[3])
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
run ("cmd")
WinActivate("C:\Windows\system32\cmd.exe")
Sleep(500)
Send ("cd C:\Windows\system32\devcon\i386")
send ("{Enter}")
send ("devcon.exe")
send ("{Enter}")
send ("devcon enable HID\VID_046D*");ID der Tastaur eintragen
send ("{Enter}")
send ("exit")
send ("{Enter}")
ExitLoop
Case Else
;;;
EndSwitch
WEnd
_MouseTrap()
Exit
EndFunc ;==>_Main
Ich habe auch keine Alternativen Plan aber vielleicht eine Idee.
Da es sich um einen Laptop handelt, und das nicht Direkt die tastatur ist, hängt das vielleicht auch nicht mit der zusammen sondern
mit dem Monitor, da die tasten ja auch an der oberen Klappe befestigt sind.
Wenn man in die Monitoreinstellungen geht, findet man vielleicht Infos. ?!?
hab jetzt einfach wischen lampe und Port einen Hub gesetzt, den ich jetzt mittels DevCon, deaktivieren kann.
da werd ich mir jetzt versuchen, ewas mit Autoit drumrum zu schreiben.
danke für Eure mühe
also ich habe Dein Szenario wie DU es Beschrieben hast:
"wenn ich send ("{VOLUME_UP 26}") und mit das dann als exe baue und die per cmd aufrufe gibt er mir einfach nur (VOLUME_UP 26) aus"
nachgestellt und bei mir Funktioniert es.
Mach es Dir doch nicht so schwer. unter windows Xp funktioniert der Sendebefehl "Volume up" ganz gut.
also "
[autoit]send ("{VOLUME_UP 26}")
[/autoit](Die "26" Steht für 26x Drücken - Sprich von ganz Leise auf ganz Laut.
Das Script als Exe nur noch in den Autostart-Ordner oder schieben;-)
klappt zumindest bei mir
in "DevCon" habe ich mich jetzt hineingelsen und den Befehl:
Devcon disable USB\VID_0BDA* und
Devcon enable USB\VID_0BDA* herauslesen können. Das "VID_0BDA*" umschreibt die USB-ID des Ports und das * kürzt sie ab.
soweit sogut, nur finde ich die ID des Portes an der die Lampe steckt nicht heraus.
aber selbst wenn ich alle Ports Deaktiviere mit "Devcon disable USB*" bekomme ich bei einigen das ergebnis "Disabled on Reboot", wobei es bei meiner Maus sofort Funktioniert.
mein Ziel war es aber ohne Neustart ein ausschalten zu Bewirken.
Wär schön wenn mir jemand weiterhelfen kann auch im Bezug auf die Devcon-Console
Okay, soweit verstanden.
gibt es auch mit AutoIT ein Befehl, mit dem man einen USB-Port so "ausschalten" kann das die lampe nicht mehr Leuchtet, wenn ich den Knopf drücke?
mein problem ist, ich weiß nicht ob das bei dieser lampe möglich ist, da sie über einen Manuellen Knopf betrieben wird.
Da hatte ich mir den Gedanken gemacht "wie könnte man diese ausschalten ohne den Knopf zu betätigen?!"
da kam ich auf den Gedanken mit dem Port deaktivieren.
könntest Du mir hilfestellung geben wie ich das über einen Server anstellen kann?
wenn dies geht, brauch ichs ja nicht Extra noch zusätzlich Deaktivieren;-)
Hallo,
ich habe eine kleine Idee, da ich eine Lampe an meinem PC über USB angeschlossen habe,
wollte ich Fragen ob es irgendwie möglich gibt zu einem belibigen Zeitpunkt diesen Port aus- und anzuschalten ohne direkt an Diesem Rechner zu sein?
Wenn ich in den Gerätemanager (Windows XP) diesen Port am PC Deaktiviere möchte der immer einen Neustart machen um die Änderung zu übernehmen.
ist das auch nötig, wenn man das an- und ausschalten über, z.b. eine GUI regeln könnte?
dankeschön ging echt recht fix
hatte nicht gleich mit ner Komplettlösung gerechnet.
Hallo, ich habe eine Idee und möchte sie Irgendwie mit "Autoit" umsetzen.
Da man beim "Windows Live Messenger" Hinter den Kontaktnamen die dazugehörige Email Adresse stehen hat
und diese nicht mit normalen mitteln Ausblenden oder verschleiern kann, wollte ich Dies aus privaten Gründen bei allen Kontakten über "AutoIt" tun.
[Blockierte Grafik: http://img3.fotos-hochladen.net/uploads/msnfu3rkaw1q7.jpg]
(Laut AutoIT v3 Windows Info:)
>>>> Window <<<<
Title: Rico <piet@hotmail.de>
Class: IMWindowClass
Position: 145, 145
Size: 692, 678
Style: 0x16CF0000
ExStyle: 0x00000100
Handle: 0x00020874
>>>> Control <<<<
Class: DirectUIHWND
Instance: 1
ClassnameNN: DirectUIHWND1
Name:
Advanced (Class): [CLASS:DirectUIHWND; INSTANCE:1]
ID:
Text:
Position: 0, 0
Size: 684, 28
ControlClick Coords: 412, 14
Style: 0x56000000
ExStyle: 0x00010000
Handle: 0x00010878
Frage:
Gibt es einen Befehl der mir das ausblenden oder Verschleiern dieser Information (E-Mail Adresse)
ermöglicht sobald ich ein Kontaktfenster öffne?
wär schön wenn Ihr mir Ratschläge oder Tipps geben könntet
Danke
Danke Dir habe es mir zwar noch etwas geändert aber der Funke ist übergesprungen;-)
Anstatt zu Handeln, wenn datein nicht auf meinem PC vorhanden ist,
war ich zu sehr versteift darauf, zu warten bis jene auf dem Server liegen
Sinn: ein Kupel hat einen Server, und ich warte auf 2 Bestimmte Dateien, die ich ausführen möchte, da er mir aber nicht mitteilen kann, wann genau die Dateien oben sind,
da dies über einen Dritten läuft habe ich mir Gedacht, mach ich doch sowas gleich mal zum Üben für AutoIt.