Du hast die Variable "$GUI_EVENT_CLOSE" angewendet die "-3" ist der Wert in dieser Variable und Du sparst das Include. ![]()
Beiträge von RR04
-
-
Hi, besser so:
Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#include <StaticConstants.au3>
#include <WindowsConstants.au3>;~ $SS_NOTIFY —> StaticConstants.au3
[/autoit] [autoit][/autoit] [autoit]
;~ $WS_CLIPSIBLINGS —> WindowsConstants.au3HotKeySet("{F7}", "_Start")
[/autoit] [autoit][/autoit] [autoit]
HotKeySet("{F8}", "_Exit")#region ### START Koda GUI section ###
[/autoit] [autoit][/autoit] [autoit]
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 ###While 1
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
Switch GUIGetMsg()
Case -3
_Exit() ;i Die Funktion starten
Case $Event
_Start() ;i Die Funktion starten
EndSwitch
WEndFunc _Start() ;i Die Funktion
[/autoit] [autoit][/autoit] [autoit]
Sleep(10000)
Send("{ENTER}")
Sleep(300)
Send("Guten Tag")
Sleep(300)
Send("{ENTER}")
EndFunc ;==>_StartFunc _Exit() ;i Die Funktion selbst
[/autoit]
Exit
EndFunc ;==>_Exit
; Ende -
Hi,
[autoit]
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)) -
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!"
[autoit]
[/autoit]
#Include <String.au3>
_StringRepeat($sString, $iRepeatCount) -
Das hatte funkey mal geschrieben.

Spoiler anzeigen
[autoit]
[/autoit] [autoit][/autoit] [autoit]
_Print_LV($hListView)Func _Print_LV($hListView)
[/autoit]
;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 -
Hi,
hier vielleicht ?
_ListView_HTMLprint -
Hi,
müsste auch so gehen (habe zur Zeit kein AutoIt):
[autoit][/autoit][autoit][/autoit][autoit]Global $tate = $GUI_ENABLE ;i Voreinstellung
[/autoit]
$tate = BitXOR($tate, $GUI_ENABLE, $GUI_DISABLE)
; Ende -
Hi, auch von mir ein Herzliches Willkommen und viel Spaß hier !
[autoit][/autoit][autoit][/autoit][autoit]
#AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
;~ _FileReadToArray —> File.au3
;~ _ArrayDisplay —> Array.au3#include <Array.au3>
[/autoit][autoit][/autoit][autoit]
#include <File.au3>Global $file = @ScriptDir & "/myIni.ini" ; Path & Name to inifile
[/autoit][autoit][/autoit][autoit]
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#cs
[/autoit][autoit][/autoit][autoit]
;i Deine ini-DateimyIni.ini
[/autoit][autoit][/autoit][autoit]
[deutsch]
18.05.2011=7
19.05.2011=20
#ce; 2. Example
[/autoit][autoit][/autoit][autoit][/autoit]
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]
#AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#cs
_SoftwareInstall_vlc()Func _SoftwareInstall_vlc()
[/autoit][autoit][/autoit][autoit]
;! 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")If Not FileExists($VLN & "\vlc.exe") Then RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
[/autoit][autoit][/autoit][autoit]
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
#ceGlobal $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir")
[/autoit][autoit][/autoit][autoit]
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;i Beschreibung:
[/autoit][autoit][/autoit][autoit][/autoit]
;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)" ! -
BugFix hat dazu mal eine Funktion geschrieben.
Ein Beispiel für eine einfache Umsetzung direkt im Script siehe hier:
[autoit]
[/autoit][autoit][/autoit][autoit]
;i Aut(h)or: Blume
;i http://www.autoit.de/index.php?page…7453#post217453
#NoTrayIconGlobal $bEmptyDll = "Deine Binär-Datei ..."
[/autoit][autoit][/autoit][autoit]Global $hMainGui = GUICreate("EmptyDllCreator", 250, 48)
[/autoit][autoit][/autoit][autoit]
Global $hMainCreate = GUICtrlCreateButton("Create empty Dll", 8, 8, 234, 32)
GUISetState()While 1
[/autoit][autoit][/autoit][autoit]
Switch GUIGetMsg()
Case -3
Exit
Case $hMainCreate
$sSave = FileSaveDialog("EmptyDllCreator", "", "Dynamic Link Libary (*.dll)", 18, "", $hMainGui)
If @error Then ContinueLoopIf StringRight($sSave, 4) <> ".dll" Then $sSave &= ".dll"
[/autoit][autoit][/autoit][autoit]$hFile = FileOpen($sSave, 18) ;Binary mode + Write mode (Erease old Content)
[/autoit][autoit][/autoit][autoit]
FileWrite($hFile, $bEmptyDll)
FileClose($hFile)Exit
[/autoit][autoit][/autoit][autoit][/autoit]
EndSwitch
WEnd -
Hi, hier mal eine mögl. Lösung zu VLC für 7-zip hab ich mal drinen gelassen !
[autoit]
[/autoit][autoit][/autoit][autoit]
#AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6_SoftwareInstall_vlc()
[/autoit][autoit][/autoit][autoit]Func _SoftwareInstall_vlc()
[/autoit][autoit][/autoit][autoit]
;! 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")If Not FileExists($VLN & "\vlc.exe") Then RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe") ;i Hier Anpassungen vornehmen!
[/autoit][autoit][/autoit][autoit]
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_vlcMsgBox(0, " ;)", "Bitteschön !" & @TAB)
[/autoit][autoit][/autoit][autoit]
Exit;i Beschreibung:
[/autoit][autoit][/autoit][autoit]
;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#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()
[/autoit][autoit][/autoit][autoit]
;! 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")If Not FileExists($7zip & "\7zFM.exe") Then RunWait(@ScriptDir & "\7z920.exe") ;i Hier Anpassungen vornehmen!
[/autoit][autoit][/autoit][autoit]
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_7zipMsgBox(0, " ;)", "Bitteschön !" & @TAB)
[/autoit][autoit][/autoit][autoit]
Exit;i Das hier gezeigte Script für 7-zip ist bei mir funktionstüchtig, keine Fenster da Silentdeinstall !
[/autoit][autoit][/autoit][autoit][/autoit]
#ce -
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]
[/autoit] [autoit][/autoit] [autoit]
#cs
#AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6_SoftwareInstall_7zip()
[/autoit] [autoit][/autoit] [autoit]Func _SoftwareInstall_7zip()
[/autoit] [autoit][/autoit] [autoit]
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")If Not FileExists($7zip & "\7zFM.exe") Then RunWait(@ScriptDir & "\7z920.exe")
[/autoit] [autoit][/autoit] [autoit]
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_7zipMsgBox(0, " ;)", "Bitteschön !" & @TAB)
[/autoit] [autoit][/autoit] [autoit]
Exit
#ce#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()
[/autoit] [autoit][/autoit] [autoit]
Local $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir"), _
$versionVLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "Version")ConsoleWrite($versionVLN & " " & $VLN)
[/autoit] [autoit][/autoit] [autoit]If Not FileExists($VLN & "\vlc.exe") Then RunWait(@ScriptDir & "\vlc-1.1.9-win32.exe")
[/autoit] [autoit][/autoit] [autoit]
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_vlcMsgBox(0, " ;)", "Bitteschön !" & @TAB)
[/autoit] [autoit][/autoit] [autoit]
Exit; Ende
[/autoit] -
Hi,
FileRead:
Liest eine bestimmte Anzahl von Zeichen aus einer zuvor geöffneten Textdatei (FileOpen()) !
-
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]
[/autoit] [autoit][/autoit] [autoit]
#AutoIt3Wrapper_AU3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6_SoftwareInstall_7zip()
[/autoit] [autoit][/autoit] [autoit]Func _SoftwareInstall_7zip()
[/autoit] [autoit][/autoit] [autoit]
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")If Not FileExists($7zip & "\7zFM.exe") Then RunWait(@ScriptDir & "\Software\7zip\7-Zip.exe")
[/autoit] [autoit][/autoit] [autoit]
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_7zipMsgBox(0, " ;)", "Bitteschön !" & @TAB)
[/autoit] [autoit][/autoit] [autoit]
Exit; Ende
[/autoit] -
Hallo,
[autoit]
hier ist es beschrieben:
http://msdn.microsoft.com/de-de/library/…v=vs.85%29.aspx
[/autoit][autoit][/autoit][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");i Warum nicht so abfragen ?
[/autoit]
RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Ashampoo\ ... ")
RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Ashampoo\ ... ")
; EndeBei der Stapelverarbeitung von Installationen kann man nicht nach jeder einzelnen einen Neustart machen, so
[autoit]
würde ich den Neustart auf jeden Fall am Ende anbieten!
[/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;### besser so: ###
[/autoit][autoit][/autoit][autoit][/autoit]
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 -
Programme mit Icons EINSEHEN:
C:\Programme\AutoIt3\Examples\GUI\Advanced\enumicons.au3
Programme mit Icons einsehen und BEARBEITEN:
schau mal nach ResHacker oder XN Resource Editor
Icon in AutoIt aufrufen siehe funkey Post #2
-
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]
[/autoit] [autoit][/autoit] [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#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <StaticConstants.au3>
#include <WindowsConstants.au3>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)
[/autoit] [autoit][/autoit] [autoit]
; 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")GUICtrlCreateGroup("", 170, 31, 185, 485)
[/autoit] [autoit][/autoit] [autoit]
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 schliessenGUICtrlCreateGroup("", 355, 31, 185, 485)
[/autoit] [autoit][/autoit] [autoit]
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 schliessenGUICtrlCreateGroup("", 540, 31, 185, 485)
[/autoit] [autoit][/autoit] [autoit]
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 schliessenGlobal $bnInstall = GUICtrlCreateButton("Install", 355, 526, 75, 22)
[/autoit] [autoit][/autoit] [autoit]
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")GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]
#endregion ### END Koda GUI section ###While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc _start()
[/autoit] [autoit][/autoit] [autoit]
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 ;==>_startFunc _install()
[/autoit] [autoit][/autoit] [autoit]
;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 ;==>_installFunc _softwareInstall()
[/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
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 ;==>_softwareInstallFunc _ende()
[/autoit] [autoit][/autoit] [autoit]
Exit
EndFunc ;==>_ende; Ende
[/autoit] -
Ah, das ist ja rafiniert.

Also nur noch zusammenbauen
Tschüß dann. -
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]
[/autoit] [autoit][/autoit] [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#RequireAdmin
[/autoit] [autoit][/autoit] [autoit];~ $GUI_EVENT_MINIMIZE —> GUIConstantsEx.au3
[/autoit] [autoit][/autoit] [autoit]
;~ $GUI_EVENT_MAXIMIZE —> GUIConstantsEx.au3
;~ $GUI_EVENT_RESTORE —> GUIConstantsEx.au3
;~ $GUI_UNCHECKED —> GUIConstantsEx.au3Opt("GUIOnEventMode", 1) ;i Eine Gute Wahl -> mehr Macros, leichtere Fenstertechnik
[/autoit] [autoit][/autoit] [autoit]#region ### START Koda GUI section ###
[/autoit] [autoit][/autoit] [autoit]
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 reagierenGUISetOnEvent($GUI_EVENT_CLOSE, "_ende")
[/autoit] [autoit][/autoit] [autoit]
GUISetOnEvent($GUI_EVENT_MINIMIZE, "Form1Minimize")
GUISetOnEvent($GUI_EVENT_MAXIMIZE, "Form1Maximize")
GUISetOnEvent($GUI_EVENT_RESTORE, "Form1Restore")GUICtrlCreateGroup("Silent Install", 16, 16, 185, 500)
[/autoit] [autoit][/autoit] [autoit]
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 schliessenGUICtrlCreateGroup("User default", 200, 16, 185, 500)
[/autoit] [autoit][/autoit] [autoit]
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 schliessenGUICtrlCreateGroup("Portable Apps ", 384, 16, 185, 500)
[/autoit] [autoit][/autoit] [autoit]
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 schliessenGlobal $bnInstall = GUICtrlCreateButton("Install", 392, 526, 83, 22)
[/autoit] [autoit][/autoit] [autoit]
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")GUISetState(@SW_SHOW)
[/autoit] [autoit][/autoit] [autoit]
#endregion ### END Koda GUI section ###While 1
[/autoit] [autoit][/autoit] [autoit]
Sleep(100)
WEndFunc _start()
[/autoit] [autoit][/autoit] [autoit]
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 ;==>_startFunc _install()
[/autoit] [autoit][/autoit] [autoit]
;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#region ### CheckVLC Section ###
[/autoit] [autoit][/autoit] [autoit]
Func _softwareInstall_01()
;i Aut(h)or: by Ritzelrocker04;i ist die Checkbox mit Namen "$aCkbColumn1[0]" aktiv, wenn ja dann ...
[/autoit] [autoit][/autoit] [autoit]
If BitAND(GUICtrlRead($aCkbColumn1[0]), $GUI_CHECKED) = $GUI_CHECKED ThenLocal $VLN = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\VideoLAN\VLC", "InstallDir"), _
[/autoit] [autoit][/autoit] [autoit]
$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");i ... Abfrage ob VLC schon auf dem PC unter VideoLAN installiert ist ...
[/autoit] [autoit][/autoit] [autoit]
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 ###Func _ende()
[/autoit] [autoit][/autoit] [autoit]
Exit
EndFunc ;==>_endeFunc Form1Maximize()
[/autoit] [autoit][/autoit] [autoit]
; [...]
EndFunc ;==>Form1MaximizeFunc Form1Minimize()
[/autoit] [autoit][/autoit] [autoit]
; [...]
EndFunc ;==>Form1MinimizeFunc Form1Restore()
[/autoit] [autoit][/autoit] [autoit]
; [...]
EndFunc ;==>Form1Restore; Ende
[/autoit] -
Wie weit bist du denn jetzt? Zeig doch mal vielleicht kommen wir noch drauf ?
