← PROJE ARŞİVİ

viCheck

LabVIEW kurulu olmadan VI dosyalarını ve klasörleri görsel olarak karşılaştıran masaüstü aracı.

PythonFlaskpylabviewSVGpywebviewPyInstaller 14.10.2026 — devam ediyor

viCheck↓ release.zip

İki VI dosyasını ya da iki klasörü karşılaştırır. Blok diyagramları LabVIEW olmadan çözümlenir ve yan yana SVG olarak çizilir. Motor (pylabview + karşılaştırma + çizim) VIVER projesindekiyle aynıdır; viCheck yalnızca karşılaştırır — depo veya commit yoktur.

viCheck iki VI dosyasını yan yana karşılaştırıyor

Başlarken

  1. Bu sayfanın üstündeki disketle paketi (viCheck-win64.zip) indirin.
  2. Herhangi bir yere açın ve viCheck\viCheck.exe dosyasını çalıştırın.

Hiçbir şey kurmanız gerekmez: Python, Flask ve pylabview klasörün içindedir ve LabVIEW gerekmez.

Gereksinimler ve notlar

  • Windows 10 veya 11, 64 bit.
  • Pencere, Windows 11'de ve güncel Windows 10'da yerleşik olan Microsoft Edge WebView2'yi kullanır. Yoksa viCheck bir Edge/Chrome penceresinde ya da varsayılan tarayıcıda açılır.
  • PDF raporları Microsoft Edge (veya Google Chrome) ile yazdırılır.
  • Exe imzalı olmadığı için Windows SmartScreen ilk açılışta uyarı verebilir: Ek bilgi → Yine de çalıştır.
  • .exe tek başına çalışmaz: yanında _internal klasörü olmalıdır.
  • İlk açılışta kısa bir nasıl kullanılır penceresi açılır; üstteki ? düğmesi onu tekrar gösterir.
  • Ayarlar ve önbellek kullanıcı başına %LOCALAPPDATA%\viCheck içinde tutulur; primitive adları yalnızca o bilgisayarda LabVIEW kuruluysa onun paletlerinden okunur.

Kullanım

  • A (eski) ve B (yeni) için bir VI ya da klasör seçin: Choose VI… / Choose folder…, bir yol yapıştırın ya da dosyayı/klasörü kutusuna bırakın (iki öğeyi birden bırakırsanız A ve B birlikte dolar). Compare.
  • İki VI → blok diyagramı farkı: değişiklik listesi, yan yana diyagramlar, eklenen/silinen/değişen öğeler renkli. j/k ile değişiklikler arasında gezinilir.
  • İki klasör → dosyalar göreli yollarına göre eşleştirilir: değişen, yalnızca A'da, yalnızca B'de, taşınan ve aynı dosyalar. Her VI için bir özet (içerik / görsel-yerleşim / yalnızca yeniden kaydedilmiş). Metin dosyaları için metin farkı.
  • SVG
    • Penceredeki SVG öğelerine bakmak için sağ tık → Inspect, ya da ↗ Open in browser ve F12.
    • ⬇ Save view as SVG: A + B görünümünü tam ekrandaki gibi tek bir SVG dosyası olarak kaydeder.
    • 🖼 Export SVG: A ve B diyagramlarını numaralı değişiklik işaretleriyle SVG dosyalarına çizer (+ README.md).
    • Klasör karşılaştırmasında 📄 Report with SVG images…: değişen her VI için SVG'ler içeren bir Markdown raporu (ZIP olarak da).
  • PDF: VI karşılaştırmasında 📄 PDF, klasör raporunda Also make a PDF. PDF, Windows ile gelen Microsoft Edge ile yazdırılır; SVG'ler vektör grafik olarak kalır (yakınlaştırınca net, metin aranabilir). Her VI için:
    • değişiklik listesi ve A ile B diyagramının tamamı tek görselde (yan yana ya da alt alta; sayfada hangisi daha büyük çiziliyorsa);
    • detay görünümleri: yakın değişiklikler gruplanır, her grup A ve B'nin aynı bölgesinden kırpılıp yaklaşık 1:1 (LabVIEW'un %100 boyutu) basılır; böylece büyük bir VI'ın genel görünümü küçük kalsa bile değişiklikler okunabilir;
    • Stacked Sequence'ler PDF'te varsayılan olarak çerçeve çerçeve gösterilir (açıldıklarında çok genişleyip sayfada küçülürler); Stacked Sequence → Flat seçeneği de vardır.
    • İçerik rapor hazırlanırken seçilir: özet tabloları, değişiklik listeleri, tüm diyagram, detay görünümleri, diğer dosyalar. Tek bir VI için dışa aktarma sayfasında aynı seçenekler ve ↻ Generate again vardır.
  • Kenar çubuğu: VI karşılaştırmasında üstteki dosya ayrıntıları ▴ Hide ile katlanır, değişiklik listesine daha çok yer kalır.
  • Primitive adları: VI dosyaları primitive'leri yalnızca numarayla saklar; adlar bir LabVIEW kurulumunun paletlerinden gelir. viCheck ilk açılışta bunları bilgisayardaki en yeni LabVIEW'dan okur. VI'larınız başka bir LabVIEW sürümüyle yapıldıysa ya da LabVIEW kurulu değilse, adları Primitive names sayfasından o sürümün klasöründen içe aktarın (ya da diyagramda bir primitive'e çift tıklayıp ad verin); aksi halde #numara olarak gösterilir.
  • Dil: arayüz İngilizce ve Türkçedir; sağ üstteki EN / TR ile değiştirilir, seçim kaydedilir. İlk açılışta Windows dili kullanılır. Raporlar ve SVG dışa aktarımları seçilen dilde yazılır; LabVIEW'un kendi terimleri (Value Change, Case Structure…) LabVIEW'daki gibi İngilizce kalır.

Komut satırı / LabVIEW'dan çağırma

viCheck.exe "C:\eski\Main.vi" "C:\yeni\Main.vi"
viCheck.exe "C:\proje_v1" "C:\proje_v2"
viCheck.exe --browser            (pencere yerine varsayılan tarayıcıda açar)

Aynı komut LabVIEW'dan System Exec.vi ile çalıştırılabilir.

Neleri okuyabiliyor?

pylabview'un çıkardıklarına ek olarak viCheck şunları çözer: Property/Invoke Node'ların özellik ve metot adları, referans sabitlerinin hedefleri, Event Structure çerçevelerinin olay adları ("OK": Value Change, <This VI>: Panel Close?, Timeout), Event Data Node alanları, cluster/dizi/path sabitlerinin içerikleri, kontrollerin klavye kısayolları (Enter/Esc/F1) ve metin biçimi değişiklikleri. Kesin olarak tanımlanamayan olay kodları aday adlarla gösterilir, ör. Mouse Down/Up (#8).

Güvenlik

Karşılaştırılan dosyalar yalnızca okunur. Her VI önce özel bir geçici klasöre kopyalanır, kopya karşılaştırma anında alınan özetle doğrulanır ve pylabview kopyayı ayrı bir süreçte okur. Önbellek, dışa aktarımlar ve primitive adları %LOCALAPPDATA%\viCheck içinde tutulur (VICHECK_DATA ortam değişkeniyle değiştirilebilir).

Pencere

viCheck, Windows'un yerleşik Microsoft Edge WebView2 bileşeniyle (pywebview) kendi penceresinde açılır; arayüz tarayıcıdakiyle aynıdır. WebView2 yoksa Edge/Chrome uygulama penceresinde, o da yoksa varsayılan tarayıcıda açılır.

Neden Electron değil: VI'ları okuyan motor Python ile yazıldı ve Electron'un yanında yine Python paketlemek gerekirdi. Bu şekilde exe çok daha küçük ve arayüz yine Chromium tabanlı.

Kaynaktan derleme

Kaynak kod GitHub'da. pylabview bir git alt modülü olarak eklendiği için --recursive ile klonlayın:

git clone --recursive https://github.com/abdullahcavuss/viCheck.git

Ardından build.bat dosyasına çift tıklayın (Python 3.9+ yalnızca derleme için gerekir). Sonuç dist\viCheck\viCheck.exe ve aynı klasörün ZIP hali dist\viCheck-win64.zip olur. Inno Setup 6 kuruluysa build.bat ayrıca bir kurulum dosyası da üretir: dist\viCheck-Setup-<sürüm>.exe. Derlemeden denemek için run.bat kullanın.

Lisans

MIT. pylabview (MIT) alt modül olarak kullanılır — kütüphane, mefistotelis/pylabview projesinin abdullahcavuss/pylabview çatalındaki heap-descriptions dalından gelir. LabVIEW, National Instruments Corporation'ın ticari markasıdır.