SOLIDWORKS Makro Nedir?

Makro, bir programın içinde özel amaçlar için hazırlanmış, gerekli işlemleri yerine getirebilecek, basit komutlarla yazılmış programdır. Belki içsel programcıklar diyebiliriz. Solidworks de macro yazmanın iki yolu vardır : VBA ve .NET Makroları. Makroları kayıt yöntemi ile de oluşturabilirsiniz.

Makroları Neden Kullanırız?

Makrolar, gündelik tekrarlayan ve bir süre sonra sıkıcı hale gelmeye başlayan işlerimizi tek bir tuşa basarak halletmemizi sağlar. Bu da bizim rutin ağır işlerimizden sıkılmamamızı ve işimize daha iyi odaklanmamızı sağlar. Ayrıca bize büyük bir zaman kazandırarak işlerimizi hızlı bir şekilde tamamlamamıza yardımcı olur.

Makro Nasıl Kaydedilir?

Öncelikle komut satırına sağ tıklayın ve “Makro” seçeneğini seçin. Karşınıza hemen aşağıdaki makro araç çubuğu gelecektir.

Makro kaydetmek için Makroyu kaydet/duraklat butonuna veya Araçlar > Makro > Kaydet seçeneğine basarak kaydı başlatabilirsiniz. Eğer kaydı duraklatmak istiyorsanız Makroyu kaydet/duraklat   butonuna yeniden basın. Tekrar devam etmek için aynı butona basın. Kayıt edilen makroyu durdurmak için Makroyu Durdur  butonuna basın ve dosyanıza bir isim verip kaydedin.

VBA Makroları

VBA makroları Visual Basic for Application(VBA) programlama dili ile yazılır ve Visual Basic Editör kullanılır. Dosya uzantısı swp’dir.

Avantajları
  • VBA öğrenmesi .Net dillerinden(VB.NET, C#) daha kolaydır. VBA makroları ile daha kolay ve hızlı yazılır.
  • Program çalışırken makroları değiştirip deneyebilirsiniz, böylece daha hızlı test yapabilirsiniz.
  • VBA makroları tek dosyadan oluşur, böylece daha basit saklayıp, paylaşabilirsiniz.
  • İnternette VBA kodları daha fazla bulunduğu için Solidworks API programlayanlar için büyük bir avantajdır.

Dezavantajları

  • VBA OOP(object oriented programming)yeteneğine sahip değildir. Karmaşık programlar için VBA makroları daha hantaldır.
  • 64 bit sistemlerin kendisine has özelliklerinden kaynaklanan, kullanıcı arayüzü ve Windows kütüphaneleri kullanan VBA makrolarında uyumluluk sorunu yaşanabilir. Bu sorunun çözmek için ise ekstra kod yazmak gerekir.
  • VBA makroları paylaşılırken(başka bilgisayara taşınırken…) eksik referans hatası oluşabilir.
  • Eğer program SolidWorks çalıştığı sürece çalışacaksa VBA makro iyi bir tercih değil.(Add-in seçilmelidir.)

.NET Makroları

.NET makroları VB.NET veya C# ile Visual Studio Tools For Applications (VSTA) editöründe yazılır. VSTA dışında çalıştırıldığında bir derlenmiş DLL kullanır. Bu DLL’ler stabil değildir. Bu sebepten dolayı .NET makroları ciddi uygulamalar için tavsiye edilmez. Eğer gerçekten otomasyon için .Net dilleri kullanılacaksa, add-in veya stand-alone oluşturulmalıdır.

Add-ins(Eklenti)

Add-in başka bir programın içinde çalışan program denilebilir. Makrolara benzemez. Add-in’ler VB.NET, C# veya C++ ile yazılabilir. Visual Studio kullanarak proje oluşturulabilir ve sonra derlenmiş bir DLL ile çalışır.
Avantajları
• Eğer SolidWorks’e entegre etmek isteniyorsa, bu yöntem tercih edilir.
• SolidWorks çalıştığı sürece programının çalışması isteniyorsa, bu yöntem en iyi seçim olacaktır.
• VB.NET, C# veya C++ ile yazıldığından daha güçlüdür. Bu diller VBA ile karşılaştırıldıklarında özellik açısından daha üstün gelir.
• Daha güvenilirdir. Makrolarda kullanıcı kodu görebiliyordu. Fakat burada tersine mühendislik haricinde kullanıcı kaynak koda ulaşamaz.

Dezavantajları

• Programlama dilleri karmaşık. Yeni programcı için iyi bir seçim değil.
• Add-in’ler iç işlem(“in-process”) olarak çalışır. SolidWorks de çalışması için açık olmalı

Stand-Alones

Stand-alone bir Windows uygulamasıdır. Bu bizim prosesi SOLIDWORKS.EXE prosesi dışında çalıştırır. Add-in de olduğu gibi bu da VB.NET, C# veya C++ ile Visual Studio kullanarak oluşturulur. Sonra Proje tipine bağlı olarak derlenmiş bir EXE veya DLL elde edilir.

Avantajları

• Muhteşem esneklik sağlar. Stand-alone kodu büyük bir programın parçası olabilir. Bu program sadece SolidWorks’ü çağırmayabilir veya SolidWorks de çoklu oturum açabilir.
• Add-in’e göre daha kolay kurulur.

Dezavantajları

• Stand-alone SolidWorks dışında çalıştığından, burada macro ve add-in’e göre performans kaybı yaşanabilir.
• Eğer program SolidWorks ortamına entegre olacaksa, ideal bir seçim değildir.
• İç işlem(“in-process”) fonksiyonlarını kullanmaya izin vermez.

Özet ve Tavsiyeler

Makrolar SolidWorks içinde çalışır, VBA ile yazılır, Yazımı ve testi (debug) kolay olduğundan :
• Yeni SolidWorks API programcıları
• Zamanı az olan programcılar
• .NET dillerinin fazla yeteneklerine ihtiyacı olmayan programcılar
• Kişisel işler
için tercih sebebidir.
Add-in’ler sağlam .NET programlama dilleri(veya C++) ile yazılır. Entegre edilmiş kullanıcı deneyimini Tools->Add-ins den açıp kapatabiliriz.

VB.NET, C# veya C++ bilen tecrübeli programcılar için:
• Güçlü bir entegre program deneyimi
• Bir veya birden çok şirket için kullanmak
• Artan güvenlik ihtiyaçları

Stand-alone .Net veya C++ dilleri ile yazılır, Add-in’e benzemez. SolidWorks içinde çalışmaz, bu programcıya esneklik sağlar. Stand-alone şunlar için tavsiye edilir:
• VB.NET, C# veya C++ bilen tecrübeli programcılar için
• Programın bir bölümünde SolidWorks kullanacak programlar için
• Çoklu SolidWorks penceresi kullanacak programlar için

Leave a Reply