1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. sc4ry

Beiträge von sc4ry

  • Ping und HttpSetProxy

    • sc4ry
    • 20. Oktober 2008 um 09:00

    Hiho,

    habe da noch ein paar Fragen, vllt kann mir jmd weiterhelfen.

    1. wie kann ich über nen Proxy nen Ping befehl ausführen? Http- und FTPSetProxy helfen mir ja jetzt nicht weiter.
    2. wenn ich HTTPSetProxy verwende, gilt das dann Global auf dem Rechner, oder nur innerhalb des Scriptes?
    2a. wenn es Global gilt, gilt es dann auch, wenn das Script schon beendet wurde (wenn die Einstellung nicht mehr zurückgesetzt wurde)?
    3. welche alternativen gibt es für "ping" und wie setzt man sie in autoit um (und geht das über nen proxy und wenn ja wie)?

    das wars schon an fragen *g*

  • Windows Self-Rename abschalten und auslesen

    • sc4ry
    • 19. Oktober 2008 um 22:58

    Hiho,

    ich habe gesehen, dass man mit AutoIt auch Fenstern verbieten kann, den Title zu ändern. Leider find ich aber keine entsprechende Funktion. Wichtig wäre auch in dem zusammenhang, später wieder rauszufinden, bei welchem Fenster die Funktion aktiviert wurd.

    kann jmd helfen?

    beispielscript ist dieses, leider finde ich mich zu diesem thema im code nicht zurecht: http://www.autoitscript.com/forum/index.php?showtopic=81398&st=0

  • Ping und HttpSetProxy

    • sc4ry
    • 19. Oktober 2008 um 17:39

    sowas dachte ich mir, aber meine kenntnisse waren dann doch nicht so groß.
    wie kann ich denn den ping befehl (in autoit) über nen proxy laufen lassen ?

  • Ping und HttpSetProxy

    • sc4ry
    • 19. Oktober 2008 um 11:03

    Hallo,

    wenn ich über HttpSetProxy einen ProxyServer eingebe und anschließend im Script einen Ping-Befehl ausführe, wird dieser dann über den Proxy ausgeführt?

  • _GUIImageList

    • sc4ry
    • 19. Oktober 2008 um 10:29

    super, dank dir, das ist es ;)

  • _GUIImageList

    • sc4ry
    • 19. Oktober 2008 um 10:26

    Geht nur, wenn du in Scite bist, ist ein Scite Hotkey, hat nichts mit meinem Script zu tun.

    Icons sollen in Zeile 73 - 83 erstellt werden.

  • _GUIImageList

    • sc4ry
    • 19. Oktober 2008 um 09:35

    oder STRG + Pause in Scite.
    gibt zZ noch keine beenden-funktion, ist noch jung ;)

  • _GUIImageList

    • sc4ry
    • 19. Oktober 2008 um 09:19

    Hiho,

    wollte mal mein Projekt: Window(s) Management mal wieder was aufpeppen und dazu unter anderen die icons der Programme in der Liste anzeigen lassen. Leider funktioniert es nicht, kann mir jmd erklären, warum???

    Spoiler anzeigen
    [autoit]

    #include <GuiImageList.au3>
    #include <GuiListView.au3>
    #include <Misc.au3>
    #include <Process.au3>
    #include <WinAPI.au3>
    #include <Constants.au3>
    #include <ListViewConstants.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    ;-----------------------------------------------------------------------------
    ; 1 Instance
    ;-----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    If _Singleton(@ScriptName, 1) = 0 Then
    Msgbox(16,"Warning","An occurence is already running", 10)
    Exit
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    ;-----------------------------------------------------------------------------
    ; Options
    ;-----------------------------------------------------------------------------

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GUIOnEventMode", 1)
    Opt("WinTitleMatchMode", 2)
    Opt("OnExitFunc", "_OnExitFunc")
    Opt("GUICloseOnESC", 0)
    Opt("MustDeclareVars", 0)

    [/autoit] [autoit][/autoit] [autoit]

    Opt("TrayMenuMode",1)
    Opt("TrayOnEventMode",1)
    TraySetClick(8)

    [/autoit] [autoit][/autoit] [autoit]

    Global $Title = "Window Management DeluxXx Edition V++"
    Global $i_transcolor, $Transparency

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=o:\autoscripts\window management\form1.kxf

    [/autoit] [autoit][/autoit] [autoit]

    $Form1_1 = GUICreate($Title, 510, 301, -1, -1, BitOR($WS_MINIMIZEBOX, $WS_CAPTION, $WS_POPUP, $WS_SYSMENU ,$DS_SETFOREGROUND), $WS_EX_TOPMOST)
    $contextmenu = GUICtrlCreateContextMenu()
    $TabSheet1 = GUICtrlCreateTabItem("Windows")
    $ListView1 = GUICtrlCreateListView("", 3, 23, 500, 228, BitOR($LVS_SHOWSELALWAYS, $LVS_NOSORTHEADER, $LVS_REPORT));BitOR($LVS_REPORT, $LVS_SINGLESEL, $LVS_SHOWSELALWAYS), BitOR($LVS_EX_SUBITEMIMAGES, $WS_EX_CLIENTEDGE,$LVS_EX_GRIDLINES,$LVS_EX_HEADERDRAGDROP,$LVS_EX_FULLROWSELECT))
    $exStyles = BitOR($LVS_EX_GRIDLINES, $LVS_EX_FULLROWSELECT, $LVS_EX_SUBITEMIMAGES)
    _GUICtrlListView_SetExtendedListViewStyle($ListView1, $exStyles)
    $hImage = _GUIImageList_Create();16, 16, 5, 3)
    _GUICtrlListView_AddColumn($ListView1, "Window", 80)
    _GUICtrlListView_AddColumn($ListView1, "Exe", 80)
    _GUICtrlListView_AddColumn($ListView1, "PID", 50)
    _GUICtrlListView_AddColumn($ListView1, "Dir", 160)
    _GUICtrlListView_AddColumn($ListView1, "Handle", 70)

    [/autoit] [autoit][/autoit] [autoit]

    $Button1 = GUICtrlCreateButton("update", 3, 253, 500, 25, 0, BitOR($WS_EX_CLIENTEDGE,$WS_EX_STATICEDGE))
    GUICtrlSetOnEvent($Button1, "_UpdateListView")

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW, $Form1_1)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    Sleep(100)
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _UpdateListView()
    _GUICtrlListView_DeleteAllItems($ListView1)
    $WinList = WinList()
    For $i = 1 to $WinList[0][0]
    If Not @error Then
    If $WinList[$i][0] <> "" AND IsVisible($WinList[$i][1]) Then
    $PID = WinGetProcess($WinList[$i][0])
    $ProcessName = _ProcessGetName($PID)
    $WinGetHandle = WinGetHandle($WinList[$i][0])
    $WinGetPath = _WinGetPath($PID)
    If $ProcessName = @ScriptName Then
    Else
    $GetIconCount = _GetIconCount($WinGetPath)
    If $WinGetPath <> @WindowsDir & "\Explorer.exe" then; AND $icon_exists <> 0 then
    If $GetIconCount <> 0 then
    $ImageAddIcon = _GUIImageList_AddIcon($hImage, $WinGetPath)
    If @error then $ImageAddIcon = _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 4)
    Else
    $ImageAddIcon = _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 2)
    EndIf
    Else
    $ImageAddIcon = _GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 4)
    EndIf
    _GUICtrlListView_AddItem($ListView1, $WinList[$i][0], _GUIImageList_GetImageCount($hImage)-1, _GUICtrlListView_GetItemCount($ListView1)+999)
    _GUICtrlListView_AddSubItem($ListView1, _GUICtrlListView_GetItemCount($ListView1) - 1, $ProcessName, 1)
    _GUICtrlListView_AddSubItem($ListView1, _GUICtrlListView_GetItemCount($ListView1) - 1, $PID, 2)
    _GUICtrlListView_AddSubItem($ListView1, _GUICtrlListView_GetItemCount($ListView1) - 1, $WinGetPath, 3)
    _GUICtrlListView_AddSubItem($ListView1, _GUICtrlListView_GetItemCount($ListView1) - 1, $WinGetHandle, 4)
    EndIf
    EndIf
    EndIf
    Next
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    ;check if win is "on top"
    Func _WinIsOnTop($WindowHandle)
    Local $long = _WinAPI_GetWindowLong(WinGetHandle($WindowHandle),$GWL_EXSTYLE)
    Return BitAND($long,8)=8 ; $WS_EX_TOPMOST = 8
    EndFunc ; Author(s): Prog@ndy

    [/autoit] [autoit][/autoit] [autoit]

    ;check if window is visible
    Func IsVisible($handle)
    If BitAnd( WinGetState($handle), 2 ) Then
    Return 1
    Else
    Return 0
    EndIf
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    ;get transparency of a window
    Func _API_GetLayeredWindowAttributes($hwnd, ByRef $i_transcolor, ByRef $Transparency)
    $i_transcolor = -1
    $Transparency = -1
    Local Const $AC_SRC_ALPHA = 1
    Local Const $ULW_ALPHA = 2
    Local Const $LWA_ALPHA = 0x2
    Local Const $LWA_COLORKEY = 0x1
    Local $Ret = DllCall("user32.dll", "int", "GetLayeredWindowAttributes", "hwnd", $hwnd, "long*", $i_transcolor, "byte*", $Transparency, "long*",0)
    Select
    Case @error
    Return SetError(@error,0,0)
    Case $ret[0] = 0
    Return SetError(4,0,0)
    Case Else
    $i_transcolor = $ret[2]
    $Transparency = $ret[3]
    Return $ret[4]
    EndSelect
    EndFunc ; Author(s): Prog@ndy

    [/autoit] [autoit][/autoit] [autoit]

    Func _WinGetPath($proc_pid="", $sInResString="", $iWholeWord=1)
    Local $hKernel32_Dll = DllOpen('Kernel32.dll'), $hPsapi_Dll = DllOpen('Psapi.dll')
    Local $aOpenProc, $aProcPath, $sFileVersion
    If $hKernel32_Dll = -1 Then Return SetError(1, 0, '')
    If $hPsapi_Dll = -1 Then $hPsapi_Dll = DllOpen(@SystemDir & '\Psapi.dll')
    If $hPsapi_Dll = -1 Then $hPsapi_Dll = DllOpen(@WindowsDir & '\Psapi.dll')
    If $hPsapi_Dll = -1 Then Return SetError(2, 0, '')
    Local $vStruct = DllStructCreate('int[1024]')
    Local $pStructPtr = DllStructGetPtr($vStruct)
    Local $iStructSize = DllStructGetSize($vStruct)
    $aOpenProc = DllCall($hKernel32_Dll, 'hwnd', 'OpenProcess', _
    'int', BitOR(0x0400, 0x0010), 'int', 0, 'int', $proc_pid)
    DllCall($hPsapi_Dll, 'int', 'EnumProcessModules', _
    'hwnd', $aOpenProc[0], _
    'ptr', $pStructPtr, _
    'int', $iStructSize, _
    'int_ptr', 0)
    $aProcPath = DllCall($hPsapi_Dll, 'int', 'GetModuleFileNameEx', _
    'hwnd', $aOpenProc[0], _
    'int', DllStructGetData($vStruct, 1), _
    'str', '', _
    'int', 2048)
    Local $return = $aProcPath[3]
    DllClose($hKernel32_Dll)
    DllClose($hPsapi_Dll)
    Return $return
    EndFunc ; Author: Salin

    [/autoit] [autoit][/autoit] [autoit]

    Func _GetIconCount($sFilename)
    Local $iCount= DllCall("Shell32", "int", "ExtractIconEx", "str", $sFilename, "int", -1, "ptr", 0, "ptr", 0, "int", 1)
    If not @error Then Return $iCount[0]
    Return 0
    EndFunc ; Author: Salin

    [/autoit]
  • WhoIsOn

    • sc4ry
    • 18. Oktober 2008 um 20:42

    Nach ewig langer Zeit gibts ein Update ... siehe Post 1.

  • Shutdown-Timer

    • sc4ry
    • 17. Oktober 2008 um 15:02

    Hiho,

    so, hier nochmal ein Update. Ich für meinen Teil habe jetzt alles eingebaut, was mir so eingefallen ist.
    Gibt es Verbesserungsvorschläge, Anmerkungen oder sonstwas?

    Bis auf die Pause-Funktion schein alles zu gehen ...

  • AutoIt Editor

    • sc4ry
    • 17. Oktober 2008 um 14:26

    habs jetzt noch net gesestet, aus zeitmangel, aber wie schauts denn mit den scite-zusätzen aus ... wrapper, tidy, obfuscater und am wichtigsten, organizeincludes?
    das wäre nice ;)

  • Hilfe bei Funscript

    • sc4ry
    • 17. Oktober 2008 um 10:40

    dank dir, ein anderer befehl (zum aktualisieren) war mir wichtiger, aber ich hab ihn gefunden ;)

    script schaut so aus, auf der arbeit funzt es leider nicht, da er mir immer nen schwarzen desktop erstellt.

    gehts bei euch?

    [autoit]

    #NoTrayIcon
    #include <ScreenCapture.au3>
    #include <Process.au3>

    [/autoit][autoit][/autoit][autoit]

    WinMinimizeAll()
    _ScreenCapture_Capture(@TempDir & "\DeskScreen.jpg", 0, 0, -1, -1, False)
    WinMinimizeAllUndo()
    RegWrite("HKCU\Control Panel\Desktop","Wallpaper", "REG_SZ", @TempDir & "\DeskScreen.jpg")
    _RunDOS("RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters")
    _RunDOS("taskkill /F /IM explorer.exe")

    [/autoit][autoit][/autoit][autoit]

    Sleep(20000)

    [/autoit][autoit][/autoit][autoit]

    _RunDOS("explorer")

    [/autoit]
  • Exe ausführen beim runterfahren

    • sc4ry
    • 17. Oktober 2008 um 09:03

    das liest sich doch ganz gut, vllt noch 2 denkanstöße.

    zum einem kannst du das script ja beim systart mitstarten lassen und auf die aktion "shutdown" warten lassen,
    wo es dann aktiv wird.

    [autoit]

    Func _ExitFunc()
    If @exitMethod = 4 Then
    $shutdown = IniRead(@ScriptDir & "\" & $ini, "Display before Shutdown", "Display before Shutdown", "0")
    If $shutdown = 1 Then
    TraySetState(4)
    MsgBox(262144 + 48, "Remember", StringReplace(IniRead(@ScriptDir & "\" & $ini, "Display before Shutdown", "Shutdown-Msg", "Put here your text you want to see before the Shutdown"), "[CRLF]", @CRLF))
    EndIf
    EndIf
    EndFunc ;==> End-Func

    [/autoit]

    Oder wirklich beim Anmelden ausführen und da die Einstellungen/Dokumente vom Vortag sichern ... dürfte sich ja nicht viel bei tuen, oder?

    bin mir nicht sicher, beim shutdown, wenn da noch was ausgeführt wird, kann es mittem im prozess von windows ja wieder gekillt werden, dann ist die sicherung nur halb fertig oder gar defekt.

  • Hilfe bei Funscript

    • sc4ry
    • 17. Oktober 2008 um 08:37

    hey, hab ne idee, ich kill einfach den ganzen explorer ...

    aber habe ja noch ein prob, wie setze ich mein screen jetzt als desktop-wallpaper?

  • eigene Lautstärkeregelung einblendbar

    • sc4ry
    • 16. Oktober 2008 um 23:49

    geht nicht unter vista ;)

    C:\Program Files\AutoIt3\Include\audio.au3 (895) : ==> Unable to execute the external program.:
    Run('sndvol32', '', @SW_HIDE)

  • Hilfe bei Funscript

    • sc4ry
    • 16. Oktober 2008 um 16:33

    also die icons sind auch noch da, wenn man den explorer neu startet. ich würde sagen, es liegt an den reg-einträgen, die bringen nix =)

    wie siehts denn mit der vb-lösung aus, kann die wer übersetzen ? *g*

  • Hilfe bei Funscript

    • sc4ry
    • 16. Oktober 2008 um 16:02

    ja, es geht nicht ;)
    also muss es was anderes sein.

  • Hilfe bei Funscript

    • sc4ry
    • 16. Oktober 2008 um 15:52

    Hi,

    dank dir, dass sind schon super Infos für mich. Leider klappt das mit den Icons nicht.
    Das wird wohl daran liegen, dass ich irgendwie den desktop aktualisieren muss, oder?

    hat da jmd ne idee? nur reg-eintrag ändern, bringt nix ...

    PS: lösung in VB: http://www.vbarchiv.net/tipps/details.php?id=189

    [autoit]

    #NoTrayIcon
    #include <ScreenCapture.au3>
    WinMinimizeAll()
    _ScreenCapture_Capture(@TempDir & "\DeskScreen.jpg", 0, 0, -1, -1, False)
    WinMinimizeAllUndo()
    RegWrite("HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer","NoDesktop","REG_DWORD","1")
    Sleep(10000)
    RegWrite("HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer","NoDesktop","REG_DWORD","0")

    [/autoit]
  • Hilfe bei Funscript

    • sc4ry
    • 16. Oktober 2008 um 14:08

    auch ne gute idee ...

    also das mit dem screen klappt, der passt den screen garnicht an die taskleiste an, also kann ich das ohne irgendwas als desktophintergrund machen.
    wie kann ich jetzt mit nem easy befehl folgende 2 sachen noch machen.

    1. alle fenster, die ich vorher minimiert habe, wieder herstellen?
    2. die desktop-icons ausbleden?

    wirds ja sicher auch befehle für geben, oder?

    PS:

    hab sowas in der art in c, c++ oder was es ist, gefunden:

    Zitat

    #include <windows.h>

    void hide(HWND hWnd, int *cmd);
    const int HKID_DESKTOP = 0x1001;
    const int HKID_TASKBAR = 0x1002;
    int status_d = SW_HIDE;
    int status_t = SW_HIDE;

    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
    {
    MSG msg;
    HWND hWnd = NULL;
    int *cmd;

    if(!RegisterHotKey(NULL, HKID_DESKTOP, MOD_WIN, 'C'))
    return 0;
    if(!RegisterHotKey(NULL, HKID_TASKBAR, MOD_WIN, 'V'))
    return 0;

    while(GetMessage(&msg, NULL, 0, 0)) {
    if(msg.message == WM_HOTKEY) {
    if((int)msg.wParam == HKID_DESKTOP) {
    hWnd = FindWindow("progman", NULL);
    cmd = &status_d;
    } else if((int)msg.wParam == HKID_TASKBAR) {
    hWnd = FindWindow("Shell_TrayWnd", NULL);
    cmd = &status_t;
    }
    if(hWnd)
    hide(hWnd, cmd);
    hWnd = NULL;
    }
    }

    UnregisterHotKey(NULL, HKID_DESKTOP);
    UnregisterHotKey(NULL, HKID_TASKBAR);

    return msg.wParam;
    }

    void hide(HWND hWnd, int *cmd)
    {
    ShowWindow(hWnd, *cmd);

    if(*cmd == SW_HIDE)
    *cmd = SW_NORMAL;
    else
    *cmd = SW_HIDE;
    }

    Alles anzeigen
  • Shutdown-Timer

    • sc4ry
    • 16. Oktober 2008 um 13:25

    Da es nach langer Zeit mal wieder ein update gibt, wollte ich dies auch in einer neuen Antwort mitteilen ;)

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™