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. RR04

Beiträge von RR04

  • Button Befehl zuweisen ?

    • RR04
    • 29. Mai 2011 um 22:59

    Du hast die Variable "$GUI_EVENT_CLOSE" angewendet die "-3" ist der Wert in dieser Variable und Du sparst das Include. ;)

  • Button Befehl zuweisen ?

    • RR04
    • 29. Mai 2011 um 22:43

    Hi, besser so:

    Spoiler anzeigen
    [autoit]


    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    ;~ $SS_NOTIFY —> StaticConstants.au3
    ;~ $WS_CLIPSIBLINGS —> WindowsConstants.au3

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

    HotKeySet("{F7}", "_Start")
    HotKeySet("{F8}", "_Exit")

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

    #region ### START Koda GUI section ###
    GUICreate("Form1", 551, 441, 218, 17)
    $Event1 = GUICtrlCreateButton("v1", 8, 128, 137, 25)
    $Event2 = GUICtrlCreateButton("v4", 8, 304, 137, 25)
    $Event3 = GUICtrlCreateButton("v3", 8, 248, 137, 25)
    $Event4 = GUICtrlCreateButton("v5", 8, 368, 137, 25)
    $Event = GUICtrlCreateButton("v2", 8, 184, 137, 25)
    $Pic1 = GUICtrlCreatePic("C:\Users\Peter\Pictures\fuer tool Aussehen5.jpg", 0, 0, 550, 440, BitOR($SS_NOTIFY, $WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)
    #endregion ### END Koda GUI section ###

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

    While 1
    Switch GUIGetMsg()
    Case -3
    _Exit() ;i Die Funktion starten
    Case $Event
    _Start() ;i Die Funktion starten
    EndSwitch
    WEnd

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

    Func _Start() ;i Die Funktion
    Sleep(10000)
    Send("{ENTER}")
    Sleep(300)
    Send("Guten Tag")
    Sleep(300)
    Send("{ENTER}")
    EndFunc ;==>_Start

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

    Func _Exit() ;i Die Funktion selbst
    Exit
    EndFunc ;==>_Exit
    ; Ende

    [/autoit]
  • Variablen werden nicht in eine INI gespeichert?!

    • RR04
    • 27. Mai 2011 um 21:47

    Hi,
    so gab es bei mir noch keine Probleme. ;)
    Wenn Du so viele Controls hast solltest Du vielleicht Arrays nutzen ?

    [autoit]


    Global $ini = @scriptDir & "\beispiel.ini" ;i am Anfang des Scriptes
    IniWrite($ini,"texte","say1", GUICtrlRead($input1))

    [/autoit]
  • Listview ausdrucken /PrintWinAPI.au3

    • RR04
    • 26. Mai 2011 um 20:42
    Zitat von JaySini

    Hmm liest sich gut aber:

    ERROR: _StringRepeat(): undefined function.
    FileWriteLine($file, _StringRepeat('-', $iMaxAnzahl * $iColumns + $iColumns + 1)

    AutoIt will Dir mit der Fehlermeldung sagen: "Hey, Du hast das Include vergessen!" :rolleyes:

    [autoit]


    #Include <String.au3>
    _StringRepeat($sString, $iRepeatCount)

    [/autoit]
  • Listview ausdrucken /PrintWinAPI.au3

    • RR04
    • 26. Mai 2011 um 12:11

    Das hatte funkey mal geschrieben. ;)

    Spoiler anzeigen
    [autoit]


    _Print_LV($hListView)

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

    Func _Print_LV($hListView)
    ;funkey
    ;Local $iMaxAnzahl = 7, $aColumn
    Local $iMaxAnzahl = 12, $aColumn
    Local $iItems = _GUICtrlListView_GetItemCount($hListView)
    Local $iColumns = _GUICtrlListView_GetColumnCount($hListView)
    Local $file = @ScriptDir & "\listview.txt"
    If FileExists($file) Then FileDelete($file)
    FileWriteLine($file, _StringRepeat('-', $iMaxAnzahl * $iColumns + $iColumns + 1))
    FileWrite($file, '|')
    For $y = 0 To $iColumns - 1
    $aColumn = _GUICtrlListView_GetColumn($hListView, $y)
    FileWrite($file, StringFormat("%" & $iMaxAnzahl & "s", $aColumn[5]) & '|')
    Next
    FileWrite($file, @CRLF & '|')
    For $i = 0 To $iColumns - 1
    FileWrite($file, _StringRepeat('-', $iMaxAnzahl) & '|')
    Next
    FileWrite($file, @CRLF)
    For $x = 0 To $iItems - 1
    FileWrite($file, '|')
    For $y = 0 To $iColumns - 1
    FileWrite($file, StringFormat("%" & $iMaxAnzahl & "s", _GUICtrlListView_GetItemText($hListView, $x, $y)) & '|')
    Next
    FileWrite($file, @CRLF)
    Next
    FileWriteLine($file, _StringRepeat('-', $iMaxAnzahl * $iColumns + $iColumns + 1))
    $print = _FilePrint($file)
    EndFunc ;==>_Print_LV

    [/autoit]
  • Listview ausdrucken /PrintWinAPI.au3

    • RR04
    • 26. Mai 2011 um 11:58

    Hi,

    hier vielleicht ?
    _ListView_HTMLprint

  • GUI: Wie Element-Status verändern, ohne dass es zum Flackern kommt?

    • RR04
    • 25. Mai 2011 um 17:53

    Hi,

    müsste auch so gehen (habe zur Zeit kein AutoIt):

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

    Global $tate = $GUI_ENABLE ;i Voreinstellung
    $tate = BitXOR($tate, $GUI_ENABLE, $GUI_DISABLE)
    ; Ende

    [/autoit]
  • Auswerten von Daten

    • RR04
    • 19. Mai 2011 um 12:57

    Hi, auch von mir ein Herzliches Willkommen und viel Spaß hier ! :thumbup:

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

    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    ;~ _FileReadToArray —> File.au3
    ;~ _ArrayDisplay —> Array.au3

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

    #include <Array.au3>
    #include <File.au3>

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

    Global $file = @ScriptDir & "/myIni.ini" ; Path & Name to inifile
    Global $aFile
    If FileExists($file) Then
    Global $ret = _FileReadToArray($file, $aFile)
    If $ret = 0 Then MsgBox(262144 + 0, '', 'Error')
    _ArrayDisplay($aFile)
    Else
    MsgBox(262144 + 48, 'Error ', $file & @CRLF & @CRLF & "Oh, Oh !")
    EndIf

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

    #cs
    ;i Deine ini-Datei

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

    myIni.ini
    [deutsch]
    18.05.2011=7
    19.05.2011=20
    #ce

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

    ; 2. Example
    Global $section = "Deutsch"
    Global $var = IniReadSection(@ScriptDir & "/myIni.ini", $section)
    If @error Then
    MsgBox(4096, "", "Es ist ein Fehler aufgetreten. Warscheinlich keine INI Datei vorhanden.")
    Else
    _ArrayDisplay($var, "Sektion " & $section)
    EndIf

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Bekomme Sprungmarken Warnings

    • RR04
    • 19. Mai 2011 um 10:34
    [autoit]


    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    #cs
    _SoftwareInstall_vlc()

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

    Func _SoftwareInstall_vlc()
    ;! If BitAND(GUICtrlRead($aCkbColumn1[0]), $GUI_CHECKED) = $GUI_CHECKED Then ;i zum testen auskommentiert
    Local $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir"), _
    $versionVLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "Version")

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

    If Not FileExists($VLN & "\vlc.exe") Then RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    If FileExists($VLN & "\vlc.exe") Then
    Local $Message = MsgBox(32 + 4, "Installation", "VLC Media Player " & $versionVLN & " ist bereits installiert !" _
    & @TAB & @CRLF & @CRLF & "Soll das Programm deinstalliert werden ?" & @TAB)
    Switch $Message
    Case 6 ;ja ########################################################################
    RunWait($VLN & "\uninstall.exe /S ")
    If FileExists(@AppDataDir & "\VLC") Then DirRemove(@AppDataDir & "\VLC", 1)
    If FileExists(StringTrimRight($VLN, 4)) Then DirRemove(StringTrimRight($VLN, 4), 1)
    If MsgBox(32 + 4, "Installation", "Die Deinstallation von VLC " & $versionVLN & " war erfolgreich !" _
    & @TAB & @CRLF & @CRLF & "Möchten Sie mit der Installation fortfahren ?" & @TAB) = 6 Then _
    RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    Case 7 ;nein ######################################################################
    RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    EndSwitch
    EndIf
    ;! EndIf ;i zum testen auskommentiert
    Sleep(1000)
    EndFunc ;==>_SoftwareInstall_vlc
    #ce

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

    Global $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir")
    MsgBox(0, "Der RegistryPfad", "Bitteschön : " & $VLN & @TAB)
    Global $result = StringTrimRight($VLN, 4)
    MsgBox(0, "Der RegistryPfad ohne die 4 rechten Zeichen: ", "Bitteschön : " & $result & @TAB)
    ;! If FileExists($result) Then DirRemove($result, 1)
    Exit

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

    ;i Beschreibung:
    ;i Natürlich hast Du mit "If FileExists(@ProgramFilesDir & "\VideoLAN") Then DirRemove(@ProgramFilesDir & "\VideoLAN", 1)"
    ;i Recht, dennoch ist die Lösung nur grob richtig!
    ;i Denn :
    ;i Das Ganze mal logisch betrachtet haben wir den Pfad/InstallOrt bereits festgestellt
    ;i und wollen jetzt plötzlich möglicherweise den Ordner wo anders löschen ?
    ;i Besser den bereits bekannten Pfad anpassen, also einkürzen mit "StringTrimRight($VLN, 4)" !

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Bilder im Script

    • RR04
    • 19. Mai 2011 um 09:02

    BugFix hat dazu mal eine Funktion geschrieben.

    Ein Beispiel für eine einfache Umsetzung direkt im Script siehe hier:

    [autoit]


    ;i Aut(h)or: Blume
    ;i http://www.autoit.de/index.php?page…7453#post217453
    #NoTrayIcon

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

    Global $bEmptyDll = "Deine Binär-Datei ..."

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

    Global $hMainGui = GUICreate("EmptyDllCreator", 250, 48)
    Global $hMainCreate = GUICtrlCreateButton("Create empty Dll", 8, 8, 234, 32)
    GUISetState()

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

    While 1
    Switch GUIGetMsg()
    Case -3
    Exit
    Case $hMainCreate
    $sSave = FileSaveDialog("EmptyDllCreator", "", "Dynamic Link Libary (*.dll)", 18, "", $hMainGui)
    If @error Then ContinueLoop

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

    If StringRight($sSave, 4) <> ".dll" Then $sSave &= ".dll"

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

    $hFile = FileOpen($sSave, 18) ;Binary mode + Write mode (Erease old Content)
    FileWrite($hFile, $bEmptyDll)
    FileClose($hFile)

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

    Exit
    EndSwitch
    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Bekomme Sprungmarken Warnings

    • RR04
    • 18. Mai 2011 um 12:31

    Hi, hier mal eine mögl. Lösung zu VLC für 7-zip hab ich mal drinen gelassen ! ;)

    [autoit]


    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6

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

    _SoftwareInstall_vlc()

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

    Func _SoftwareInstall_vlc()
    ;! If BitAND(GUICtrlRead($aCkbColumn1[0]), $GUI_CHECKED) = $GUI_CHECKED Then ;i zum testen auskommentiert
    Local $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir"), _
    $versionVLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "Version")

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

    If Not FileExists($VLN & "\vlc.exe") Then RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    If FileExists($VLN & "\vlc.exe") Then
    Local $Message = MsgBox(32 + 4, "Installation", "VLC Media Player " & $versionVLN & " ist bereits installiert !" _
    & @TAB & @CRLF & @CRLF & "Soll das Programm deinstalliert werden ?" & @TAB)
    Switch $Message
    Case 6 ;ja ########################################################################
    RunWait($VLN & "\uninstall.exe /S ")
    If FileExists(@AppDataDir & "\VLC") Then DirRemove(@AppDataDir & "\VLC", 1)
    If FileExists(@ProgramsDir & "\VideoLAN") Then DirRemove(@ProgramsDir & "\VideoLAN", 1)
    If MsgBox(32 + 4, "Installation", "Die Deinstallation war erfolgreich !" _
    & @TAB & @CRLF & @CRLF & "Möchten Sie mit der Installation fortfahren ?" & @TAB) = 6 Then _
    RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    Case 7 ;nein ######################################################################
    RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    EndSwitch
    EndIf
    ;! EndIf ;i zum testen auskommentiert
    Sleep(1000)
    EndFunc ;==>_SoftwareInstall_vlc

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

    MsgBox(0, " ;)", "Bitteschön !" & @TAB)
    Exit

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

    ;i Beschreibung:
    ;i Die Uninstallroutine von VLC greift nicht in den Userbereich ein,
    ;i wodurch bei der Neuinstallation immernoch ein "installierter VLC" erkannt sein will !
    ;i Eine mögliche Lösung z.B.:
    ;i If FileExists(@AppDataDir & "\VLC") Then DirRemove(@AppDataDir & "\VLC", 1)
    ;i If FileExists(@ProgramsDir & "\VideoLAN") Then DirRemove(@ProgramsDir & "\VideoLAN", 1)
    ;i If MsgBox(32 + 4, "Installation", "Deinstallation war erfolgreich !" _
    ;i & @TAB & @CRLF & @CRLF & "Möchten Sie mit der Installation fortfahren ?" & @TAB) = 6 Then _
    ;i RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
    #cs

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

    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6

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

    _SoftwareInstall_7zip()

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

    Func _SoftwareInstall_7zip()
    ;! If BitAND(GUICtrlRead($aCkbColumn1[1]), $GUI_CHECKED) = $GUI_CHECKED Then ;i zum testen auskommentiert
    Local $7zip = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\7zFM.exe", "Path"), _
    $version7zip = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\7zFM.exe", "DisplayName")

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

    If Not FileExists($7zip & "\7zFM.exe") Then RunWait(@ScriptDir & "\7z920.exe") ;i Hier Anpassungen vornehmen!
    If FileExists($7zip & "\7zFM.exe") Then
    Local $Message = MsgBox(32 + 4, "Installation", "7-Zip " & $version7zip & " ist bereits installiert !" _
    & @TAB & @CRLF & @CRLF & "Soll das Programm deinstalliert werden ?" & @TAB)
    Switch $Message
    Case 6 ;ja
    RunWait($7zip & "\Uninstall.exe /S ")
    RunWait(@ScriptDir & "\7z920.exe") ;i Hier Anpassungen vornehmen!
    Case 7 ;nein
    RunWait(@ScriptDir & "\7z920.exe") ;i Hier Anpassungen vornehmen!
    EndSwitch
    EndIf
    ;! EndIf ;i zum testen auskommentiert
    Sleep(1000)
    EndFunc ;==>_SoftwareInstall_7zip

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

    MsgBox(0, " ;)", "Bitteschön !" & @TAB)
    Exit

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

    ;i Das hier gezeigte Script für 7-zip ist bei mir funktionstüchtig, keine Fenster da Silentdeinstall !
    #ce

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Bekomme Sprungmarken Warnings

    • RR04
    • 17. Mai 2011 um 22:35

    Hi,
    das Problem mit den beiden Fenstern hatte ich auch erst, dann aber mit der Uninstall /S Variante gelöst. Eben habe ich es noch einmal mit der Version probiert (ohne weiteren Code) und es hat funktioniert. Durch die Silentdeinstall habe ich erst garkein Fenster sehen können.

    Spoiler anzeigen
    [autoit]


    #cs
    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6

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

    _SoftwareInstall_7zip()

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

    Func _SoftwareInstall_7zip()
    Local $7zip = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\7zFM.exe", "Path"), _
    $version7zip = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\7zFM.exe", "DisplayName")

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

    If Not FileExists($7zip & "\7zFM.exe") Then RunWait(@ScriptDir & "\7z920.exe")
    If FileExists($7zip & "\7zFM.exe") Then
    Local $Message = MsgBox(32 + 4, "Installation", "7-Zip " & $version7zip & " ist bereits installiert !" _
    & @TAB & @CRLF & @CRLF & "Soll das Programm deinstalliert werden ?" & @TAB)
    Switch $Message
    Case 6 ;ja
    RunWait($7zip & "\Uninstall.exe /S ")
    RunWait(@ScriptDir & "\7z920.exe")
    Case 7 ;nein
    RunWait(@ScriptDir & "\7z920.exe")
    EndSwitch
    EndIf
    Sleep(1000)
    EndFunc ;==>_SoftwareInstall_7zip

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

    MsgBox(0, " ;)", "Bitteschön !" & @TAB)
    Exit
    #ce

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

    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6

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

    _SoftwareInstall_vlc()

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

    Func _SoftwareInstall_vlc()
    Local $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir"), _
    $versionVLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "Version")

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

    ConsoleWrite($versionVLN & " " & $VLN)

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

    If Not FileExists($VLN & "\vlc.exe") Then RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe")
    If FileExists($VLN & "\vlc.exe") Then
    Local $Message = MsgBox(32 + 4, "Installation", "VLC " & $versionVLN & " ist bereits installiert !" _
    & @TAB & @CRLF & @CRLF & "Soll das Programm deinstalliert werden ?" & @TAB)
    Switch $Message
    Case 6 ;ja
    RunWait($VLN & "\uninstall.exe /S ")
    RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe")
    Case 7 ;nein
    RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe")
    EndSwitch
    EndIf
    Sleep(1000)
    EndFunc ;==>_SoftwareInstall_vlc

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

    MsgBox(0, " ;)", "Bitteschön !" & @TAB)
    Exit

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

    ; Ende

    [/autoit]
  • FileRead und @ScriptDir Problem..

    • RR04
    • 17. Mai 2011 um 10:18

    Hi,

    FileRead:
    Liest eine bestimmte Anzahl von Zeichen aus einer zuvor geöffneten Textdatei (FileOpen()) ! ;)

  • Benötige Hilfe bzgl registry Abfrage

    • RR04
    • 17. Mai 2011 um 07:29

    Hi,
    schau es Dir mal an. Du kannst auch einzelne Funktionen erstellen und jeweils prüfen und testen, dann ist es übersichtlicher.

    Spoiler anzeigen
    [autoit]


    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6

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

    _SoftwareInstall_7zip()

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

    Func _SoftwareInstall_7zip()
    If BitAND(GUICtrlRead($aCkbColumn1[1]), $GUI_CHECKED) = $GUI_CHECKED Then
    Local $7zip = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\7zFM.exe", "Path"), _
    $version7zip = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\7zFM.exe", "DisplayName")

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

    If Not FileExists($7zip & "\7zFM.exe") Then RunWait(@ScriptDir & "\Software\7zip\7-Zip.exe")
    If FileExists($7zip & "\7zFM.exe") Then
    Local $Message = MsgBox(32 + 4, "Installation", "7-Zip " & $version7zip & " ist bereits installiert !" _
    & @TAB & @CRLF & @CRLF & "Soll das Programm deinstalliert werden ?" & @TAB)
    Switch $Message
    Case 6 ;ja
    RunWait($7zip & "\Uninstall.exe /S ")
    RunWait(@ScriptDir & "\Software\7zip\7-Zip.exe")
    Case 7 ;nein
    RunWait(@ScriptDir & "\Software\7zip\7-Zip.exe")
    EndSwitch
    EndIf
    EndIf
    Sleep(1000)
    EndFunc ;==>_SoftwareInstall_7zip

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

    MsgBox(0, " ;)", "Bitteschön !" & @TAB)
    Exit

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

    ; Ende

    [/autoit]
  • Benötige Hilfe bzgl registry Abfrage

    • RR04
    • 16. Mai 2011 um 12:30

    Hallo,
    hier ist es beschrieben:
    http://msdn.microsoft.com/de-de/library/…v=vs.85%29.aspx

    [autoit]


    ;i Deine Abfrage !!
    Local $Ashampoo = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Ashampoo\Ashampoo Burning Studio 2010
    Advanced", "InstallDir"), _
    $versionAshampoo = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Ashampoo\Ashampoo
    Burning Studio 2010 Advanced", "Version")

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

    ;i Warum nicht so abfragen ?
    RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Ashampoo\ ... ")
    RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Ashampoo\ ... ")
    ; Ende

    [/autoit]

    Bei der Stapelverarbeitung von Installationen kann man nicht nach jeder einzelnen einen Neustart machen, so
    würde ich den Neustart auf jeden Fall am Ende anbieten!

    [autoit]


    Func _install()
    ;i MsgBox(0, "", "Installation ...") ;i zur Prüfung der Funktion, also ein Dummy
    _softwareInstall()
    MsgBox(64, "Installation", "Die Installation ist abgeschlossen !" & @TAB) ;i Erfolgsmeldung!
    Exit ;i Beenden
    EndFunc ;==>_install

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

    ;### besser so: ###
    Func _install()
    ;i MsgBox(0, "", "Installation ...") ;i zur Prüfung der Funktion, also ein Dummy
    _softwareInstall()
    ;i Neue Erfolgsmeldung und Nutzer nach Neustart abfragen !
    If MsgBox(32 + 4, "Installation", "Die Installation ist abgeschlossen !" & @TAB & @CRLF _
    & @CRLF & "Den Computer jetzt neu starten ?" & @TAB) = 6 Then Shutdown(6)
    Exit ;i Beenden
    EndFunc ;==>_install

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

    Dateien

    reg2.jpg 47,81 kB – 0 Downloads
  • Icon einer Anwendung ermitteln

    • RR04
    • 16. Mai 2011 um 12:20

    Programme mit Icons EINSEHEN:
    C:\Programme\AutoIt3\Examples\GUI\Advanced\enumicons.au3 :thumbup:

    Programme mit Icons einsehen und BEARBEITEN:
    schau mal nach ResHacker oder XN Resource Editor :rolleyes:

    Icon in AutoIt aufrufen siehe funkey Post #2

  • Benötige Hilfe um mein Script zu vereinfachen

    • RR04
    • 14. Mai 2011 um 21:13

    Hallo Osiris,

    bei Deinem Installer habe ich das Bild- und GUIformat aufeinander abgestimmt, die Labels erstellt und transparent gemacht, sowie die Groupboxen erstellt und transparent gemacht. Du musst noch die Programmnamen statt der Zahlen eintragen. Ach ja schönes Icon hab ich noch gefunden, alles im Anhang ! ;)

    OsirisSoftwareInstaller
    [autoit]


    #RequireAdmin
    #region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_icon=osiris.ico
    #AutoIt3Wrapper_outfile=OSIRIS.exe
    #AutoIt3Wrapper_Res_Description=Osiris Software Installer
    #AutoIt3Wrapper_Res_Fileversion=3.1.0.0
    #AutoIt3Wrapper_Res_LegalCopyright=© 2011 by Osiris
    #AutoIt3Wrapper_Res_Language=1031
    #AutoIt3Wrapper_Res_Field=AutoIt Version|%AutoItVer%
    #AutoIt3Wrapper_Res_Field=Compiled by|Osiris
    #AutoIt3Wrapper_Res_Field=Original Name|Osiris Software Installer
    #AutoIt3Wrapper_Res_Field=Build|%date%
    #AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    #AutoIt3Wrapper_Run_Tidy=y
    #AutoIt3Wrapper_Run_Obfuscator=y
    #Obfuscator_Parameters=/striponly
    #endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #region - TimeStamp
    ; 2011-05-14 20:47:53
    #endregion - TimeStamp

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

    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

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

    Opt("GUIOnEventMode", 1) ;i Eine Gute Wahl -> mehr Macros, leichtere Fenstertechnik

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

    If Not FileExists(@ScriptDir & "\2.jpg") Then FileInstall('2.jpg', @ScriptDir & "\2.jpg", 1)
    ; prüfen ob Hintergrundbild vorhanden ist, wenn nicht, dann auspacken die 1 = Überschreibt bestehende Dateien
    #region ### START Koda GUI section ###
    GUICreate("Osiris Software Installer", 896, 560)
    GUICtrlCreatePic(@ScriptDir & "\2.jpg", 0, 0, 896, 560)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_ende")

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

    GUICtrlCreateGroup("", 170, 31, 185, 485)
    GUICtrlCreateLabel("Silent Install", 182, 16, 185, 17)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetFont(-1, 14, 400, 0, "Old English Text MT")
    ;i #### Start Checkboxarray für 25 Checkboxen ###
    Global $aLBckbColumn1[23] = ["Vlc-Media-Player", "7-Zip", "Firefox 4", "Firefox 3", "Ashampoo Burning", "CC Cleaner", "DVD Shrink", "Fraps 2.9.8", "Img Burn", "Irfan View", _
    "Netframework 4", "OpenOffice", "PartitionsWizard", "PDF Creator", "TeamViewer 6", "TMPGEnc-Plus", "TrueCrypt 7", "Teamspeak 2", "Teamspeak 3", "Unlocker", _
    "VirtualDub", "Winrar 4", "XP-AntiSpy"] ;i zur Beschriftung der Labels
    ;i a- Array + Label-LB + Checkbox-ckb
    Global $aCkbColumn1[23], $aLBColumn1[23] ;i ArrayVariablen (kl. a am Anfang) erstellen der Controls
    ;i a- Array + Checkbox-ckb
    For $i = 0 To 22 ;i statisch kein Ubound - erstellen von 0 - 24 = 25 Checkboxen
    $aCkbColumn1[$i] = GUICtrlCreateCheckbox($aLBckbColumn1[$i], 178, 40 + $i * 19, 13, 13)
    $aLBColumn1[$i] = GUICtrlCreateLabel($aLBckbColumn1[$i], 200, 40 + $i * 19, 120, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "Myriad Web Pro")
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    Next
    ;i #### Ende Checkboxarray ###
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;i Gruppe schliessen

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

    GUICtrlCreateGroup("", 355, 31, 185, 485)
    GUICtrlCreateLabel("User default", 367, 16, 185, 17)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    GUICtrlSetFont(-1, 14, 400, 0, "Old English Text MT")
    GUICtrlSetColor(-1, 0xFFFFFF)
    ;i #### Start Checkboxarray für 25 Checkboxen ###
    Global $aLBckbColumn2[25] = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", _
    "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", _
    "21", "22", "23", "24", "25"] ;i zur Beschriftung der Labels
    ;i a- Array + Label-LB + Checkbox-ckb
    Global $aCkbColumn2[25], $aLBColumn2[25] ;i ArrayVariablen (kl. a am Anfang) erstellen der Controls
    ;i a- Array + Checkbox-ckb
    For $i = 0 To 24 ;i statisch kein Ubound - erstellen von 0 - 24 = 25 Checkboxen
    $aCkbColumn2[$i] = GUICtrlCreateCheckbox($aLBckbColumn2[$i], 363, 40 + $i * 19, 13, 13)
    $aLBColumn2[$i] = GUICtrlCreateLabel($aLBckbColumn2[$i], 386, 40 + $i * 19, 120, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "Myriad Web Pro")
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    ; create 25x Checkbox
    Next
    ;i #### Ende Checkboxarray ###
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;i Gruppe schliessen

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

    GUICtrlCreateGroup("", 540, 31, 185, 485)
    GUICtrlCreateLabel("Portable Apps", 552, 16, 185, 17)
    GUICtrlSetFont(-1, 14, 400, 0, "Old English Text MT")
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    ;i #### Start Checkboxarray für 25 Checkboxen ###
    Global $aLBckbColumn3[25] = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", _
    "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", _
    "21", "22", "23", "24", "25"] ;i zur Beschriftung der Labels
    ;i a- Array + Label-LB + Checkbox-ckb
    Global $aCkbColumn3[25], $aLBColumn3[25] ;i ArrayVariablen (kl. a am Anfang) erstellen der Controls
    ;i a- Array + Checkbox-ckb
    For $i = 0 To 24 ;i statisch kein Ubound - erstellen von 0 - 24 = 25 Checkboxen
    $aCkbColumn3[$i] = GUICtrlCreateCheckbox($aLBckbColumn3[$i], 548, 40 + $i * 19, 13, 13)
    $aLBColumn2[$i] = GUICtrlCreateLabel($aLBckbColumn3[$i], 571, 40 + $i * 19, 120, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "Myriad Web Pro")
    GUICtrlSetColor(-1, 0xFFFFFF)
    GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
    ; create 25x Checkbox
    Next
    ;i #### Ende Checkboxarray ###
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;i Gruppe schliessen

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

    Global $bnInstall = GUICtrlCreateButton("Install", 355, 526, 75, 22)
    GUICtrlSetFont(-1, 9, 400, 0, "Myriad Web Pro")
    GUICtrlSetOnEvent(-1, "_start")
    Global $bnExit = GUICtrlCreateButton("Exit", 465, 526, 75, 22)
    GUICtrlSetFont(-1, 9, 400, 0, "Myriad Web Pro")
    GUICtrlSetOnEvent(-1, "_ende")

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

    GUISetState(@SW_SHOW)
    #endregion ### END Koda GUI section ###

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

    While 1
    Sleep(100)
    WEnd

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

    Func _start()
    Local $Msg = MsgBox(32 + 4, "Installation", "Soll mit der Installation begonnen werden ?" & @TAB)
    If $Msg = 7 Then
    ConsoleWrite("Abbruch durch den Nutzer !" & @CRLF)
    Else
    _install()
    EndIf
    EndFunc ;==>_start

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

    Func _install()
    ;i MsgBox(0, "", "Installation ...") ;i zur Prüfung der Funktion, also ein Dummy
    _softwareInstall()
    MsgBox(64, "Installation", "Die Installation ist abgeschlossen !" & @TAB) ;i Erfolgsmeldung!
    Exit ;i Beenden
    EndFunc ;==>_install

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

    Func _softwareInstall()
    ;i ist die Checkbox mit Namen "$aCkbColumn1[0]" aktiv, wenn ja dann ...
    If BitAND(GUICtrlRead($aCkbColumn1[0]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\VLC\vlc.exe") Then
    MsgBox(48, "Installations abbruch", "Programm VLC Media Player ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("vlc-1.1.9-win32.exe")
    Else
    RunWait("Software\vlc\vlc-1.1.9-win32.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[1]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\7-Zip\7z.exe") Then
    MsgBox(48, "Installations abbruch", "Programm 7Zip ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("7-Zip.exe.exe")
    Else
    RunWait("Software\7zip\7-Zip.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[2]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Mozilla Firefox\firefox.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Firefox 4.0 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("MozillaFirefox4.0.exe")
    Else
    RunWait("Software\firefox4\MozillaFirefox4.0.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[3]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Mozilla Firefox\firefox.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Firefox 3.6 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("MozillaFirefox.exe")
    Else
    RunWait("Software\firefox3.6\MozillaFirefox.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[4]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Ashampoo\Ashampoo Burning Studio 2010 Advanced\burningstudio2010adv.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Ashampoo Burning Studio ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("asinstall.exe")
    Else
    RunWait("Software\ashampoo\asinstall.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[5]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\CCleaner 3.05.1408 [Portable]\CCleaner.exe") Then
    MsgBox(48, "Installations abbruch", "Programm CC Cleaner ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("CCleaner.exe")
    Else
    RunWait("Software\cc cleaner\CCleaner.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[6]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\DVD Shrink\DVD Shrink 3.2.exe") Then
    MsgBox(48, "Installations abbruch", "Programm DVD Shrink ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("DAEMON.exe")
    Else
    RunWait("Software\dvdshrink\DVD_Shrink.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[7]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\fraps\fraps.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Fraps ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("Fraps_v2.9.8.exe")
    Else
    RunWait("Software\fraps\Fraps_v2.9.8.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[8]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\ImgBurn\ImgBurn.exe") Then
    MsgBox(48, "Installations abbruch", "Programm ImgBurn ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("Imgburninstall.exe")
    Else
    RunWait("Software\imgburn\Imgburninstall.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[9]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\IrfanView\i_view32.exe") Then
    MsgBox(48, "Installations abbruch", "Programm IrfanView ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("IrfanView427.exe")
    Else
    RunWait("Software\irfanview\IrfanView427.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[10]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Microsoft.NET\RedistList\AssemblyList_4_client.xml") Then
    MsgBox(48, "Installations abbruch", "Programm NETFramework4 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("NETFramework4.exe")
    Else
    RunWait("Software\Netframework4\NETFramework4.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[11]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\OpenOffice.org 3\program\soffice.exe") Then
    MsgBox(48, "Installations abbruch", "Programm OpenOffice ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("OpenOffice.exe")
    Else
    RunWait("Software\openoffice\OpenOffice.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[12]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Partition Wizard Home Edition 5.2\PartitionWizard.exe") Then
    MsgBox(48, "Installations abbruch", "Programm PartitionsWizard ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("PartitionWizard.exe")
    Else
    RunWait("Software\partition\PartitionWizard.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[13]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\PDFCreator\PDFCreator.exe") Then
    MsgBox(48, "Installations abbruch", "Programm PDF Creator ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("creator.exe")
    Else
    RunWait("Software\pdf creator\creator.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[14]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\TeamViewer 6\TeamViewer.exe") Then
    MsgBox(48, "Installations abbruch", "Programm TeamViewer6 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("creator.exe")
    Else
    RunWait("Software\teamviewer6\TeamViewer6.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[15]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Pegasys Inc\TMPGEnc Plus 2.5\TMPGEnc.exe") Then
    MsgBox(48, "Installations abbruch", "Programm TMPGEnc Plus ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("TMPGEnc_Plus_25.exe")
    Else
    RunWait("Software\tmpeg\TMPGEnc_Plus_25.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[16]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\TrueCrypt 7\TrueCrypt.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Truecrypt 7 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("TrueCrypt7.exe")
    Else
    RunWait("Software\truecrypt\TrueCrypt7.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[17]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Teamspeak2_RC2\TeamSpeak.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Teamspeak 2 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("ts2.exe")
    Else
    RunWait("Software\ts2\ts2.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[18]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\TeamSpeak 3 Client\ts3client_win32.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Teamspeak 3 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("ts3.exe")
    Else
    RunWait("Software\ts3\ts3.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[19]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\TeamSpeak 3 Client\ts3client_win32.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Teamspeak 3 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("TeamSpeak3.exe")
    Else
    RunWait("Software\ts3\TeamSpeak3.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[20]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\Unlocker 1.9\Unlocker.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Unlocker ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("Unlocker.exe")
    Else
    RunWait("Software\unlocker\Unlocker.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[21]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\VirtualDub 1.9.10 (stable) [x86]\VirtualDub.exe") Then
    MsgBox(48, "Installations abbruch", "Programm VirtualDub ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("VirtualDub.exe")
    Else
    RunWait("Software\virtualdub\VirtualDub.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[22]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\WinRAR\WinRAR.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Winrar 4 ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("winrar4.exe")
    Else
    RunWait("Software\winrar4\winrar4.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn1[23]), $GUI_CHECKED) = $GUI_CHECKED Then
    If FileExists(@ProgramFilesDir & "\xp-AntiSpy 3.97-11 [Portable]\xp-AntiSpy.exe") Then
    MsgBox(48, "Installations abbruch", "Programm Xp AntiSpy ist schon vorhanden." & @CR & _
    "Bitte deinstalliere erst die alte Version!!" & @CR & _
    "Klicke Ok um mit den anderen Installationen fortzufahren, oder warte 5 Sekunden", 5)
    ProcessClose("xpAntiSpy.exe")
    Else
    RunWait("Software\xpantispy\xpAntiSpy.exe")
    EndIf
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[0]), $GUI_CHECKED) = $GUI_CHECKED Then
    MsgBox(64, "Ordner erstellen", "Es wird nun ein Desktop Ordner für PortableApps erstellt", 5)
    DirCreate(@DesktopDir & "\PortableApps\FirefoxPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\FirefoxPortable", @DesktopDir & "\PortableApps\FirefoxPortable", 1)
    MsgBox(1, "PortableApps", "Programm FirefoxPortable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[1]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\VLCPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\VLCPortable", @DesktopDir & "\PortableApps\VLCPortable", 1)
    MsgBox(1, "PortableApps", "Programm Vlc Media Player Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[2]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\TeamViewerPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\TeamViewerPortable", @DesktopDir & "\PortableApps\TeamViewerPortable", 1)
    MsgBox(1, "PortableApps", "Programm TeamViewer Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[3]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\7-ZipPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\7-ZipPortable", @DesktopDir & "\PortableApps\7-ZipPortable", 1)
    MsgBox(1, "PortableApps", "Programm 7-Zip Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[4]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\OpenOfficePortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\OpenOfficePortable", @DesktopDir & "\PortableApps\OpenOfficePortable", 1)
    MsgBox(1, "PortableApps", "Programm OpenOffice Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[5]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\ThunderbirdPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\ThunderbirdPortable", @DesktopDir & "\PortableApps\ThunderbirdPortable", 1)
    MsgBox(1, "PortableApps", "Programm Thunderbird Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[6]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\FoxitReaderPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\FoxitReaderPortable", @DesktopDir & "\PortableApps\FoxitReaderPortable", 1)
    MsgBox(1, "PortableApps", "Programm FoxitReader Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[7]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\FileZillaPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\FileZillaPortable", @DesktopDir & "\PortableApps\FileZillaPortable", 1)
    MsgBox(1, "PortableApps", "Programm FileZilla Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    If BitAND(GUICtrlRead($aCkbColumn3[8]), $GUI_CHECKED) = $GUI_CHECKED Then
    DirCreate(@DesktopDir & "\PortableApps\SpybotPortable\")
    Sleep(500)
    DirCopy(@ScriptDir & "\PortableApps\SpybotPortable", @DesktopDir & "\PortableApps\SpybotPortable", 1)
    MsgBox(1, "PortableApps", "Programm Spybot Portable wurde in den PortableApps Ordner integriert", 3)
    EndIf
    EndFunc ;==>_softwareInstall

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

    Func _ende()
    Exit
    EndFunc ;==>_ende

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

    ; Ende

    [/autoit]

    Dateien

    SoftwareInstaller.zip 339,74 kB – 200 Downloads
  • Benötige Hilfe um mein Script zu vereinfachen

    • RR04
    • 13. Mai 2011 um 22:16

    Ah, das ist ja rafiniert. ;)
    Also nur noch zusammenbauen :whistling:
    Tschüß dann.

  • Benötige Hilfe um mein Script zu vereinfachen

    • RR04
    • 13. Mai 2011 um 21:56

    Das ist schon OK, aber die Fläche der Checkboxen sehen ja wie Gitter aus. Das meinte ich.
    Die Schalter kannst Du jetzt verwenden. Ich melde mich erst einmal für heute ab!

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Icon=DeinIcon.ico ;i DeinIcon.ico
    #AutoIt3Wrapper_Outfile=OSI.exe
    #AutoIt3Wrapper_Res_Description=Osoris Software Installer
    #AutoIt3Wrapper_Res_Fileversion=3.1
    #AutoIt3Wrapper_Res_LegalCopyright=© 2011 by Osoris
    #AutoIt3Wrapper_Res_Language=1031
    #AutoIt3Wrapper_Res_Field=AutoIt Version|%AutoItVer%
    #AutoIt3Wrapper_Res_Field=Compiled by|Osoris
    #AutoIt3Wrapper_Res_Field=Original Name|Osoris Software Installer
    #AutoIt3Wrapper_Res_Field=Build|%date%
    #AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
    #AutoIt3Wrapper_Run_Tidy=y
    #AutoIt3Wrapper_Run_Obfuscator=y
    #Obfuscator_Parameters=/striponly
    #endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #region - TimeStamp
    ; 2011-05-13 13:31:34
    #endregion - TimeStamp

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

    #RequireAdmin

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

    ;~ $GUI_EVENT_MINIMIZE —> GUIConstantsEx.au3
    ;~ $GUI_EVENT_MAXIMIZE —> GUIConstantsEx.au3
    ;~ $GUI_EVENT_RESTORE —> GUIConstantsEx.au3
    ;~ $GUI_UNCHECKED —> GUIConstantsEx.au3

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

    Opt("GUIOnEventMode", 1) ;i Eine Gute Wahl -> mehr Macros, leichtere Fenstertechnik

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

    #region ### START Koda GUI section ###
    GUICreate("Osoris Software Installer", 590, 560, -1, -1)
    GUICtrlCreatePic(@ScriptDir & "\bg2.jpg", -1, -1, 590, 560)
    GUICtrlSetState(-1, $GUI_DISABLE) ; <-- Das Bild selbst darf nicht auf Mausklicks reagieren

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

    GUISetOnEvent($GUI_EVENT_CLOSE, "_ende")
    GUISetOnEvent($GUI_EVENT_MINIMIZE, "Form1Minimize")
    GUISetOnEvent($GUI_EVENT_MAXIMIZE, "Form1Maximize")
    GUISetOnEvent($GUI_EVENT_RESTORE, "Form1Restore")

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

    GUICtrlCreateGroup("Silent Install", 16, 16, 185, 500)
    GUICtrlSetFont(-1, 14, 400, 0, "Old English Text MT")
    ;i #### Start Checkboxarray für 25 Checkboxen ###
    Global $aLBckbColumn1[25] = ["V L C", "2", "3", "4", "5", "6", "7", "8", "9", "10", _
    "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", _
    "21", "22", "23", "24", "25"] ;i zur Beschriftung der Labels
    ;i a- Array + Label-LB + Checkbox-ckb
    Global $aCkbColumn1[25] ;i ArrayVariablen (kl. a am Anfang) erstellen der Controls
    ;i a- Array + Checkbox-ckb
    For $i = 0 To 24 ;i statisch kein Ubound - erstellen von 0 - 24 = 25 Checkboxen
    $aCkbColumn1[$i] = GUICtrlCreateCheckbox($aLBckbColumn1[$i], 24, 40 + $i * 19, 153, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "Myriad Web Pro")
    ; create 25x Checkbox
    Next
    ;i #### Ende Checkboxarray ###
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;i Gruppe schliessen

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

    GUICtrlCreateGroup("User default", 200, 16, 185, 500)
    GUICtrlSetFont(-1, 14, 400, 0, "Old English Text MT")
    ;i #### Start Checkboxarray für 25 Checkboxen ###
    Global $aLBckbColumn2[25] = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", _
    "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", _
    "21", "22", "23", "24", "25"] ;i zur Beschriftung der Labels
    ;i a- Array + Label-LB + Checkbox-ckb
    Global $aCkbColumn2[25] ;i ArrayVariablen (kl. a am Anfang) erstellen der Controls
    ;i a- Array + Checkbox-ckb
    For $i = 0 To 24 ;i statisch kein Ubound - erstellen von 0 - 24 = 25 Checkboxen
    $aCkbColumn2[$i] = GUICtrlCreateCheckbox($aLBckbColumn2[$i], 210, 40 + $i * 19, 153, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "Myriad Web Pro")
    ; create 25x Checkbox
    Next
    ;i #### Ende Checkboxarray ###
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;i Gruppe schliessen

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

    GUICtrlCreateGroup("Portable Apps ", 384, 16, 185, 500)
    GUICtrlSetFont(-1, 14, 400, 0, "Old English Text MT")
    ;i #### Start Checkboxarray für 25 Checkboxen ###
    Global $aLBckbColumn3[25] = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", _
    "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", _
    "21", "22", "23", "24", "25"] ;i zur Beschriftung der Labels
    ;i a- Array + Label-LB + Checkbox-ckb
    Global $aCkbColumn3[25] ;i ArrayVariablen (kl. a am Anfang) erstellen der Controls
    ;i a- Array + Checkbox-ckb
    For $i = 0 To 24 ;i statisch kein Ubound - erstellen von 0 - 24 = 25 Checkboxen
    $aCkbColumn3[$i] = GUICtrlCreateCheckbox($aLBckbColumn3[$i], 400, 40 + $i * 19, 153, 17)
    GUICtrlSetFont(-1, 10, 400, 0, "Myriad Web Pro")
    ; create 25x Checkbox
    Next
    ;i #### Ende Checkboxarray ###
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;i Gruppe schliessen

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

    Global $bnInstall = GUICtrlCreateButton("Install", 392, 526, 83, 22)
    GUICtrlSetFont(-1, 9, 400, 0, "Myriad Web Pro")
    GUICtrlSetOnEvent(-1, "_start")
    Global $bnExit = GUICtrlCreateButton("Exit", 480, 526, 75, 22)
    GUICtrlSetFont(-1, 9, 400, 0, "Myriad Web Pro")
    GUICtrlSetOnEvent(-1, "_ende")

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

    GUISetState(@SW_SHOW)
    #endregion ### END Koda GUI section ###

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

    While 1
    Sleep(100)
    WEnd

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

    Func _start()
    Local $Msg = MsgBox(32 + 4, "Installation", "Soll mit der Installation begonnen werden ?" & @TAB)
    If $Msg = 7 Then
    ConsoleWrite("Abbruch durch den Nutzer !" & @CRLF)
    Else
    _install()
    EndIf
    EndFunc ;==>_start

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

    Func _install()
    ;i MsgBox(0, "", "Installation ...") ;i zur Prüfung der Funktion, also ein Dummy
    _softwareInstall_01()
    ; [...]
    ;_softwareInstall_75()
    MsgBox(64, "Installation", "Die Installation ist abgeschlossen !" & @TAB) ;i Erfolgsmeldung!
    Exit ;i Beenden
    EndFunc ;==>_install

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

    #region ### CheckVLC Section ###
    Func _softwareInstall_01()
    ;i Aut(h)or: by Ritzelrocker04

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

    ;i ist die Checkbox mit Namen "$aCkbColumn1[0]" aktiv, wenn ja dann ...
    If BitAND(GUICtrlRead($aCkbColumn1[0]), $GUI_CHECKED) = $GUI_CHECKED Then

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

    Local $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir"), _
    $versionVLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "Version")
    Local $VLC = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VLC", "InstallDir"), _
    $versionVLC = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VLC", "Version")

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

    ;i ... Abfrage ob VLC schon auf dem PC unter VideoLAN installiert ist ...
    If FileExists($VLN & "\vlc.exe") Then
    ;i ... dann ermittle die installierte Version von VLC ...
    ConsoleWrite("VLC media player " & $versionVLN & " ist installiert" _
    & @CRLF & " und befindet sich in: " & $VLN & "\vlc.exe")
    ;i Meldung an den Nutzer über die vorhandene VLCversion, ...
    ;i ... Frage ob diese deinstalliert werden soll, wenn ja dann Deinstallation!
    If MsgBox(32 + 4, "Installation", "VLC media player " & $versionVLN & _
    " ist bereits installiert !" & @TAB & @CRLF & @CRLF & _
    "Soll das Programm deinstalliert werden ?" & @TAB) = 6 Then RunWait($VLN & "\uninstall.exe")
    ;i ... Anfrage ob VLC schon auf dem PC unter VLC installiert ist ...
    ElseIf FileExists($VLC & "\vlc.exe") Then
    ;i ... dann ermittle die installierte Version von VLC ...
    ConsoleWrite("VLC media player " & $versionVLN & " ist installiert" _
    & @CRLF & " und befindet sich in: " & $VLN & "\vlc.exe")
    ;i Meldung an den Nutzer über die vorhandene VLCversion, ...
    ;i ... Frage ob diese deinstalliert werden soll, wenn ja dann Deinstallation!
    If MsgBox(32 + 4, "Installation", "VLC media player " & $versionVLC & _
    " ist bereits installiert !" & @TAB & @CRLF & @CRLF & _
    "Soll das Programm deinstalliert werden ?" & @TAB) = 6 Then RunWait($VLC & "\uninstall.exe")
    Else
    ;i VLC aus Deinem Softwarepool installieren!
    RunWait(@ScriptDir & "\Software\vlc\vlc.exe")
    EndIf
    EndIf
    Sleep(1000) ;i Wartezeit bis zum Aufruf einer weiteren Funktion
    EndFunc ;==>_softwareInstall_01
    #endregion ### CheckVLC Section ###

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

    Func _ende()
    Exit
    EndFunc ;==>_ende

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

    Func Form1Maximize()
    ; [...]
    EndFunc ;==>Form1Maximize

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

    Func Form1Minimize()
    ; [...]
    EndFunc ;==>Form1Minimize

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

    Func Form1Restore()
    ; [...]
    EndFunc ;==>Form1Restore

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

    ; Ende

    [/autoit]
  • Benötige Hilfe um mein Script zu vereinfachen

    • RR04
    • 13. Mai 2011 um 21:27

    Wie weit bist du denn jetzt? Zeig doch mal vielleicht kommen wir noch drauf ? ;)

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™