asmazh Posted January 16, 2014 Share Posted January 16, 2014 (edited) :) AutoIt'in yeni sürümü yayımlanmış, bugün fark ettim, hemen inceledim tabi, biraz daha kullanışlı bir dil olmuş, bir kaç yenilikten bahsedeyim hemen. 1) Artık fonskyionları değişkenlere atayabileceksiniz, bir nevi fonksiyon adresini bir değişkene atama işlemi. Örneğin: $Msg = MsgBox $Msg(0, "", "Hello baby") 10.2'ye aynı zamanda FuncName komutu eklendi, bu komut ile değişkene atadığınız fonksiyonun ismini döndürebilirsiniz. Üstteki $Msg değişkenini FuncName komutuna parametre olarak gönderirsek sonucu "MSGBOX" alırız. Örneğin: FuncName($Msg) ; ~ Return value: MSGBOX 2) C++'ın tadından yenmez operatörü "?:" artık AutoIt'te. 3) Ptr() komutu ile parametresine gönderdiğiniz objenin bellekteki adresini alabilirsiniz. 4) Dizi döndüren bir fonksiyonun hemen yanına "[]" meta karakterlerini koyarak istediğiniz elemanı direkt alabilirsiniz, örneğin; StringSplit("A,B")[0] ; ~ "A" değerini döndürür. 5) Ve artık Windows 2000 desteği kaldırıldı. Azami: Windows XP RTM 6) AutoIt'de olmadığı için hep sitem ederdim, Null anahtar kelimesi eklendi, şöyleki; artık bu karakter ile değişkenlerinizin bellekte ayırdığı yeri boşaltabilirsiniz. Bu daha önceden "0" ile eşleme yapılarak da yapılabiliyordu ama Null ile daha zevkli ve daha belirgin bence :) Örneğin: $Var = "Hello world" $Var = Null ;~ $Var diye bir şey yok artık. 7) ShellExecute komutu artık çalıştırdığınız programın ProcessID'sini döndürecek. (PID) Mesela aşağıda gördüğünüz manyak kod artık AutoIt'in yorumlayıcısı tarafından dışlanmayacak :) Global $Strspt = StringSplit, $Text = "AutoIt,baya,ilerledi", $sf = StringFormat ($Strspt($Text, ",")[1] = "AutoIt" ? ConsoleWrite($sf("True\nFuncName=%s\n", FuncName($Strspt))) : ConsoleWrite(False)) Velhasıl, daha kullanışlı daha pratik bir AutoIt ile başbaşasınız artık. Ve 10.2 daha hızlı! Tabi yenilikler, eklemeler bunlarla sınırlı değil, detaylı olarak: http://www.autoitscript.com/autoit3/docs/history.htm Download: AutoIt v3.3.10.2 Edited January 16, 2014 by asmazh Quote Link to comment Share on other sites More sharing options...
Editor pairs Posted January 16, 2014 Editor Share Posted January 16, 2014 GUI olayınada çözüm bulsalar çok güzel olacak KODA ile bu iş yürümüyor. Quote Link to comment Share on other sites More sharing options...
asmazh Posted January 16, 2014 Author Share Posted January 16, 2014 Bunun için AutoIt'in kullanıcıları çeşitli alternatifler sunuyor fakat KODA ile hemen hemen aynı. ISN AutoIt Studio http://www.autoitscript.com/forum/topic/136766-isn-autoit-studio/ ISN AutoIT Form Studio http://www.isnetwork.at/index.php/2011-10-17-09-30-07 Quote Link to comment Share on other sites More sharing options...
DivaneTR Posted January 16, 2014 Share Posted January 16, 2014 Yeni _WinApi fonksiyonları çok hoşuma gitti, yeni sürüm çok güzel. Quote Link to comment Share on other sites More sharing options...
MostWanted Posted January 16, 2014 Share Posted January 16, 2014 (edited) Çeviri için teşekkürler, gerçekten artık autoit epey güzelleşti.Fakat null ve ptr nin ne gereği vardı tabi sorgulanabilir.Sonuçta bu basit bi dil olarak kalması gerekiyordu hem dinamik memory allocation'ı zaten kullanıcıya bırakmıyor ama anladığım kadarıyla daha profesyonel kullanıcıların aradığı özellikleri eklemiş olabilirler, güzel olmuş.Bir de tam anlaşılmamış olabilir kanısıyla "?" operatörüne küçük bi örnek de ben vermek istiyorum: $foo = $yukardabiyerdedegisken = "tnctr" ? "evet tnctr imiş." : "yok kardeş değilmiş." Edited January 16, 2014 by MostWanted Quote Link to comment Share on other sites More sharing options...
Editor pairs Posted January 16, 2014 Editor Share Posted January 16, 2014 ISN Studio tamda aradığım gibi birşeymiş yani hem bir yandan formu oluşturmak hemde kodlarda tekrar değişiklik yapmamak.Fakat formdaki objelere erişemedim.Autoti ye doğru kaymaya başladım bende :D Quote Link to comment Share on other sites More sharing options...
asmazh Posted January 16, 2014 Author Share Posted January 16, 2014 (edited) Çeviri için teşekkürler, gerçekten artık autoit epey güzelleşti.Fakat null ve ptr nin ne gereği vardı tabi sorgulanabilir.Sonuçta bu basit bi dil olarak kalması gerekiyordu hem dinamik memory allocation'ı zaten kullanıcıya bırakmıyor ama anladığım kadarıyla daha profesyonel kullanıcıların aradığı özellikleri eklemiş olabilirler, güzel olmuş.Bir tam anlaşılmamış olabilir kanısıyla "?" operatörüne küçük bi örnek de ben vermek istiyorum: $foo = $yukardabiyerdedegisken = "tnctr" ? "evet tnctr imiş." : "yok kardeş değilmiş." Null tartışmasız kabulümdür, AutoIt'te olmadığı için sitem ederdim, hatta çalışmalarımın başına söyle bir prototip koyardım: Global $NULL = 0 Tabi olmasaydı da olurdu fakat olması daha güzel. Sizin de dediğiniz gibi prodesyonel kullanıcılar için eklenmiş olabilir. Ptr'ye gelince, bazen dışarıdan kütüphanelerle çalışabiliyoruz, bazı metotlar pointer değişken istiyor, böylelikle daha basit bir şekilde adres alıp gönderebiliriz. Gerçi doğru ya AutoIt bunu kendisi yapıyordu. Ne lan bu Ptr, kim koydu bunu buraya :) Teşekkürler. Edited January 16, 2014 by asmazh Quote Link to comment Share on other sites More sharing options...
SimpsoN_Bart Posted January 16, 2014 Share Posted January 16, 2014 Çeviri için teşekkürler, gerçekten artık autoit epey güzelleşti.Fakat null ve ptr nin ne gereği vardı tabi sorgulanabilir.Sonuçta bu basit bi dil olarak kalması gerekiyordu hem dinamik memory allocation'ı zaten kullanıcıya bırakmıyor ama anladığım kadarıyla daha profesyonel kullanıcıların aradığı özellikleri eklemiş olabilirler, güzel olmuş.Bir tam anlaşılmamış olabilir kanısıyla "?" operatörüne küçük bi örnek de ben vermek istiyorum: $foo = $yukardabiyerdedegisken = "tnctr" ? "evet tnctr imiş." : "yok kardeş değilmiş." Dayanamadın dimi örneği vermeye :D Bu arada benimde hoşuma giden noktalardan biri bu oldu. Yeni gelen ve üstte verilen örneğin tanımı Conditional Operator yani Koşul operatörü olarak geçer. Hemen hemen bütün dillerde var olan bir operatörün autoitin yeni sürümünde gelmesi çok iyi olmuş. Kullanım şekli yine aynıdır. koşul ? doğruysa_değer : yanlışsa_değer Quote Link to comment Share on other sites More sharing options...
bybordo Posted January 19, 2014 Share Posted January 19, 2014 Hepsi güzelde shellexecutedeki değişimi anlamadım. Quote Link to comment Share on other sites More sharing options...
asmazh Posted January 20, 2014 Author Share Posted January 20, 2014 (edited) Örneğin; aşağıdaki kodda AutoIt'in yorumlayıcısını çalıştırıyoruz. (Bu, başka bir program ya da uygulama olabilirdi) Çalışan her programın (işlemin) işletim sistemi nezdinde bir ID'si vardır (ProcessID; diğer adıyla PID). ShellExecute komutu, üzerinde yapılan değişiklik ile çalıştırdığınız programın işletim sistemindeki ID'sini veriyor. Kolay gelsin. $Program = @AutoItExe MsgBox(0, "", ShellExecute($Program)) Edited January 21, 2014 by asmazh 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.