Jump to content

Autoit De Otomatik Saniyeli Kurulum ?


007combatant

Recommended Posts

S.a Arkadaşlar ben Autoit de birşeyler yapmak istiyorum ama bir yerde takıldım.

Şimdi ben bir autoitde bir exe yapmak istiyorum bu exe çalışınca bir pencere açacak orda 30 saniye geri sayım olacak geri sayım tamamlanınca otokur.exe diye bir şeyi çalıştıracak. ve bu pencerede iki buton olacak birisi iptal buna basılında gerisayım durup pencere kapanacak. diğer buton otomatik kur buda gerisayımı beklemeden otokur.exe yi çalıştıracak. bunu nasıl yapabilirim.

ben pencere getirmek için şu kodu buldum

MsgBox(1, "Otomatik kurulum", "30 saniye sonra otomatik olarak driverlar kurulacak. Elle kurulum için iptal e tıklayın")

MsgBox tan sonraki 1 i başka sayılar yapınca pencerenin yapısı değişiyor mesela 0 tek butonlu. ama bunda gerisayım yok butona yazıda yazamıyorum komutda veremiyorum. yardımcı olurmusunuz.

Link to comment
Share on other sites

Daha önce forumda bir konu için karaladığım aşağıdaki scripth senin işini görecektir.

Ayrıca fare ve klevyeye dokunursan geri sayım işlemi durur...

Kolay gelsin...

sshot-11.png

Opt("GUIOnEventMode", 1)
Dim $SANIYE[5] = [30,TimerInit(),0,True,30],$New_Input
Dim $Form1,$Label1,$Progress1,$Button1,$Button2
$Form1 = GUICreate("Özel Kurulum Seçenekleri...", 400, 135,-1,-1,Bitor(0x80880000,0x00C00000))
GUISetOnEvent(-3, "OnAutoItExit")
GUISetBkColor(0x0d8be9)
GUICtrlCreateIcon(@SystemDir & "\shell32.dll", 24, 15, 10,48,48)
$Label1 = GUICtrlCreateLabel("Saniye bittiğinde otomatik kur çalıştırılacak." & @CRLF & "Iptal etmek istiyormusun?", 70, 10, 320, 75,0x01)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFFFFFF)
$Progress1 = GUICtrlCreateProgress(10, 75, 380, 20)
GUICtrlSetData($Progress1, (100/$SANIYE[4]) * $SANIYE[2])
$Button1 = GUICtrlCreateButton("Evet", 10, 100, 185, 25)
GUICtrlSetOnEvent(-1, "BTN1")
$Button2 = GUICtrlCreateButton("Hayır - " & $SANIYE[0] & " Saniye",205, 100, 185, 25,0x0001)
GUICtrlSetOnEvent(-1, "BTN2")
GUISetState(@SW_SHOW)
Sleep(500)
$New_Input = _NEW_INPUT()
While 1
    If $SANIYE[2] +1 = Round(TimerDiff($SANIYE[1]) / 1000) And ($SANIYE[0] > 0 And $SANIYE[3]) Then
        $SANIYE[2] += 1
        $SANIYE[0] -= 1
        GUICtrlSetData($Progress1, (100/$SANIYE[4]) * $SANIYE[2])
        GUICtrlSetData($Button2, "Hayır - " & $SANIYE[0] & " Saniye")
    EndIf
    If $New_Input <> _NEW_INPUT() And $SANIYE[3] Then
        $SANIYE[3] = Not $SANIYE[3]
        GUICtrlSetData($Button2, "Hayır")
    EndIf
    If $SANIYE[0] <= 0 Then BTN2()
    Sleep(100)
WEnd
Func _NEW_INPUT($B_User32Dll = 'user32.dll')
    Local $str_NEW_INPUT = DllStructCreate('uint;dword')
    DllStructSetData($str_NEW_INPUT, 1, DllStructGetSize($str_NEW_INPUT))
    DllCall($B_User32Dll, 'int', 'GetLastInputInfo', 'ptr', DllStructGetPtr($str_NEW_INPUT))
    Return DllStructGetData($str_NEW_INPUT, 2)
EndFunc

Func BTN1()
    Exit
EndFunc

Func BTN2()
	Local $OtoKur = @ScriptDir & "\otokur.exe"
	If FileExists($OtoKur) Then 
		Run($OtoKur)
	Else
		MsgBox(16,Default,$OtoKur & " dosyası bulunamadı!")
	EndIf
    Exit
EndFunc

Func OnAutoItExit()
    Exit
EndFunc

Edit:

Ufak bir düzenleme + resim

Link to comment
Share on other sites

Arkadaşım araştırdım zaten ama bulamadım burada autoit ile bazı çalışmaların yapıldığını gördüm herhalde burada anlayan vardır dedim. Araştırmam için iyi bildiğiniz bir yer varsa link verebilirmisiniz. Autoit olmasada olur virsual basic'dede olabilir.

Link to comment
Share on other sites

Opt("GUIOnEventMode", 1)
Dim $SANIYE[5] = [30,TimerInit(),0,True,30]
Dim $Form1,$Label1,$Progress1,$Button1,$Button2
$Form1 = GUICreate("Özel Kurulum Seçenekleri...", 400, 135,-1,-1,Bitor(0x80880000,0x00C00000))
GUISetOnEvent(-3, "OnAutoItExit")
GUISetBkColor(0x0d8be9)
GUICtrlCreateIcon(@SystemDir & "\shell32.dll", 24, 15, 10,48,48)
$Label1 = GUICtrlCreateLabel("Saniye bittiğinde otomatik kur çalıştırılacak." & @CRLF & "Iptal etmek istiyormusun?", 70, 10, 320, 75,0x01)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFFFFFF)
$Progress1 = GUICtrlCreateProgress(10, 75, 380, 20)
GUICtrlSetData($Progress1, (100/$SANIYE[4]) * $SANIYE[2])
$Button1 = GUICtrlCreateButton("Evet", 10, 100, 185, 25)
GUICtrlSetOnEvent(-1, "BTN1")
$Button2 = GUICtrlCreateButton("Hayır - " & $SANIYE[0] & " Saniye",205, 100, 185, 25,0x0001)
GUICtrlSetOnEvent(-1, "BTN2")
GUISetState(@SW_SHOW)
Sleep(500)
While 1
    If $SANIYE[2] +1 = Round(TimerDiff($SANIYE[1]) / 1000) And ($SANIYE[0] > 0 And $SANIYE[3]) Then
        $SANIYE[2] += 1
        $SANIYE[0] -= 1
        GUICtrlSetData($Progress1, (100/$SANIYE[4]) * $SANIYE[2])
        GUICtrlSetData($Button2, "Hayır - " & $SANIYE[0] & " Saniye")
    EndIf
    If $SANIYE[0] <= 0 Then BTN2()
    Sleep(100)
WEnd

Func BTN1()
    Exit
EndFunc

Func BTN2()
	Local $OtoKur = @ScriptDir & "\otokur.exe"
	If FileExists($OtoKur) Then 
		Run($OtoKur)
	Else
		MsgBox(16,Default,$OtoKur & " dosyası bulunamadı!")
	EndIf
    Exit
EndFunc

Func OnAutoItExit()
    Exit
EndFunc

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...