morning Posted October 19, 2008 Share Posted October 19, 2008 (edited) ben de gördüm gördüklerimiz aynı şey ise sanırım ams ile yapılmış.demiştim zaten isterse kurulum şeklinde bile olsun ama olsun.ams de olur yani. Edited October 19, 2008 by morning Quote Link to comment Share on other sites More sharing options...
blackman12 Posted October 19, 2008 Share Posted October 19, 2008 (edited) iyide morningcim bu öyle sadece bi resimle olmaz msne gel ben sana yapmaya çalışırım bunu Yapınca burada da paylaşırız gerekirse... Edited October 19, 2008 by blackman12 Quote Link to comment Share on other sites More sharing options...
morning Posted October 20, 2008 Share Posted October 20, 2008 (edited) Arkadaşlar aşağıda anlattığım konu için exe halinde çalışan güzel olduğunu düşündüğüm bir autoit scripti hazırladım.Driverlar arkaplandaki cmd ekranında yüklenirken kullanıcı bu gui ekranını görüyor.Autoit yardım makalelerinden derlediğim bu scripti sizlerle paylaşmak istedim. Tek beceremediğim olay, Progressbarı ayarlayamamak oldu.Ayarlıyorum bu sefer script hatalara yol açıyor.yapabilen varsa paylaşsın ben de kullanırım http://www.tnctr.com/index.php?showtopic=70862[/CODE] [CODE]#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Opt('TrayIconHide', 1);----- example 3 PNG work araund by Zedna #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <GDIPlus.au3> #Include <WinAPI.au3> Global $hGUI, $hImage, $hGraphic, $hImage1; Create GUI $hGUI = GUICreate("FreshXP Sürücü Kurulumu", 256, 305) GUICtrlCreateLabel("Sürücüler Aranıyor ve Yükleniyor...",50,260) GUICtrlCreateLabel("Lütfen Bekleyin",75,275) RunWait("hidcon.exe DP_Install_Tool.cmd"); Load PNG image _GDIPlus_StartUp() $hImage = _GDIPlus_ImageLoadFromFile("Surucu.png") $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI) GUIRegisterMsg($WM_PAINT, "MY_WM_PAINT") GUISetState(); Loop until user exits do until GUIGetMsg() = $GUI_EVENT_CLOSE; Clean up resources _GDIPlus_GraphicsDispose($hGraphic) _GDIPlus_ImageDispose($hImage) _GDIPlus_ShutDown(); Draw PNG image Func MY_WM_PAINT($hWnd, $Msg, $wParam, $lParam) _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_UPDATENOW) _GDIPlus_GraphicsDrawImage($hGraphic, $hImage, 0, 0) _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_VALIDATE) Return $GUI_RUNDEFMSG EndFunc[/CODE] gerekli yerleri kendinize göre düzenleyin. Kullanabileceğiniz surucu.png dosyası: hidcon.exe (konsolu gizlemek için) [CODE]http://cid-c5938e893f9ede9e.skydrive.live.com/self.aspx/%c3%96ylesine%20dosyalar/hidcon.exe[/CODE] umarım işinize yarar Edited October 20, 2008 by morning Quote Link to comment Share on other sites More sharing options...
guven_memo Posted October 29, 2008 Share Posted October 29, 2008 (edited) Herkese iyi akşamlar.Bir soru sorucam.Şimdi çeşitli komutlar var winwaitactive falan.Bunları bekletirken milisaniye olarak bekletmiyoruz.Ben bunları en düşük 1 saniye bekletebiliyorum.Ama ben bunları 0,1 sn. bekletemem mi? Yani 1 saniye değilde 100 milisaniye bekletmek istiyorum.Bunun için ne yazmam lazım.0,1 sn. falan yazınca olmuyor. Edited October 29, 2008 by guven_memo Quote Link to comment Share on other sites More sharing options...
blackman12 Posted October 30, 2008 Share Posted October 30, 2008 Normal bekletmeleri sleep komutuyla yapıyoruz ve sleep komutu zaten milisaniye üzerinden çalışır Quote Link to comment Share on other sites More sharing options...
guven_memo Posted October 31, 2008 Share Posted October 31, 2008 Tamamda ben sleep kullanmak istemiyorum.Ben mesela winwaitactiveyi 100 milisaniye bekletmek istiyorum.Ama o komutu bekletmek istiyorum.O yüzden komutun içinde kullanmak istiyorum.Altına sleep yazınca arasında fark oluyor. Quote Link to comment Share on other sites More sharing options...
fatih_sensiz Posted October 31, 2008 Share Posted October 31, 2008 (edited) While Do Döngülerini Kullanıcam Fakat Mesela 2 Tuş Gödrecek 1.Tuşu Göndericek Sonra 2.tuşu Göndericek Sonra 1.tuşun Bir Daha Basma Süresini Belirliyicez Sonrada 2.tuşun Basma Süresi Yani İstediğim Bu 2Tuş İçin ayrı Ayrı Bir Bekleme Zamanı İstiyorum Edited October 31, 2008 by fatih_sensiz Quote Link to comment Share on other sites More sharing options...
blackman12 Posted November 1, 2008 Share Posted November 1, 2008 döngünün sonunda bekleme ver 1. tuşla ikinci tuş arasında da verdiği beklemeyle istediğin bekleme arasındaki fark kadar bi bekleme daha ver Quote Link to comment Share on other sites More sharing options...
guven_memo Posted November 2, 2008 Share Posted November 2, 2008 Autoit nasıl okunuyor arkadaşlar Quote Link to comment Share on other sites More sharing options...
morning Posted November 2, 2008 Share Posted November 2, 2008 TextRead("Autoit") konuyla ne alakası var diye sormak durumundayım otoit diye okunuyor olması gerek. Quote Link to comment Share on other sites More sharing options...
fatih_sensiz Posted November 9, 2008 Share Posted November 9, 2008 ARakdaşlar İsteğim Şu : Bir Giriş Ekranını Olucak Bu Giriş Ekranıyla Bir foruma Bağlanıcak Ve Foruma Giriş Yapıcak Giriş Yapılırsa Gerçek Program Açılıcak Bunu Yapabilirmiyiz Quote Link to comment Share on other sites More sharing options...
blue_life Posted November 9, 2008 Share Posted November 9, 2008 ARakdaşlar İsteğim Şu :Bir Giriş Ekranını Olucak Bu Giriş Ekranıyla Bir foruma Bağlanıcak Ve Foruma Giriş Yapıcak Giriş Yapılırsa Gerçek Program Açılıcak Bunu Yapabilirmiyiz Giriş ekrarnını kolay bir şekilde Koda ile yapabiilrsin...... Site olayına gelirsek ise basit bir şekilde ShellExecute("http://www.google.com.tr") For $i = 0 To 10 Sleep(250) $baslik = WinGetTitle("Google", "") if not $baslik = 0 then ExitLoop Next $AktiveYap = WinWaitActive($baslik,"",1) ; 1 Saniye aktive olmazsa boş ver If $AktiveYap = 1 Then MsgBox(64,"Tebrikler",$baslik & "http://www.google.com.tr sitesine giriş yapıldı",5) ; Devam et Else MsgBox(16,"Hata","http://www.google.com.tr sitesine giriş yapılamadı!",5) EndIf ;~ Ve son tabi yapabilirsin. Scptithte gördüğün üzere ilk önce Please register to see this content. sitesini varsayılan browser ile çalıştırıp sitenin başlık yazısına ulaşmaya çalışıyoruz. Başlığa ulaşmadan zaman biterse olumsuz, başlığa ulaşır ise olumlu mesaj. Umarım anlamıştırsın...... Tabi daha farklık şekillerdede yapılabilir...... Quote Link to comment Share on other sites More sharing options...
peerfen Posted November 13, 2008 Share Posted November 13, 2008 Autoit ile katilimsiz yapatigimiz programlara sifre vermemiz mümkünmü söyleki scripte cift tiklandiginda sifre isteyecek sifreyi dogru verdigimiz zaman katilimsiz programimiz kurulacak yanlis sifre verildiginde kurulum baslamyiyacak Quote Link to comment Share on other sites More sharing options...
Administrator sk8er_boi Posted November 13, 2008 Author Administrator Share Posted November 13, 2008 Autoit ile katilimsiz yapatigimiz programlara sifre vermemiz mümkünmüsöyleki scripte cift tiklandiginda sifre isteyecek sifreyi dogru verdigimiz zaman katilimsiz programimiz kurulacak yanlis sifre verildiginde kurulum baslamyiyacak func kur() run("setup.exe") EndFunc $a=InputBox("Doğrulama","Şifreyi Giriniz","","*") if $a="şifrem" then kur() else msgbox(0,"Hata","Şifre Yanlış, Kurulum İptal") EndIf Quote Link to comment Share on other sites More sharing options...
fatih_sensiz Posted November 15, 2008 Share Posted November 15, 2008 (edited) Giriş ekrarnını kolay bir şekilde Koda ile yapabiilrsin......Site olayına gelirsek ise basit bir şekilde ShellExecute("http://www.google.com.tr") For $i = 0 To 10 Sleep(250) $baslik = WinGetTitle("Google", "") if not $baslik = 0 then ExitLoop Next $AktiveYap = WinWaitActive($baslik,"",1) ; 1 Saniye aktive olmazsa boş ver If $AktiveYap = 1 Then MsgBox(64,"Tebrikler",$baslik & "http://www.google.com.tr sitesine giriş yapıldı",5) ; Devam et Else MsgBox(16,"Hata","http://www.google.com.tr sitesine giriş yapılamadı!",5) EndIf ;~ Ve son tabi yapabilirsin. Scptithte gördüğün üzere ilk önce Please register to see this content. sitesini varsayılan browser ile çalıştırıp sitenin başlık yazısına ulaşmaya çalışıyoruz. Başlığa ulaşmadan zaman biterse olumsuz, başlığa ulaşır ise olumlu mesaj. Umarım anlamıştırsın...... Tabi daha farklık şekillerdede yapılabilir...... Hayır Arkadaşım Benim Dediğim Öyle değil Programda Direk Login Olucak Hiçbirşey Açılmayacak Arkadaşlar Bir Oyun İçin Açma Yapıyorum Fakat Bir Sorunum Var Kod İsteğim Bu : oyunun bir yerine bakıp eğer öyleyse programı kapatmasını istiyorum Edited November 15, 2008 by fatih_sensiz Quote Link to comment Share on other sites More sharing options...
guven_memo Posted November 15, 2008 Share Posted November 15, 2008 Ya sk8er_boi hocam.Fileinstall klasörleride kopyalıyor demişsinizde ben denedim olmuyor.Flag'mı koyuyoruz acaba.Bir örnek verebilirmisiniz acaba ? Quote Link to comment Share on other sites More sharing options...
lordpharrel Posted November 16, 2008 Share Posted November 16, 2008 öncelikle slmlar ardşlar ben autoit dersindeki butun uygulamari takip ediyorum.yapıyorum örneğin. msn autoit programindan recordla kayderiyorum ve codlari aliyorum alt ve üst başlıklarini kaldırıyo ve kaydediyorum.bunu exeyede ceviyorum. cevirdiğim exe ye tıklaynca saatin yaninda birsrü exe cıkıyo ve kuruluma gecmiyo.acaba biyerde hatami yapıyorum.konulari araştirdim fakat bi çözüm bulamadim.. bir sorunda şu bunu yaptık diyelim cevirdğim exe programini normal setupla nasil bütünleyebilirm yani ben normal setupa tıklayinca katillimsiz olarak yüklemek istiyorum.. yardimci olrusanız sevinirm.şimdiden teşekkur ederim Quote Link to comment Share on other sites More sharing options...
blue_life Posted November 20, 2008 Share Posted November 20, 2008 Hayır Arkadaşım Benim Dediğim Öyle değilProgramda Direk Login Olucak Hiçbirşey Açılmayacak Arkadaşlar Bir Oyun İçin Açma Yapıyorum Fakat Bir Sorunum Var Kod İsteğim Bu : oyunun bir yerine bakıp eğer öyleyse programı kapatmasını istiyorum Ne yapmak istediğini fazla anlayamadım kusura bakma. Sayfa kontrolünde InetGet,InetGetSize gibi komutlarıda kullanabilirsin. Ayrıca ilk verdiğim örnekte explorer açılmadanda scprit içinde siteyi açabilir ve kontrol edebilrisin. Bunuda GUICtrlCreateObj ile yapabilrisin. Yardım dosyasında gerekli açıklamalar mevcut....... Ya sk8er_boi hocam.Fileinstall klasörleride kopyalıyor demişsinizde ben denedim olmuyor.Flag'mı koyuyoruz acaba.Bir örnek verebilirmisiniz acaba ? FileInstall ile klasörleri scprite entegre edemezsin. FileInstallde flagların görevide kısaca dosya varsa üzerine yazımı yazmımı. Umarım anlamıştırsın. Tabi farklı şekillerde senin istediğinide yapabiliriz. Mesela en basit olarak FileInstall ile şöyle yapılır. Bir örnek verim. Dim $DataF = @ProgramFilesDir & "\Data"Foldercopy()exitfunc Foldercopy() if Not FileExists($DataF) then DirCreate($DataF) FileInstall("Data\Dosya1.mp3", $DataF & "\Dosya1.mp3") FileInstall("Data\Dosya2.mp3", $DataF & "\Dosya2.mp3") FileInstall("Data\Dosya3.mp3", $DataF & "\Dosya3.mp3") FileInstall("Data\Dosya4.mp3", $DataF & "\Dosya4.mp3")EndFunc[/CODE] Gördüğün üzere scprith dosyamın yanında Data klasörü ve içinde 4 tane dosya var. Ben bu dosyaları tek tek FileInstall ile belirtmek zorundayım. Bu scprithi hazırladıkatan sonra çalıştırısam @ProgramFilesDir & "\Data klasründe bu dosyalar oluşacaktır. Umarım anlamıştırsın. Örneği iyi incelersen istediğini rahatlıkla yapabilrisin....... öncelikle slmlar ardşlarben autoit dersindeki butun uygulamari takip ediyorum.yapıyorum örneğin. msn autoit programindan recordla kayderiyorum ve codlari aliyorum alt ve üst başlıklarini kaldırıyo ve kaydediyorum.bunu exeyede ceviyorum. cevirdiğim exe ye tıklaynca saatin yaninda birsrü exe cıkıyo ve kuruluma gecmiyo.acaba biyerde hatami yapıyorum.konulari araştirdim fakat bi çözüm bulamadim.. bir sorunda şu bunu yaptık diyelim cevirdğim exe programini normal setupla nasil bütünleyebilirm yani ben normal setupa tıklayinca katillimsiz olarak yüklemek istiyorum.. yardimci olrusanız sevinirm.şimdiden teşekkur ederim Yaptığın scprithi foruma ekle nerde hata olduğunu söyleyelim... AU3Recorder de Fare kullanmamaya özen göster. Son soruna gelirsek ise normal kuru FileInstall ile scripthin içine entegre edip Temp klasörüne çıkartıp çalıştırabilrsin. Işlem bittikten sonra ise temp klasörünü scprith ile temizleyebilrisin. Veya en basit olarak Winrar ilede Temp klasörüne çıkartıp istediğini yapabilirsin....... Quote Link to comment Share on other sites More sharing options...
blue_life Posted November 20, 2008 Share Posted November 20, 2008 Harfi bilinmeyen CD/DVD romdaki bir programı çalıştırmak....... $CD_DRV = DriveGetDrive("CDROM");Mevcut Cd/Dvd Sürücülerini arıyor...If NOT @error Then For $i = 1 to $CD_DRV[0] $DRV_ST = DriveStatus($CD_DRV[$i] & "\Programs\");Mevcut sürücülerdeki Programs klasörünün durumuna bakıyor... If $DRV_ST = "READY" Then $BlProg = $CD_DRV[$i] & "\Programs\Program.exe" If FileExists($BlProg) Then;Programs\Programs.exe nin olup olmadığını kontrol ediyor..;~ MsgBox(64, "Bilgi", $BlProg & " uygulaması bulundu") Run($BlProg); Programı çalıştır. Tabi istediğiniz gibi paremetre felan kullanabilirsiniz. EndIf EndIf NextEndIf[/CODE] Gördüğünüz üzere PC deki tüm CD/DVD romları araştırıp sonra Rootta Programs klasörünü kontrol ediyor. Eğer klasörü varsa son olarak çalıştırmak istediğimiz programı kontrol edip çalıştırıyo..... Eğer siz tüm sürücülerde bu dosyayı aratıp çalıştırmak iserseniz DriveGetDrive("ALL") şeklinde değiştirmelisiniz. Ayrıntılı bilgi için yardım dosyasındaki DriveGetDrive kısmını gözatınız...... 2 Quote Link to comment Share on other sites More sharing options...
blue_life Posted November 20, 2008 Share Posted November 20, 2008 Hazırladığımız Scprthin birden fazla çalışmasını engellemek. Global Const $GUI_EVENT_CLOSE = -3Pr_Kontrol(); Bu kısım ana işleviniz için ---------------------------------------------------$Form1 = GUICreate("Script Kontrol....", 275, 120)$Label1 = GUICtrlCreateLabel("Selam Millet Ben Blue_Life", 50, 10, 170, 76,0x01)GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")GUICtrlSetColor(-1, 0x0000FF)$Button1 = GUICtrlCreateButton("Button1", 10, 80, 257, 33, 0)GUISetState(@SW_SHOW)While 1 $nMsg = GUIGetMsg() if $nMsg = $Button1 Or $nMsg = $GUI_EVENT_CLOSE then ExitWEnd;Ana işle ------------------------------------------------------------------------Func Pr_Kontrol() Local $I, $PR_Found = False If @Compiled Then Local $PROC_LIST = ProcessList(@ScriptName) If IsArray($PROC_LIST) Then For $I = 1 To $PROC_LIST[0][0]; Çalışan programlarda sırasıyla bak.. If StringUpper($PROC_LIST[$I][0]) = StringUpper(@ScriptName) And $PROC_LIST[$I][1] <> @AutoItPID Then; $PR_Found = True; Program Bulundu ExitLoop EndIf Next If $PR_Found Then; Program Listesinde Program Bulunuduysa aşağıdaki komutları uygula.......;~ MsgBox(0x40040, "Uyarı", @ScriptName & " Zaten Çalışıyor...") Exit EndIf EndIf EndIfEndFunc[/CODE] Gördüğünüz üzere eğer bizim scripth program listesinde varsa yeni açılan scprithi kapatmak üzere ayarladım. Siz şayet başka bir şeyde yaptırabilrisiniz. Mesela eskisini çalışmasına son verebilir yeni tıklanan scripthin çalışmasını sağlayabilirsiniz. Bunun için en basit olarak exit kaldırılıp ProcessClose(@ScriptName) şeklinde de yapılabilir... 1 Quote Link to comment Share on other sites More sharing options...
fatih_sensiz Posted November 22, 2008 Share Posted November 22, 2008 Benim İstediğim Bu Arkadaşlar Bir Forum Siteesi Var Bu Sitenin Üyeleri Var Ve Autoitte Bir LoginForm Var Bu Login Form'daki Username Ve Password İle Forum Sitesine Giricek? Quote Link to comment Share on other sites More sharing options...
trspeed Posted November 22, 2008 Share Posted November 22, 2008 (edited) arkadaşlar ben kurulum dosyası hazırladım yalnız benim scriptim program kurulumu bittikten sonrada çalışıyor bunu nasıl kapatabilirim.. bu programın özelliği bütün kurulum işlemi tek bir pencerede , pencere değişmeden tamamlanıyor. kurulum bitince pencere kapanıyor. ama benim script çalışmaya devam ediyor programın hangi aşamada sonlanacağını bilmediğim için, yani pencere değişmediği için kapat komutu yazamıyorum.. kurulum penceresi otomatik olarak kapandığında scriptimin nasıl kapatılmasını sağlayabilirim... şöyle bir komut var mı? xxxxxx penceresi aktif değilse yada yoksa scripti sonlandir kapat gibi bir komut var mı? Edited November 22, 2008 by trspeed Quote Link to comment Share on other sites More sharing options...
blue_life Posted November 23, 2008 Share Posted November 23, 2008 arkadaşlar ben kurulum dosyası hazırladım yalnız benim scriptim program kurulumu bittikten sonrada çalışıyor bunu nasıl kapatabilirim..bu programın özelliği bütün kurulum işlemi tek bir pencerede , pencere değişmeden tamamlanıyor. kurulum bitince pencere kapanıyor. ama benim script çalışmaya devam ediyor programın hangi aşamada sonlanacağını bilmediğim için, yani pencere değişmediği için kapat komutu yazamıyorum.. kurulum penceresi otomatik olarak kapandığında scriptimin nasıl kapatılmasını sağlayabilirim... şöyle bir komut var mı? xxxxxx penceresi aktif değilse yada yoksa scripti sonlandir kapat gibi bir komut var mı? Büyük ihtimal hazırladığın scripth ile alakalı bir sorun var. Yoksa scripth görevini yaptıktan sonra sen exit yazmasan bile normalde kapanır. Scripthi burda paylaşsaydın işte hatayı orda yapmışsın diyebilirdik. Genelde Wait içeren komutlarda hata yapılıyor. Mesela ben bir script hazırladam diyelim. Scripthimde WinWaitActive("XXXX") şeklinde bir komut var. XXX başlığı aktif olana kadar scripth beklemede kalacaktır. Lakin ben şöyle yapsaydım; WinWaitActive("XXXX","",5) XXX başlığ 5 saniye içinde aktif olmazsa bir sonraki komuta geçecektir. Yani lafın kısası Wait ile ilgili bir sorun var gibi. Bu arada scriptin nerde takıldığını bulmak için bol bol MsgBox kullan.... Quote Link to comment Share on other sites More sharing options...
guven_memo Posted November 25, 2008 Share Posted November 25, 2008 func kur() run("setup.exe") EndFunc $a=InputBox("Doğrulama","Şifreyi Giriniz","","*") if $a="şifrem" then kur() else msgbox(0,"Hata","Şifre Yanlış, Kurulum İptal") EndIf Peki 2 tane sorum olacak. 1=Ben burada öyle düzeltmeler yapıcam ki;cancel dediğimde yada X'e bastığımda "hata şifre yanlış" demiyecek.Çıkış yapıcak.Sadece yanlış şifreyi girdiğimde hata diyecek. 2=Yanlış şifre girdiğimde "hata yanlış şifre" diyecek ama ondan sonra script kapanmayacak.Şifre yanlışsa ben buradan nasıl Inputbox ekranını tekrardan çağırıcam? Quote Link to comment Share on other sites More sharing options...
Administrator sk8er_boi Posted November 25, 2008 Author Administrator Share Posted November 25, 2008 Peki 2 tane sorum olacak.1=Ben burada öyle düzeltmeler yapıcam ki;cancel dediğimde yada X'e bastığımda "hata şifre yanlış" demiyecek.Çıkış yapıcak.Sadece yanlış şifreyi girdiğimde hata diyecek. 2=Yanlış şifre girdiğimde "hata yanlış şifre" diyecek ama ondan sonra script kapanmayacak.Şifre yanlışsa ben buradan nasıl Inputbox ekranını tekrardan çağırıcam? dim $a Func kur() Run("setup.exe") EndFunc ;==>kur func sifresor() $a = InputBox("Doğrulama", "Şifreyi Giriniz", "", "*") if @error=1 then Exit If $a = "şifrem" Then kur() Else MsgBox(0, "Hata", "Şifre Yanlış") sifresor() EndIf EndFunc sifresor() Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.