Warum stürzt das Programm bei mir immer mit dem Fehler: "WinVerstecker.au3 (240) : ==> Subscript used with non-Array variable.:
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $GUI_CHECKED, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
_StatusAndern($AktuellePosition^ ERROR" ab?
Programm stütz ab
-
- [ gelöst ]
-
Magnus -
19. Oktober 2009 um 15:02 -
Geschlossen -
Erledigt
-
-
poste mal das script
-
[autoit]
#include <ButtonConstants.au3>
[/autoit][autoit][/autoit][autoit]
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <String.au3>
#include <Array.au3>Opt("TrayAutoPause", 0)
[/autoit][autoit][/autoit][autoit]
Opt("TrayMenuMode", 1)TraySetIcon(@WindowsDir & "\system32\shell32.dll", -123)
[/autoit][autoit][/autoit][autoit]
TraySetClick(18)Local $Fenster_Status = 0, $Fenster_Name, $PfadZuSprachenINI = @ScriptDir & "\Sprachen.ini", $PfadZuEinstellungenINI = @ScriptDir & "\Einstellungen.ini"
[/autoit][autoit][/autoit][autoit]
Local $PfadZuGadgetsINI = @ScriptDir & "\Gadgets.ini", $SprachenNummer = IniRead($PfadZuEinstellungenINI, "Einstellungen", "Sprache", "1")
Dim $AusgeblendeteFenster[1]$TrayMenu_StatusAndern = TrayCreateItem(IniRead($PfadZuSprachenINI, $SprachenNummer, "TrayMenu_StatusÄndern", "Fehler!"))
[/autoit][autoit][/autoit][autoit]
$TrayMenu_AlleEinblenden = TrayCreateItem(IniRead($PfadZuSprachenINI, $SprachenNummer, "TrayMenu_AlleEinblenden", "Fehler!"))
TrayCreateItem("")
$TrayMenu_SpracheAndern = TrayCreateItem(IniRead($PfadZuSprachenINI, $SprachenNummer, "TrayMenu_SpracheÄndern", "Fehler!"))
TrayCreateItem("")
$TrayMenu_Ende = TrayCreateItem(IniRead($PfadZuSprachenINI, $SprachenNummer, "TrayMenu_Ende", "Fehler!"))HotKeySet("!{F8}", "_AlleAnzeigen")
[/autoit][autoit][/autoit][autoit]
HotKeySet("!{F9}", "_StatusAndernVonHotKey")
HotKeySet("!{F10}", "_ende")If IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0) = 0 Then
[/autoit][autoit][/autoit][autoit]
MsgBox(262160, "WinVerstecker/FönsterGömmare/WindowHider", "Sprachdatei fehlt!/Språkfilen saknas!/Language file is missing!")
Exit
EndIfIf IniRead($PfadZuEinstellungenINI, "Einstellungen", "Sprache", "") = "" Then
[/autoit][autoit][/autoit][autoit]
_SpracheWahlen()
ElseIf _StringEncrypt(0, IniRead($PfadZuEinstellungenINI, "Einstellungen", "Lizens", ""), "WinVerstecker", 2) <> "WinVerstecker" Then
_Lizensieren()
ElseIf $CMDLine[0] > 0 Then
If $CMDLine[1] = "lizens" Then
_Lizensieren()
EndIf
EndIfWhile 1
[/autoit][autoit][/autoit][autoit]
Switch TrayGetMsg()
Case $TrayMenu_Ende
_ende()
Case $TrayMenu_StatusAndern
_StatusAndern(-1, -1)
Case $TrayMenu_AlleEinblenden
_AlleAnzeigen()
Case $TrayMenu_SpracheAndern
_SpracheAndern()
EndSwitch
WEndFunc _StatusAndernVonHotKey()
[/autoit][autoit][/autoit][autoit]
_StatusAndern(-1, -1)
EndFunc ;==>_StatusAndernVonHotKeyFunc _StatusAndern($XPosition, $YPosition, $AktuellerStatus_Checkbox1 = $GUI_UNCHECKED, $AktuellerStatus_Checkbox2 = $GUI_CHECKED, $AktuellerStatus_Checkbox3 = $GUI_CHECKED, $AktuellerStatus_Checkbox4 = $GUI_UNCHECKED)
[/autoit][autoit][/autoit][autoit]
Dim $WinList = WinList()
Local $AlleFenster = "", $Anzeigen = 1If $AktuellerStatus_Checkbox1 = $GUI_UNCHECKED Then
[/autoit][autoit][/autoit][autoit]
For $Durchlauf = 1 To $WinList[0][0]
$Anzeigen = 1Switch $WinList[$Durchlauf][0]
[/autoit][autoit][/autoit][autoit]
Case "Kalender"
$Anzeigen = 0
Case "Uhr"
$Anzeigen = 0
Case "Kontakte"
$Anzeigen = 0
Case "CPU-Nutzung"
$Anzeigen = 0
Case "Währungsrechner"
$Anzeigen = 0
Case "Notizen"
$Anzeigen = 0
Case "Bildpuzzle"
$Anzeigen = 0
Case "Feedschlagzeilen"
$Anzeigen = 0
Case "Diashow"
$Anzeigen = 0
Case "Aktien"
$Anzeigen = 0
Case "Wetter"
$Anzeigen = 0
Case "Binary Clock"
$Anzeigen = 0
Case "Calculator"
$Anzeigen = 0
Case "Vista Clock Platin"
$Anzeigen = 0
Case "Google German"
$Anzeigen = 0
Case "Mousometer"
$Anzeigen = 0
Case "Multi Meter(D)"
$Anzeigen = 0
EndSwitchFor $DurchlaufGadgets = 1 To IniRead($PfadZuGadgetsINI, "Anzahl", "Anzahl", 0)
[/autoit][autoit][/autoit][autoit]
If IniRead($PfadZuGadgetsINI, "Gadgets", $DurchlaufGadgets, "DiesesFensterIstNichtVerfügbar") = $WinList[$Durchlauf][0] Then
$Anzeigen = 0
EndIf
NextIf $WinList[$Durchlauf][0] <> "Program Manager" And $WinList[$Durchlauf][0] <> "" And IsVisible($WinList[$Durchlauf][1]) And $Anzeigen = 1 And $WinList[$Durchlauf][0] <> "AppBar Bullet" And $WinList[$Durchlauf][0] <> "Windows Sidebar" And $WinList[$Durchlauf][0] <> "Start" And $WinList[$Durchlauf][0] <> "AMD:CCC-AEMCapturingWindow" And $WinList[$Durchlauf][0] <> "Main" Then
[/autoit][autoit][/autoit][autoit]
$AlleFenster = $AlleFenster & "|" & "(an): " & $WinList[$Durchlauf][0]
EndIf
Next
Else
For $Durchlauf = 1 To $WinList[0][0]
If $WinList[$Durchlauf][0] <> "Program Manager" And $WinList[$Durchlauf][0] <> "" And IsVisible($WinList[$Durchlauf][1]) And $WinList[$Durchlauf][0] <> "AppBar Bullet" And $WinList[$Durchlauf][0] <> "Windows Sidebar" And $WinList[$Durchlauf][0] <> "Start" And $WinList[$Durchlauf][0] <> "AMD:CCC-AEMCapturingWindow" And $WinList[$Durchlauf][0] <> "Main" Then
$AlleFenster = $AlleFenster & "|" & "(an): " & $WinList[$Durchlauf][0]
EndIf
Next
EndIfIf UBound($AusgeblendeteFenster) > 1 Then
[/autoit][autoit][/autoit][autoit]
For $Durchlauf In $AusgeblendeteFenster
If $Durchlauf <> "" Then
$AlleFenster = $AlleFenster & "|" & "(aus): " & $Durchlauf
EndIf
Next
EndIf$AlleFenster = StringRight($AlleFenster, StringLen($AlleFenster) - 1)
[/autoit][autoit][/autoit][autoit]$FensterManger = GUICreate(IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), 625, 406, $XPosition, $YPosition)
[/autoit][autoit][/autoit][autoit]
GUISetBkColor(0xFFFF00)
$KontextMenu = GUICtrlCreateContextMenu(-1)
$KontextMenu_Aktuallisieren = GUICtrlCreateMenuItem(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_KontextMenuAktuallisieren", "Fehler!"), $KontextMenu)$List1 = GUICtrlCreateList("", 8, 8, 609, 276, BitOR($LBS_SORT, $LBS_STANDARD, $WS_VSCROLL, $WS_BORDER))
[/autoit][autoit][/autoit][autoit]
GUICtrlSetData(-1, $AlleFenster)
GUICtrlSetFont(-1, 16, 800, 0, "Arial Black")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0x00FFFF)
$Checkbox1 = GUICtrlCreateCheckbox(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_SidebarGadgetsAnzeigen", "Fehler!"), 8, 292, 250)
GUICtrlSetFont(-1, 12, 800, 0, "Arial Black")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetState(-1, $AktuellerStatus_Checkbox1)
$Checkbox2 = GUICtrlCreateCheckbox(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_SidebarAnzeigen", "Fehler!"), 266, 292, 170)
GUICtrlSetFont(-1, 12, 800, 0, "Arial Black")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetState(-1, $AktuellerStatus_Checkbox2)
$Checkbox3 = GUICtrlCreateCheckbox(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_PfeileÜberSidebarAnzeigen", "Fehler!"), 8, 320, 280)
GUICtrlSetFont(-1, 12, 800, 0, "Arial Black")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetState(-1, $AktuellerStatus_Checkbox3)
$Checkbox4 = GUICtrlCreateCheckbox(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_GadgetsAusblenden", "Fehler!"), 290, 320, 200)
GUICtrlSetFont(-1, 12, 800, 0, "Arial Black")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetState(-1, $AktuellerStatus_Checkbox4)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_GadgetsHinzufügenTeil1", "Fehler!"), 444, 292, 176)
GUICtrlSetFont(-1, 9, 600, 0, "Arial Black")
$Button2 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_GadgetsHinzufügenTeil2", "Fehler!"), 495, 320, 125)
GUICtrlSetFont(-1, 10, 400, 0, "Arial Black")If @OSVersion <> "WIN_VISTA" Then
[/autoit][autoit][/autoit][autoit]
GUICtrlSetState($Checkbox1, $GUI_DISABLE)
GUICtrlSetState($Checkbox2, $GUI_DISABLE)
GUICtrlSetState($Checkbox3, $GUI_DISABLE)
GUICtrlSetState($Checkbox4, $GUI_DISABLE)
GUICtrlSetState($Button1, $GUI_DISABLE)
GUICtrlSetState($Button2, $GUI_DISABLE)
EndIf$Button3 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_Anzeigen", "Fehler!"), 8, 348, 183, 53, $WS_GROUP)
[/autoit][autoit][/autoit][autoit]
GUICtrlSetFont(-1, 16, 800, 0, "Arial Black")
$Button4 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_Ausblenden", "Fehler!"), 201, 348, 199, 53, $WS_GROUP)
GUICtrlSetFont(-1, 16, 800, 0, "Arial Black")
$Button5 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "FensterManager_Schließen", "Fehler!"), 470, 348, 149, 53, $WS_GROUP)
GUICtrlSetFont(-1, 16, 800, 0, "Arial Black")GUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
[/autoit][autoit][/autoit][autoit]
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
GUIDelete()
ExitLoop
Case $Button5
GUIDelete()
ExitLoop
Case $Button4
If StringLeft(GUICtrlRead($List1), 5) <> "(aus)" And GUICtrlRead($List1) <> "" Then
WinSetState(StringRight(GUICtrlRead($List1), StringLen(GUICtrlRead($List1)) - 6), "", @SW_HIDE)
_ArrayAdd($AusgeblendeteFenster, StringRight(GUICtrlRead($List1), StringLen(GUICtrlRead($List1)) - 6))WinActivate(IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"))
[/autoit][autoit][/autoit][autoit]
$AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
ExitLoop
Else
If GUICtrlRead($List1) = "" Then
MsgBox(262160, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "Fehler_KeinFensterAusgewählt", "Fehler!"))
Else
MsgBox(262208, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "Fehler_GewünschtesFensterIstAusgeblendet", "Fehler!"))
EndIf
EndIf
Case $Button3
If StringLeft(GUICtrlRead($List1), 4) <> "(an)" And GUICtrlRead($List1) <> "" Then
_Anzeigen(StringRight(GUICtrlRead($List1), StringLen(GUICtrlRead($List1)) - 7))
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
ExitLoop
Else
If GUICtrlRead($List1) = "" Then
MsgBox(262160, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "Fehler_KeinFensterAusgewählt", "Fehler!"))
Else
MsgBox(262208, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "Fehler_GewünschtesFensterNichtAusgebelendet", "Fehler!"))
EndIf
EndIf
Case $KontextMenu_Aktuallisieren
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
ExitLoop
Case $Button1
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_GadgetHinzufugen()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
ExitLoop
Case $Button2
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_GadgetHinzufugen()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3)
EndSwitchIf GUICtrlRead($Checkbox1) <> $AktuellerStatus_Checkbox1 Then
[/autoit][autoit][/autoit][autoit]
If $AktuellerStatus_Checkbox1 = $GUI_CHECKED Then
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $GUI_UNCHECKED, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
Else
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $GUI_CHECKED, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
EndIfExitLoop
[/autoit][autoit][/autoit][autoit]
EndIfIf GUICtrlRead($Checkbox2) <> $AktuellerStatus_Checkbox2 And GUICtrlRead($Checkbox2) = $GUI_UNCHECKED Then
[/autoit][autoit][/autoit][autoit]
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
WinSetState("Windows Sidebar", "", @SW_HIDE)
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $GUI_UNCHECKED, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
ElseIf GUICtrlRead($Checkbox2) <> $AktuellerStatus_Checkbox2 And GUICtrlRead($Checkbox2) = $GUI_CHECKED Then
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
WinSetState("Windows Sidebar", "", @SW_SHOW)
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $GUI_CHECKED, $AktuellerStatus_Checkbox3, $AktuellerStatus_Checkbox4)
EndIfIf GUICtrlRead($Checkbox3) <> $AktuellerStatus_Checkbox3 And GUICtrlRead($Checkbox3) = $GUI_UNCHECKED Then
[/autoit][autoit][/autoit][autoit]
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
WinSetState("AppBar Bullet", "", @SW_HIDE)
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $GUI_UNCHECKED, $AktuellerStatus_Checkbox4)
ElseIf GUICtrlRead($Checkbox3) <> $AktuellerStatus_Checkbox3 And GUICtrlRead($Checkbox3) = $GUI_CHECKED Then
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
WinSetState("AppBar Bullet", "", @SW_SHOW)
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $GUI_CHECKED, $AktuellerStatus_Checkbox4)
EndIfIf GUICtrlRead($Checkbox4) <> $AktuellerStatus_Checkbox4 And GUICtrlRead($Checkbox4) = $GUI_CHECKED Then
[/autoit][autoit][/autoit][autoit]
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
Dim $NeueWinList = WinList()For $Durchlauf = 1 To $NeueWinList[0][0]
[/autoit][autoit][/autoit][autoit]
$Anzeigen = 1Switch $NeueWinList[$Durchlauf][0]
[/autoit][autoit][/autoit][autoit]
Case "Kalender"
$Anzeigen = 0
Case "Uhr"
$Anzeigen = 0
Case "Kontakte"
$Anzeigen = 0
Case "CPU-Nutzung"
$Anzeigen = 0
Case "Währungsrechner"
$Anzeigen = 0
Case "Notizen"
$Anzeigen = 0
Case "Bildpuzzle"
$Anzeigen = 0
Case "Feedschlagzeilen"
$Anzeigen = 0
Case "Diashow"
$Anzeigen = 0
Case "Aktien"
$Anzeigen = 0
Case "Wetter"
$Anzeigen = 0
Case "Binary Clock"
$Anzeigen = 0
Case "Calculator"
$Anzeigen = 0
Case "Vista Clock Platin"
$Anzeigen = 0
Case "Google German"
$Anzeigen = 0
Case "Mousometer"
$Anzeigen = 0
Case "Multi Meter(D)"
$Anzeigen = 0
EndSwitchFor $DurchlaufGadgets = 1 To IniRead($PfadZuGadgetsINI, "Anzahl", "Anzahl", 0)
[/autoit][autoit][/autoit][autoit]
If IniRead($PfadZuGadgetsINI, "Gadgets", $DurchlaufGadgets, "DiesesFensterIstNichtVerfügbar") = $WinList[$Durchlauf][0] Then
$Anzeigen = 0
EndIf
NextIf $Anzeigen = 0 Then
[/autoit][autoit][/autoit][autoit]
WinSetState($NeueWinList[$Durchlauf][0], "", @SW_HIDE)
EndIf
Next
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $GUI_CHECKED)
ElseIf GUICtrlRead($Checkbox4) <> $AktuellerStatus_Checkbox4 And GUICtrlRead($Checkbox4) = $GUI_UNCHECKED Then
Dim $AktuellePosition = WinGetPos($FensterManger)
GUIDelete()
Dim $NeueWinList = WinList()
For $Durchlauf = 1 To $NeueWinList[0][0]
$Anzeigen = 1Switch $NeueWinList[$Durchlauf][0]
[/autoit][autoit][/autoit][autoit]
Case "Kalender"
$Anzeigen = 0
Case "Uhr"
$Anzeigen = 0
Case "Kontakte"
$Anzeigen = 0
Case "CPU-Nutzung"
$Anzeigen = 0
Case "Währungsrechner"
$Anzeigen = 0
Case "Notizen"
$Anzeigen = 0
Case "Bildpuzzle"
$Anzeigen = 0
Case "Feedschlagzeilen"
$Anzeigen = 0
Case "Diashow"
$Anzeigen = 0
Case "Aktien"
$Anzeigen = 0
Case "Wetter"
$Anzeigen = 0
Case "Binary Clock"
$Anzeigen = 0
Case "Calculator"
$Anzeigen = 0
Case "Vista Clock Platin"
$Anzeigen = 0
Case "Google German"
$Anzeigen = 0
Case "Mousometer"
$Anzeigen = 0
Case "Multi Meter(D)"
$Anzeigen = 0
EndSwitchFor $DurchlaufGadgets = 1 To IniRead($PfadZuGadgetsINI, "Anzahl", "Anzahl", 0)
[/autoit][autoit][/autoit][autoit]
If IniRead($PfadZuGadgetsINI, "Gadgets", $DurchlaufGadgets, "DiesesFensterIstNichtVerfügbar") = $WinList[$Durchlauf][0] Then
$Anzeigen = 0
EndIf
NextIf $Anzeigen = 0 Then
[/autoit][autoit][/autoit][autoit]
WinSetState($NeueWinList[$Durchlauf][0], "", @SW_SHOW)
EndIf
Next
_StatusAndern($AktuellePosition[0], $AktuellePosition[1], $AktuellerStatus_Checkbox1, $AktuellerStatus_Checkbox2, $AktuellerStatus_Checkbox3, $GUI_UNCHECKED)
EndIf
WEnd
EndFunc ;==>_StatusAndernFunc _GadgetHinzufugen()
[/autoit][autoit][/autoit][autoit]
Dim $WinList = WinList()
Local $AlleFenster = "", $Anzeigen = 1For $Durchlauf = 1 To $WinList[0][0]
[/autoit][autoit][/autoit][autoit]
$Anzeigen = 1Switch $WinList[$Durchlauf][0]
[/autoit][autoit][/autoit][autoit]
Case "Kalender"
$Anzeigen = 0
Case "Uhr"
$Anzeigen = 0
Case "Kontakte"
$Anzeigen = 0
Case "CPU-Nutzung"
$Anzeigen = 0
Case "Währungsrechner"
$Anzeigen = 0
Case "Notizen"
$Anzeigen = 0
Case "Bildpuzzle"
$Anzeigen = 0
Case "Feedschlagzeilen"
$Anzeigen = 0
Case "Diashow"
$Anzeigen = 0
Case "Aktien"
$Anzeigen = 0
Case "Wetter"
$Anzeigen = 0
Case "Binary Clock"
$Anzeigen = 0
Case "Calculator"
$Anzeigen = 0
Case "Vista Clock Platin"
$Anzeigen = 0
Case "Google German"
$Anzeigen = 0
Case "Mousometer"
$Anzeigen = 0
Case "Multi Meter(D)"
$Anzeigen = 0
EndSwitchFor $DurchlaufGadgets = 1 To IniRead($PfadZuGadgetsINI, "Anzahl", "Anzahl", 0)
[/autoit][autoit][/autoit][autoit]
If IniRead($PfadZuGadgetsINI, "Gadgets", $DurchlaufGadgets, "DiesesFensterIstNichtVerfügbar") = $WinList[$Durchlauf][0] Then
$Anzeigen = 0
EndIf
NextIf $WinList[$Durchlauf][0] <> "Program Manager" And $WinList[$Durchlauf][0] <> "" And IsVisible($WinList[$Durchlauf][1]) And $Anzeigen = 1 And $WinList[$Durchlauf][0] <> "AppBar Bullet" And $WinList[$Durchlauf][0] <> "Windows Sidebar" And $WinList[$Durchlauf][0] <> "Start" And $WinList[$Durchlauf][0] <> "AMD:CCC-AEMCapturingWindow" And $WinList[$Durchlauf][0] <> "Main" Then
[/autoit][autoit][/autoit][autoit]
$AlleFenster = $AlleFenster & "|" & $WinList[$Durchlauf][0]
EndIf
Next$AlleFenster = StringRight($AlleFenster, StringLen($AlleFenster) - 1)
[/autoit][autoit][/autoit][autoit]$FensterManger = GUICreate(IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), 625, 335, -1, -1)
[/autoit][autoit][/autoit][autoit]
GUISetBkColor(0xFFFF00)$List1 = GUICtrlCreateList("", 8, 8, 609, 276, BitOR($LBS_SORT, $LBS_STANDARD, $WS_VSCROLL, $WS_BORDER))
[/autoit][autoit][/autoit][autoit]
GUICtrlSetData(-1, $AlleFenster)
GUICtrlSetFont(-1, 16, 800, 0, "Arial Black")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0x00FFFF)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "GadgetHinzufügen_ProgrammAlsGadgetErkennen", "Fehler!"), 8, 292, 609, 40)
GUICtrlSetFont(-1, 16, 800, 0, "Arial Black")GUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
[/autoit][autoit][/autoit][autoit]
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
GUIDelete()
ExitLoop
Case $Button1
If GUICtrlRead($List1) <> "" Then
$Frage = MsgBox(262212, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), GUICtrlRead($List1) & " " & IniRead($PfadZuSprachenINI, $SprachenNummer, "GadgetHinzufügen_Sicherheitsfrage", "Fehler!"))
If $Frage = 6 Then
IniWrite($PfadZuGadgetsINI, "Anzahl", "Anzahl", IniRead($PfadZuGadgetsINI, "Anzahl", "Anzahl", 0) + 1)
IniWrite($PfadZuGadgetsINI, "Gadgets", IniRead($PfadZuGadgetsINI, "Anzahl", "Anzahl", 0), GUICtrlRead($List1))
MsgBox(262208, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "GadgetHinzufügen_GadgetErfolgreichGespeichert", "Fehler!"))
GUIDelete()
ExitLoop
EndIf
Else
MsgBox(262160, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "GadgetHinzufügen_KeinEintragAusgewählt", "Fehler!"))
EndIf
EndSwitch
WEnd
EndFunc ;==>_GadgetHinzufugenFunc _Anzeigen($Fenster)
[/autoit][autoit][/autoit][autoit]
For $Durchlauf In $AusgeblendeteFenster
If $Fenster = $Durchlauf Then WinSetState($Durchlauf, "", @SW_SHOW)
NextIf UBound($AusgeblendeteFenster) > 2 Then
[/autoit][autoit][/autoit][autoit]
Dim $NeuerArray[1]For $Durchlauf In $AusgeblendeteFenster
[/autoit][autoit][/autoit][autoit]
If $Durchlauf <> $Fenster Then _ArrayAdd($NeuerArray, $Durchlauf)
NextDim $AusgeblendeteFenster[1]
[/autoit][autoit][/autoit][autoit]For $Durchlauf In $NeuerArray
[/autoit][autoit][/autoit][autoit]
_ArrayAdd($AusgeblendeteFenster, $Durchlauf)
NextDim $NeuerArray[1]
[/autoit][autoit][/autoit][autoit]
Else
Dim $AusgeblendeteFenster[1]
EndIf
EndFunc ;==>_AnzeigenFunc _AlleAnzeigen()
[/autoit][autoit][/autoit][autoit]
For $Durchlauf In $AusgeblendeteFenster
WinSetState($Durchlauf, "", @SW_SHOW)
Next
Dim $AusgeblendeteFenster[1]
EndFunc ;==>_AlleAnzeigenFunc _SpracheAndern()
[/autoit][autoit][/autoit][autoit]
If IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0) <= 2 And IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0) <> 0 Then
$SpracheWahlenFenster = GUICreate("WinVerstecker/FönsterGömmare", 511, 273, -1, -1)
GUISetBkColor(0xFFFF00)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "1", "Sprache_Lang", "Fehler!") & " - " & IniRead($PfadZuSprachenINI, "1", "Sprache_SetzungsText", "Fehler!"), 8, 12, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
$Button2 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "2", "Sprache_Lang", "Fehler!") & " - " & IniRead($PfadZuSprachenINI, "2", "Sprache_SetzungsText", "Fehler!"), 8, 146, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
Else
$AndereSprachen = ""For $Durchlauf = 3 To IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0)
[/autoit][autoit][/autoit][autoit]
$AndereSprachen = $AndereSprachen & ", " & IniRead($PfadZuSprachenINI, $Durchlauf, "Sprache_Lang", "")
Next$AndereSprachen = StringRight($AndereSprachen, StringLen($AndereSprachen) - 2)
[/autoit][autoit][/autoit][autoit]$SpracheWahlenFenster = GUICreate("WinVerstecker/FönsterGömmare/WindowHider", 511, 333, -1, -1)
[/autoit][autoit][/autoit][autoit]
GUISetBkColor(0xFFFF00)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "1", "Sprache_Lang", "") & " - " & IniRead($PfadZuSprachenINI, "1", "Sprache_AnderungsText", ""), 8, 12, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
$Button2 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "2", "Sprache_Lang", "") & " - " & IniRead($PfadZuSprachenINI, "2", "Sprache_SetzungsText", ""), 8, 146, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
$Button3 = GUICtrlCreateButton($AndereSprachen, 8, 277, 496, 50, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
EndIfGUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
[/autoit][autoit][/autoit][autoit]
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Sprache", 1)
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Lizens", "")GUISetState(@SW_DISABLE)
[/autoit][autoit][/autoit][autoit]
MsgBox(262208, IniRead($PfadZuSprachenINI, "1", "WinVerstecker", ""), IniRead($PfadZuSprachenINI, "1", "Meldung_SpracheErfolgreichEingestellt", ""))
GUIDelete()Run(@ScriptDir & "\WinVerstecker.exe lizens")
[/autoit][autoit][/autoit][autoit]Exit
[/autoit][autoit][/autoit][autoit]
Case $Button2
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Sprache", 2)
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Lizens", "")GUISetState(@SW_DISABLE)
[/autoit][autoit][/autoit][autoit]
MsgBox(262208, IniRead($PfadZuSprachenINI, "2", "WinVerstecker", ""), IniRead($PfadZuSprachenINI, "2", "Meldung_SpracheErfolgreichEingestellt", ""))
GUIDelete()Run(@ScriptDir & "\WinVerstecker.exe lizens")
[/autoit][autoit][/autoit][autoit]Exit
[/autoit][autoit][/autoit][autoit]
EndSwitch$TrayGetMsg = TrayGetMsg()
[/autoit][autoit][/autoit][autoit]
If $TrayGetMsg = $TrayMenu_StatusAndern Or $TrayGetMsg = $TrayMenu_SpracheAndern Or $TrayGetMsg = $TrayMenu_AlleEinblenden Or $TrayGetMsg = $TrayMenu_Ende Then
MsgBox(262160, "WinVerstecker/FönsterGömmare/WindowHider", "Diese Funktion ist zuzeit nicht zulässig!/Denna funktion inte är tillåten nu!/At the moment this function is not allowed!")
EndIf
WEnd
EndFunc ;==>_SpracheAndernFunc _ende()
[/autoit][autoit][/autoit][autoit]
If UBound($AusgeblendeteFenster) = 1 Then
Exit
Else
MsgBox(262160, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "Fehler_NichtAlleFensterEingeblendet-Ende", "Fehler!"))
EndIf
EndFunc ;==>_endeFunc IsVisible($handle)
[/autoit][autoit][/autoit][autoit]
If BitAND(WinGetState($handle), 2) Then
Return 1
Else
Return 0
EndIf
EndFunc ;==>IsVisibleFunc _SpracheWahlen()
[/autoit][autoit][/autoit][autoit]
If IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0) <= 2 And IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0) <> 0 Then
$SpracheWahlenFenster = GUICreate("WinVerstecker/FönsterGömmare", 511, 273, -1, -1)
GUISetBkColor(0xFFFF00)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "1", "Sprache_Lang", "Fehler!") & " - " & IniRead($PfadZuSprachenINI, "1", "Sprache_SetzungsText", "Fehler!"), 8, 12, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
$Button2 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "2", "Sprache_Lang", "Fehler!") & " - " & IniRead($PfadZuSprachenINI, "2", "Sprache_SetzungsText", "Fehler!"), 8, 146, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
Else
$AndereSprachen = ""For $Durchlauf = 3 To IniRead($PfadZuSprachenINI, "Anzahl", "Anzahl", 0)
[/autoit][autoit][/autoit][autoit]
$AndereSprachen = $AndereSprachen & ", " & IniRead($PfadZuSprachenINI, $Durchlauf, "Sprache_Lang", "")
Next$AndereSprachen = StringRight($AndereSprachen, StringLen($AndereSprachen) - 2)
[/autoit][autoit][/autoit][autoit]$SpracheWahlenFenster = GUICreate("WinVerstecker/FönsterGömmare/WindowHider", 511, 333, -1, -1)
[/autoit][autoit][/autoit][autoit]
GUISetBkColor(0xFFFF00)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "1", "Sprache_Lang", "") & " - " & IniRead($PfadZuSprachenINI, "1", "Sprache_SetzungsText", ""), 8, 12, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
$Button2 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, "2", "Sprache_Lang", "") & " - " & IniRead($PfadZuSprachenINI, "2", "Sprache_SetzungsText", ""), 8, 146, 495, 121, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
$Button3 = GUICtrlCreateButton($AndereSprachen, 8, 277, 496, 50, $WS_GROUP)
GUICtrlSetFont(-1, 10, 800, 0, "Arial")
EndIfGUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
[/autoit][autoit][/autoit][autoit]
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Sprache", 1)GUISetState(@SW_DISABLE)
[/autoit][autoit][/autoit][autoit]
MsgBox(262208, IniRead($PfadZuSprachenINI, "1", "WinVerstecker", ""), IniRead($PfadZuSprachenINI, "1", "Meldung_SpracheErfolgreichEingestellt", ""))
GUIDelete()Run(@ScriptDir & "\WinVerstecker.exe lizens")
[/autoit][autoit][/autoit][autoit]Exit
[/autoit][autoit][/autoit][autoit]
Case $Button2
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Sprache", 2)GUISetState(@SW_DISABLE)
[/autoit][autoit][/autoit][autoit]
MsgBox(262208, IniRead($PfadZuSprachenINI, "2", "WinVerstecker", ""), IniRead($PfadZuSprachenINI, "2", "Meldung_SpracheErfolgreichEingestellt", ""))
GUIDelete()Run(@ScriptDir & "\WinVerstecker.exe lizens")
[/autoit][autoit][/autoit][autoit]Exit
[/autoit][autoit][/autoit][autoit]
EndSwitch$TrayGetMsg = TrayGetMsg()
[/autoit][autoit][/autoit][autoit]
If $TrayGetMsg = $TrayMenu_StatusAndern Or $TrayGetMsg = $TrayMenu_SpracheAndern Or $TrayGetMsg = $TrayMenu_AlleEinblenden Or $TrayGetMsg = $TrayMenu_Ende Then
MsgBox(262160, "WinVerstecker/FönsterGömmare/WindowHider", "Diese Funktion ist zuzeit nicht zulässig!/Denna funktion inte är tillåten nu!/At the moment this function is not allowed!")
EndIf
WEnd
EndFunc ;==>_SpracheWahlenFunc _Lizensieren()
[/autoit][autoit][/autoit][autoit]
$LizensFenster = GUICreate(IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!") & " - " & IniRead($PfadZuSprachenINI, $SprachenNummer, "Lizensierung_Lizensierung", "Fehler!"), 625, 202, -1, -1, -1, BitOR($WS_EX_APPWINDOW, $WS_EX_WINDOWEDGE))
GUISetBkColor(0xFFFF00)
$Button1 = GUICtrlCreateButton(IniRead($PfadZuSprachenINI, $SprachenNummer, "Lizensierung_ProgrammFreischalten", "Fehler!"), 8, 8, 607, 185, $WS_GROUP)
GUICtrlSetFont(-1, 34, 800, 0, "Arial Black")GUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
[/autoit][autoit][/autoit][autoit]
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
Exit
Case $Button1
IniWrite($PfadZuEinstellungenINI, "Einstellungen", "Lizens", _StringEncrypt(1, "WinVerstecker", "WinVerstecker", 2))
Run(@ScriptDir & "\WinVerstecker.exe")
Exit
EndSwitch$TrayGetMsg = TrayGetMsg()
[/autoit]
If $TrayGetMsg = $TrayMenu_StatusAndern Or $TrayGetMsg = $TrayMenu_SpracheAndern Or $TrayGetMsg = $TrayMenu_AlleEinblenden Or $TrayGetMsg = $TrayMenu_Ende Then
MsgBox(262160, IniRead($PfadZuSprachenINI, $SprachenNummer, "WinVerstecker", "Fehler!"), IniRead($PfadZuSprachenINI, $SprachenNummer, "Fehler_ZurzeitNichtZulässig", "Fehler!"))
EndIf
WEnd
EndFunc ;==>_Lizensieren -
[autoit]
Run(@ScriptDir & "\WinVerstecker.exe")
[/autoit]gib hier mal den genauen pfad an
-
Hallo Magnus,
das Skript läuft bei mir einwandfrei, du solltest daher den Fehler etwas genauer beschreiben (bei welcher Aktion etc?). Der Fehler kann eigentlich nur vorkommen, wenn das zu versteckende Programm(-Fenster) nicht mehr existiert, da dann WinGetPos kein Array zurückliefert. Kleines TestSkript zu WinGetPos ohne vorhandenes Fenster
[autoit]$ar= WinGetPos("IrgendEtwasWasNichtexistiert")
[/autoit]
ConsoleWrite($ar[0] & @CRLF)
[autoit]
Kann so abgefangen werden:$ar= WinGetPos("IrgendEtwasWasNichtexistiert")
[/autoit]
if IsArray($ar) then
ConsoleWrite($ar[0] & @CRLF)
Else
ConsoleWrite("Keine Arraydaten!!!" & @CRLF)
EndIfmfg (Auto)Bert
-
Der Fehler tritt auf, wenn ich die Sidebarfunktionen verwende und anschließend auf "Schließen" drücke.
-
Hallo Magnus,
du solltest nach WinGetPos überprüfen ob die Variable ein Array ist, siehe hierzu meinen vorhergehenden Post,
mfg (Auto)Bert
-
Danke!