Jump to content

Autoıt 3.3.10.2 - Bazı Değişiklikler, Eklemeler


asmazh
 Share

Recommended Posts

:)

 

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 by asmazh
Link to comment
Share on other sites

Ç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 by MostWanted
Link to comment
Share on other sites

  • Editor

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

Link to comment
Share on other sites

Ç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 by asmazh
Link to comment
Share on other sites

Ç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

Link to comment
Share on other sites

Ö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 by asmazh
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...