AutoIt

AutoIt /ɔːtoʊ ɪt/ Microsoft Windows için ücretsiz bir programlama dilidir. Sürüm 1 ve 2'de, Microsoft Windows programları için otomasyon komut dosyaları oluşturmak için kullanıldı. Bunlar bazen makro olarak adlandırılır. Sürüm 3'te, programlama dili daha fazla şey yapmasına izin verecek şekilde genişletildi.

AutoIt 1 ve 2'deki komut dosyası dili deyim güdümlüydü. Bir kullanıcının bilgisayara girdisini simüle etmek için tasarlanmıştı. Sürüm 3'ten itibaren AutoIt sözdizimi değişti. Artık BASIC programlama diline benzemektedir. AutoIt sürüm 3 genel amaçlı bir programlama dilidir. Diziler gibi veri türlerine sahip olabilir.

Bir AutoIt komut dosyası bağımsız bir yürütülebilir dosyaya dönüştürülebilir. Bu, AutoIt yorumlayıcısının yüklü olmadığı bilgisayarlarda çalıştırılabilir. Çok çeşitli fonksiyon kütüphaneleri mevcuttur. Bunlar UDF'ler veya "Kullanıcı Tanımlı Fonksiyonlar" olarak bilinir. Bazıları standart olarak dahil edilmiştir. Diğerleri web sitesinden temin edilebilir. Bunlar dile ekstra yetenekler ekler. AutoIt'in özel bir editörü, Entegre geliştirme ortamı veya IDE'si vardır. Ücretsiz SciTE editörünü temel alır. Derleyici ve yardım metni bu özel düzenleyiciye dahil edilmiştir ve geliştiriciler için standart bir ortam sağlar.



 Tipik bir AutoIT komut dosyasının ekran görüntüsüZoom
Tipik bir AutoIT komut dosyasının ekran görüntüsü

Özellikler

  • Windows için BASIC benzeri yapıya sahip komut dosyası dili
  • Bağımsız yürütülebilir dosyalara derleme
  • Belirli uygulamalar veya uygulamalar için eklenti kütüphaneleri ve modüller
  • TCP ve UDP protokollerini destekler
  • Bileşen nesne modelini (COM) destekler
  • DLL dosyalarındaki işlevleri çağırma
  • Konsol uygulamalarını çalıştırın ve standart akışlara erişin
  • Çalıştırıldığında çıkarılacak veri dosyalarını derlenen dosyaya dahil etme
  • Mesaj ve giriş kutuları dahil olmak üzere grafik kullanıcı arayüzleri oluşturma
  • Sesleri çalın, duraklatın, devam ettirin, durdurun, arayın, sesin geçerli konumunu alın ve sesin uzunluğunu alın
  • Fare hareketlerini simüle edin
  • Pencereleri ve işlemleri manipüle etme
  • Kullanıcı girdilerini ve tuş vuruşlarını uygulamalara ve bir uygulama içindeki bireysel kontrollere göndermeyi otomatikleştirin
  • Sürüm 3.2.4.0'dan itibaren Unicode desteği
  • 3.2.10.0 sürümünden itibaren 64 bit kod desteği
  • Düzenli ifadeleri destekler
  • Kullanıcı Hesabı Denetimi ile uyumlu
  • Bir kütüphane aracılığıyla nesne yönelimli tasarım



Kullanım

AutoIt genellikle Microsoft Windows için yardımcı yazılım üretmek için kullanılır. Bu programlar rutin görevleri otomatikleştirebilir. Örnek kullanım alanları şunlardır: sistem yönetimi, izleme, bakım ve yazılım kurulumu. Kullanıcı etkileşimini simüle etmek için de kullanılır. Bu kullanımda bir uygulama, insan kullanıcı gibi davranan bir AutoIt betiği tarafından bir şeyler yapması için "yönlendirilir". Bir AutoIT betiği tuşlara basabilir, fareye tıklayabilir, metin yazabilir vb. Bu şekilde bir uygulamanın insan kullanıcısını simüle eder.

AutoIt düşük maliyetli laboratuvar otomasyonunda kullanılmıştır. Uygulamalar arasında cihaz senkronizasyonu, alarm izleme ve sonuç toplama yer almaktadır. 3D yazıcılar gibi cihazlar da kontrol edilebilir.



Örnekler

Merhaba Dünya

; Sabit değerlerden oluşan bir kütüphane hazırlayın. #include < MsgBoxConstants. au3> ; Bir mesaj kutusunda "Merhaba, dünya!" ifadesini görüntüler. MsgBox($MB_SYSTEMMODAL, "Başlık", "Merhaba, dünya!")

Windows Hesap Makinesini Otomatikleştirme

; Sabit değerlerden oluşan bir kütüphane hazırlayın. #include < MsgBoxConstants. au3> ; 6 saniyelik bir zaman aşımı ile bir mesaj kutusu görüntüleyin. MsgBox($MB_OK, "Dikkat", "Otomasyon sırasında klavye veya fareye dokunmaktan kaçının.", 6) ; Windows Hesap Makinesini çalıştırın. Run("calc.exe") ; Hesap makinesinin 10 saniyelik bir zaman aşımı ile aktif hale gelmesini bekleyin. WinWaitActive("[CLASS:CalcFrame]", "", 10) ; Hesap makinesi 10 saniye sonra görünmezse koddan çıkın. If WinExists("[CLASS:CalcFrame]") = 0 Then Exit ; Hesap makinesine otomatik olarak geçerli yılı yazın. Send(@YEAR) ; Neler olup bittiğini görebilmek için betiği biraz yavaşlatalım. Sleep(600) ; Otomatik olarak '4'e böl' yazın ve ardından 600 ms uyuyun. Send("/4") Sleep(600) ; Sonucu görüntülemek için return tuşuna basın ve 600 ms uyuyun. Send("{ENTER}") Sleep(600) ; Windows kısayolu Ctrl+C'yi kullanarak sonucu panoya kopyalayın. Send("^c") ; Pano içeriğini bir değişken olarak tanımlayın ve bu değişkene atayın. Local $fResult = ClipGet() ; Değişkenin ondalık nokta içerip içermediğini kontrol edin. If StringInStr($fResult, ".") Then ; 5 saniyelik bir zaman aşımı ile bir mesaj kutusu görüntüleyin.     MsgBox($MB_OK, "Leap Year", @YEAR & " is not a leap year.", 5) Else ; Bu mesaj yalnızca geçerli yıl artık yıl ise görüntülenecektir.     MsgBox($MB_OK, "Leap Year", @YEAR & " is a leap year.", 5) EndIf ; Windows hesap makinesini kapatın - her zaman daha sonra toparlayın. WinClose("[CLASS:CalcFrame]")

Ortalama bulun

; Find Average by JohnOne, modified by czardas #include < MsgBoxConstants. au3> _Example() ; Örneği çalıştırın.  Func _Example() ; Bir giriş kutusu görüntüleyin ve kullanıcıdan virgüllerle ayrılmış bazı sayılar girmesini isteyin.     Local $sInput = InputBox("Find Average", "Enter some numbers separated by commas: 1,2,42,100,3")    ; Bir hata oluştuysa koddan çıkın.      If @error Then Exit ; Kullanıcının girdisi ile bir dizi doldurun.     Local $aSplit = StringSplit($sInput, ",") ; Diziyi _Find_Average() fonksiyonuna aktarın ve ardından hata olup olmadığını kontrol edin.     Local $fAverage = _Find_Average($aSplit) If @error Then Exit ; Sonucu bir mesaj kutusunda görüntüleyin.     MsgBox($MB_OK, "Find Average", "Result: " & $fAverage) EndFunc ;==>_Example Func _Find_Average($aArray) ; Girdi doğru türde değilse (bir dizi), ayrıntılarla birlikte bir hata döndürün.     If Not IsArray($aArray) Then Return SetError(1, 0, VarGetType($aArray))   ; Daha ayrıntılı kontroller mümkündür, ancak kısa olması için burada sadece bir tanesi gerçekleştirilmiştir. ; Sayıların toplamını saklamak için bir değişken bildirin.     Local $iArraySum = 0 ; Dizi boyunca döngü.     For $i = 1 To $aArray[0] ; Toplamı her dizi elemanındaki sayı kadar artırın.         $iArraySum += Number($aArray[$i]) Next ; 2 ondalık basamağa yuvarlanmış ortalamayı döndür.     Return Round($iArraySum / $aArray[0], 2) EndFunc ;==>_Find_Average



Tarih

  • Ocak 1999 - İlk AutoIt Sürümü (1.0)
  • Ağustos 1999 - AutoIt v2 ve AutoItX
  • Eylül 1999 - Derleyici ile ilk AutoIt sürümü
  • Aralık 2002 - AutoIt v3 (Genel Beta)
  • Şubat 2004 - AutoIt v3 (Kararlı)
  • Eylül 2006 - Auto3Lib başladı
  • Kasım 2007 - AutoIt v3.2.10.0 yayınlandı, Auto3Lib AutoIt v3'e dahil edildi
  • Mayıs 2008 - AutoIt v3.2.12.0, eklenen GUI işlevselliği ile birlikte yayınlandı
  • Aralık 2008 - AutoIt (ve AutoItX) v3.3.0.0 yayınlandı
  • Aralık 2009 - AutoIt v3.3.2.0 yayınlandı
  • Ocak 2010 - AutoIt v3.3.4.0 yayınlandı
  • Mart 2010 - AutoIt v3.3.6.0 yayınlandı
  • Nisan 2010 - AutoIt v3.3.6.1 yayınlandı
  • Aralık 2011 - AutoIt v3.3.8.0 yayınlandı
  • Ocak 2012 - AutoIt v3.3.8.1 yayınlandı
  • Aralık 2013 - AutoIt v3.3.10.0 yayınlandı
  • Haziran 2014 - AutoIt v3.3.12.0 yayınlandı
  • Temmuz 2015 - AutoIt v3.3.14.0 ve v3.3.14.1 yayınlandı
  • Eylül 2015 - AutoIt v3.3.14.2 yayınlandı
  • Şubat 2018 - AutoIt v3.3.14.3 yayınlandı



Lisans

AutoIt'in geliştiricileri başlangıçta kaynak kodunu GNU Genel Kamu Lisansı (GPL) altında yayınladılar.

2006 yılında, lisans 3.2.0 ve sonraki sürümler için kendi kapalı kaynak lisansına değiştirildi.

Sürüm 3.1'deki kodun bir kısmı AutoHotkey projesi tarafından bir çatal oluşturmak için kullanıldı. Buna GPL lisans koşulları altında izin verildi. AutoHotkey topluluğu, kodu GPL altında geliştirmeye ve yayınlamaya devam ediyor.



Sorular ve Yanıtlar

S: AutoIt nedir?


C: AutoIt, Microsoft Windows için ücretsiz bir programlama dilidir.

S: AutoIt 1 ve 2 sürümlerinde nasıl kullanılıyordu?


C: 1. ve 2. sürümlerde, makrolar olarak da bilinen Microsoft Windows programları için otomasyon komut dosyaları oluşturmak için kullanılıyordu.

S: AutoIt'in 3. sürümünde neler değişti?


C: Sürüm 3'teki komut dosyası dili, daha fazla şey yapmasına izin verecek şekilde genişletildi ve sözdizimi BASIC programlama diline benzer olacak şekilde değiştirildi.

S: Bir AutoIt komut dosyası ne tür veriler içerebilir?


C: Bir AutoIt komut dosyası, diziler gibi veri türleri içerebilir.

S: Bir AutoIt komut dosyası, yorumlayıcı yüklü olmayan bilgisayarlarda çalıştırılabilir mi?


C: Evet, bir AutoIt komut dosyası, yorumlayıcının yüklü olmadığı bilgisayarlarda çalıştırılabilecek bağımsız bir yürütülebilir dosyaya dönüştürülebilir.

S: Dil için mevcut herhangi bir ekstra yetenek var mı?


C: Evet, UDF'ler veya "Kullanıcı Tanımlı Fonksiyonlar" olarak bilinen çok çeşitli fonksiyon kütüphaneleri mevcuttur, bazıları standart olarak dahil edilmiştir ve diğerleri dile ekstra yetenekler ekleyen web sitesinden temin edilebilir.

S: AutoIt ile geliştirme yapmak için özel bir editör var mı?


C: Evet, geliştiricilere geliştirme için standart bir ortam sağlayan hem bir derleyici hem de yardım metni içeren ücretsiz SciTE editörünü temel alan özel bir editör vardır.

AlegsaOnline.com - 2020 / 2023 - License CC3