byMaPa Posted April 13, 2013 Share Posted April 13, 2013 Merhaba arkadaşlar. Katılımsız yaptığım programda herşey gayet güzel kuruluyor fakat en sondaki "finish" butonuna bastıramıyorum. Çünkü finish butonu gelmeden önce internet sayfası açılıyor ve pencere arkada kalıyor. Doğal olarak finish e basmıyor. Arkada kalan pencereyi nasıl öne getirebilirim? Quote Link to comment Share on other sites More sharing options...
DivaneTR Posted April 13, 2013 Share Posted April 13, 2013 WinActivate fonksiyonuyla pencereyi aktif edip control komutlarıyla tıklatabilirsin. Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 13, 2013 Author Share Posted April 13, 2013 Run('yusetup7.exe') WinWaitActive("Select Setup Language","Select the language ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Welcome to the Your ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Select Destination L") Send("{ENTER}") Burada internet sayfası açılıyor. WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") Send("{SPACE}{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Completing the Your ") Send("{SPACE}{UP}{SPACE}{ENTER}") winactiveyi nereye yazıcam. dediğin gibi olması için internet sayfasını beklemesi gereken bi kod yazmam gerekiyor. Quote Link to comment Share on other sites More sharing options...
DivaneTR Posted April 13, 2013 Share Posted April 13, 2013 WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") bu satırdan önce. Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 13, 2013 Author Share Posted April 13, 2013 WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") bu satırdan önce. malesef öne gelmedi pencere Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 13, 2013 Share Posted April 13, 2013 (edited) Run('yusetup7.exe') WinWaitActive("Select Setup Language","Select the language ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Welcome to the Your ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Select Destination L") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") sleep(200) WinSetOnTop("Setup - Your Uninstaller! 7","We recommend you to ", "", 1) Send("{SPACE}{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Completing the Your ") Send("{SPACE}{UP}{SPACE}{ENTER}") başlık doğruysa sorun olmayacaktır keşke açılan internet sayfasının title yada adını yazsaydınız en üste yazan kısım şimdi deneyin sanki böyle bir soru hatırlıyorum gibi :( Edited April 13, 2013 by mesale0077 Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 13, 2013 Author Share Posted April 13, 2013 Run('yusetup7.exe') WinWaitActive("Select Setup Language","Select the language ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Welcome to the Your ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Select Destination L") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") sleep(200) WinSetOnTop("Setup - Your Uninstaller! 7","We recommend you to ", "", 1) Send("{SPACE}{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Completing the Your ") Send("{SPACE}{UP}{SPACE}{ENTER}") başlık doğruysa sorun olmayacaktır keşke açılan internet sayfasının title yada adını yazsaydınız en üste yazan kısım şimdi deneyin sanki böyle bir soru hatırlıyorum gibi :( internet sayfasının ismi ile yola çıkarsak sadece benim bilgisayarım için çalışır. Herkes farklı tarayıcı kullanıyor çünkü. Bir de şöyle bi hata verdi senin kodu deneyince. Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 13, 2013 Share Posted April 13, 2013 (edited) kodu ve prgramı göndersene ben bakayım nerde nasıl hata alıyorsun bakmak açısından eğer mahzuru yoksa pm at inceleyeyim tarayıcı fark etmiyor isim konusunda önemli olan açılan sayfa adını almak Opt("WinWaitDelay", 0) başa bunuda ekle ayrıca örnek bir kod arkadaşım başlık dogrumu inceledin mi? Local $Title = "Adsız - Not Defteri" Run("notepad.exe") WinWait($Title) WinSetOnTop($Title, "", 1) Opt("WinWaitDelay", 0) While WinExists($Title) WinActivate($Title) WinWaitNotActive($Title) WEnd bende bir sorun yok incele bak notdefteri hep üste kalıyor :) Edited April 13, 2013 by mesale0077 Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 13, 2013 Author Share Posted April 13, 2013 anladım kodu ve prgramı göndersene ben bakayım nerde nasıl hata alıyorsun bakmak açısından eğer mahzuru yoksa pm at inceleyeyim tarayıcı fark etmiyor isim konusunda önemli olan açılan sayfa adını almak Opt("WinWaitDelay", 0) başa bunuda ekle ayrıca örnek bir kod arkadaşım başlık dogrumu inceledin mi? Local $Title = "Adsız - Not Defteri" Run("notepad.exe") WinWait($Title) WinSetOnTop($Title, "", 1) Opt("WinWaitDelay", 0) While WinExists($Title) WinActivate($Title) WinWaitNotActive($Title) WEnd bende bir sorun yok incele bak notdefteri hep üste kalıyor :) anladım peki bişey daha sorcam :) FileInstall('file.dll','C:\Users\@UserName\AppData\Local\file\file.dll,' 1) burda nerede hata yaptım :) Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 13, 2013 Share Posted April 13, 2013 (edited) anladım anladım peki bişey daha sorcam :) FileInstall('file.dll','C:\Users\@UserName\AppData\Local\file\file.dll,' 1) burda nerede hata yaptım :) FileInstall('file.dll','C:\Users\@UserName\AppData\Local\file\file.dll', 1) virgül yanlış yerde ve aldığın yeri kontrol et o da hata verebilir yanlız burdaki hata virgül yanlış yerde olması pm attım umarım sorunuz çözülür :) bizleride bu konuda bilgilendirirseniz memnun olurum Edited April 13, 2013 by mesale0077 Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 13, 2013 Author Share Posted April 13, 2013 virgül yanlış yerde ve aldığın yeri kontrol et o da hata verebilir yanlız burdaki hata virgül yanlış yerde olması pm attım umarım sorunuz çözülür :) bizleride bu konuda bilgilendirirseniz memnun olurum malesef sorunu çözemedim :) Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 13, 2013 Share Posted April 13, 2013 incelemeniz açısından pm e bakınız Quote Link to comment Share on other sites More sharing options...
reyiz Posted April 13, 2013 Share Posted April 13, 2013 (edited) AutoIt'in fonksiyonu Internet Explorer'ı kapatamıyor ve çok işlemli tarayıcılarda sorun çıkarabiliyor. Taskkill fonksiyonu ise Windows'un yeni sürümlerinde güncellenmiş, XP'de yine sorunlar oluşuyor. Tarayıcıları kapatmak için nircmd'yi kullanmak en iyisi. FileInstall("C:\Windows\nircmd.exe", @TempDir & "\nircmd.exe") ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess iexplore.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess chrome.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess firefox.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess firefox.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess browser.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess maxthon.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess dragon.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess rockmelt.exe", @ScriptDir, "", @SW_HIDE) Kodunuz bu şekilde olacak: #RequireAdmin #NoAutoItExecute #NoTrayIcon FileInstall("C:\Windows\nircmd.exe", @TempDir & "\nircmd.exe") Run('yusetup7.exe') WinWaitActive("Select Setup Language","Select the language ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Welcome to the Your ") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Select Destination L") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") Send("{SPACE}{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Completing the Your ") ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess iexplore.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess chrome.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess firefox.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess firefox.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess browser.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess maxthon.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess dragon.exe", @ScriptDir, "", @SW_HIDE) ShellExecuteWait(@TempDir & "\nircmd.exe", "killprocess rockmelt.exe", @ScriptDir, "", @SW_HIDE) WinActivate("Setup - Your Uninstaller! 7","Completing the Your") Send("{SPACE}{UP}{SPACE}{ENTER}") Nircmd uygulamasını buradan indirebilirsiniz. İndirdikten sonra nircmd.exe'yi C:\Windows dizinine atınız. Eğer bu kodda olmassa finishing installation kısmı için bir kod oluşturacaksınız. Daha önce tamamen aynı sorunun olan arkadaşın sorununu finishing installtion kısmı ile çözmüştüm. Eğer yapamadıysanız benden de PM'den yardım alabilirsiniz. (TeamViewer) Edited April 14, 2013 by reyiz Quote Link to comment Share on other sites More sharing options...
SimpsoN_Bart Posted April 14, 2013 Share Posted April 14, 2013 Böyle basit işlemler için ek dosyalara hiç gerek yok kanımca.Windows'un nimetlerinden biraz faydalanmak her zaman iyidir.Diğer fonksiyonda aynı işlevi görecektir. _WMI_Process_Close('iexplore.exe') _WMI_Process_Close('chrome.exe') _WMI_Process_Close('firefox.exe') _WMI_Process_Close('opera.exe') Func _WMI_Process_Close($PROCESSNAME = '') If $PROCESSNAME = "" Or ProcessExists($PROCESSNAME) = 0 Then Return SetError(1, 0, 0) Local $WMI = ObjGet("winmgmts:") Local $SERVICES = $WMI.InstancesOf("win32_process") For $SERVICE In $SERVICES Local $SERVICENAME = $SERVICE.Caption If StringInStr($SERVICENAME, StringLower($PROCESSNAME)) > 0 Then $RETURN = $SERVICE.Terminate Next Return 1 EndFunc ;==>_Process_Close Func _Process_Close($Process = '') If $Process = "" Or ProcessExists($Process) = 0 Then Return SetError(1, 0, 0) While ProcessExists($Process) <> 0 ProcessClose($Process) Sleep(50) WEnd Return 1 EndFunc ;==>_Process_Close Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 14, 2013 Author Share Posted April 14, 2013 Böyle basit işlemler için ek dosyalara hiç gerek yok kanımca.Windows'un nimetlerinden biraz faydalanmak her zaman iyidir.Diğer fonksiyonda aynı işlevi görecektir. _WMI_Process_Close('iexplore.exe') _WMI_Process_Close('chrome.exe') _WMI_Process_Close('firefox.exe') _WMI_Process_Close('opera.exe') Func _WMI_Process_Close($PROCESSNAME = '') If $PROCESSNAME = "" Or ProcessExists($PROCESSNAME) = 0 Then Return SetError(1, 0, 0) Local $WMI = ObjGet("winmgmts:") Local $SERVICES = $WMI.InstancesOf("win32_process") For $SERVICE In $SERVICES Local $SERVICENAME = $SERVICE.Caption If StringInStr($SERVICENAME, StringLower($PROCESSNAME)) > 0 Then $RETURN = $SERVICE.Terminate Next Return 1 EndFunc ;==>_Process_Close Func _Process_Close($Process = '') If $Process = "" Or ProcessExists($Process) = 0 Then Return SetError(1, 0, 0) While ProcessExists($Process) <> 0 ProcessClose($Process) Sleep(50) WEnd Return 1 EndFunc ;==>_Process_Close bunu nasıl kullanacağımı tam anlamadım. yardımcı olur musunuz Quote Link to comment Share on other sites More sharing options...
SimpsoN_Bart Posted April 14, 2013 Share Posted April 14, 2013 Üstte verdim ya nasıl kullanacağını..Biraz dikkat et :D _WMI_Process_Close('iexplore.exe') şeklinde kullanacaksın.Yani fonksiyonun parametresi olan yere sadece çalışan işlemi yazacaksın bu kadar basit.Anladığım kadarıyla autoitde çok yenisin böyle biraz araştırma yapmadan kodları anlamadan isteğini yapamazsın.Ufak ufak kodlardan başlaman şart değişken tanımlama if else döngüler diziler en sona fonksiyonlar.Sen biraz sondan başlamışsın be dostum :) Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 14, 2013 Author Share Posted April 14, 2013 Üstte verdim ya nasıl kullanacağını..Biraz dikkat et :D _WMI_Process_Close('iexplore.exe') şeklinde kullanacaksın.Yani fonksiyonun parametresi olan yere sadece çalışan işlemi yazacaksın bu kadar basit.Anladığım kadarıyla autoitde çok yenisin böyle biraz araştırma yapmadan kodları anlamadan isteğini yapamazsın.Ufak ufak kodlardan başlaman şart değişken tanımlama if else döngüler diziler en sona fonksiyonlar.Sen biraz sondan başlamışsın be dostum :) sadece katılımsız program yapmak için autoit işine girdim :) belli başlı şeyleri öğrenebilsem yeticek aslında Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 14, 2013 Share Posted April 14, 2013 pm attığımı inceledinizmi ? peki :) Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 14, 2013 Author Share Posted April 14, 2013 pm attığımı inceledinizmi ? peki :) evet ama o bildiğin portable gibi olmuş her program çalışmazki öyle :) Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 14, 2013 Share Posted April 14, 2013 Smart Install Maker kullanıyor katılımsız için genellikle autoit ile sizin yaptığınız yöntem işletim sistemine ve prgramın kendine durumuna göre sıkıntılar yaratacaktır ben autoit ile nasıl olabilir diye sana yazdım lakin gerekli işlemleri kodun nereye ne kurduğunu görmen için hazırladım neden olmasın portable hazırlamada bu yöntemi kullanıyorum kendim yaptığım araç olunca sorun olmuyor :) istiyorsan portable yapabilirim :) peki oluşan yaptığım exe baktınızmı ayrıca 5 defa falan indirmişsiniz dosyayı :) Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 14, 2013 Author Share Posted April 14, 2013 Smart Install Maker kullanıyor katılımsız için genellikle autoit ile sizin yaptığınız yöntem işletim sistemine ve prgramın kendine durumuna göre sıkıntılar yaratacaktır ben autoit ile nasıl olabilir diye sana yazdım lakin gerekli işlemleri kodun nereye ne kurduğunu görmen için hazırladım neden olmasın portable hazırlamada bu yöntemi kullanıyorum kendim yaptığım araç olunca sorun olmuyor :) istiyorsan portable yapabilirim :) peki oluşan yaptığım exe baktınızmı ayrıca 5 defa falan indirmişsiniz dosyayı :) yanlışınız var :) 1 kere indirdim sadece :) your uninstaller portable düzgün çalışmıyor. bi keresinde denemiştim. program açılıyor fakat düzgün kaldırmıyor Quote Link to comment Share on other sites More sharing options...
mesale0077 Posted April 14, 2013 Share Posted April 14, 2013 size gönderdiğim exe mi düzgün çalışmıyormu ? yoksa portable olan mı düzgün çalışmıyor dosyalar ne nereye kuruluyor göstermek istedim :) ayrıca portable olarak ben yapmadım galiba Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 14, 2013 Author Share Posted April 14, 2013 yok sizin verdiğinizi denemedim. fakat mantığını anladım. sim gibi. şimdilik belirttiğim sorunu çözebilsem yeticek bana :) Quote Link to comment Share on other sites More sharing options...
byMaPa Posted April 14, 2013 Author Share Posted April 14, 2013 bunu nasıl kullanacağımı tam anlamadım. yardımcı olur musunuz Run('yusetup7.exe') WinSetTrans("Select Setup Language","Select the language ", 1) WinWaitActive("Select Setup Language","Select the language ") Send("{ENTER}") WinSetTrans("Setup - Your Uninstaller! 7","Welcome to the Your ", 1) WinWaitActive("Setup - Your Uninstaller! 7","Welcome to the Your ") Send("{ENTER}") WinSetTrans("Setup - Your Uninstaller! 7","Select Destination L", 1) WinWaitActive("Setup - Your Uninstaller! 7","Select Destination L") Send("{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","We recommend you to ") Send("{SPACE}{ENTER}") WinWaitActive("Setup - Your Uninstaller! 7","Completing the Your ") _WMI_Process_Close('iexplore.exe') _WMI_Process_Close('chrome.exe') _WMI_Process_Close('firefox.exe') _WMI_Process_Close('opera.exe') Func _WMI_Process_Close($PROCESSNAME = '') If $PROCESSNAME = "" Or ProcessExists($PROCESSNAME) = 0 Then Return SetError(1, 0, 0) Local $WMI = ObjGet("winmgmts:") Local $SERVICES = $WMI.InstancesOf("win32_process") For $SERVICE In $SERVICES Local $SERVICENAME = $SERVICE.Caption If StringInStr($SERVICENAME, StringLower($PROCESSNAME)) > 0 Then $RETURN = $SERVICE.Terminate Next Return 1 EndFunc ;==>_Process_Close Func _Process_Close($Process = '') If $Process = "" Or ProcessExists($Process) = 0 Then Return SetError(1, 0, 0) While ProcessExists($Process) <> 0 ProcessClose($Process) Sleep(50) WEnd Return 1 EndFunc ;==>_Process_Close WinActivate("Setup - Your Uninstaller! 7","Completing the Your") Send("{SPACE}{UP}{SPACE}{ENTER}") bu şekilde yaptım neresi hatalı :) Quote Link to comment Share on other sites More sharing options...
reyiz Posted April 14, 2013 Share Posted April 14, 2013 (edited) Tarayıcıyı mı kapatmıyor sondaki mesajınızda bulunan kodlar yoksa yine mi kurulum tamamlanmıyor? Özel mesaj bölümünden TeamViewer bilgilerinizi gönderirseniz yardımcı olacağıma eminim. Sorun çözülürse kodu burada paylaşarak diğer arkadaşlara da yardımcı olmasını sağlayabiliriz. Edited April 14, 2013 by reyiz 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.