Decompiler-VB.Net
PL
Zaloguj się
VBReFormer Gen2 Silnik napisany od nowa, pełna obsługa P-code i studio online w publicznej wersji beta. Przeczytaj zapowiedź →
Strona główna

Produkt

VBReFormer, natywny i P-Code VB decompiler dla Twoich aplikacji VB5 i VB6

Generacja 2: najwydajniejsza dekompilacja natywna i P-Code. Silnik interpretuje kod maszynowy i P-Code, oba tryby kompilacji VB6, zamiast rozpoznawać wzorce. Odzyskuje kod źródłowy, formularze i zasoby z pliku EXE, DLL lub OCX i odbudowuje projekt, który otwiera się w IDE. Na binarium wzorcowym o rozmiarze 9,35 MB: 1 976 zapisanych procedur, 0 pustych ciał, 0 znaczników błędów, w 12 sekund.

747 808+ pobrań 27 lat doświadczenia
.exe.dll.ocx.scrVB5 VB6 kod natywny i P-Code

Zaufali nam

oraz instytucje publiczne, laboratoria obronne i uniwersytety na pięciu kontynentach


Przykład zdekompilowanego kodu

Private Sub Form_Load()

Dim nRetVal As Long

Dim sBuffer As String

nRetVal = GetProfileStringA(

"Settings", "Language", "EN",

sBuffer, 255)

If nRetVal > 0 Then

Me.Caption = sBuffer

End If

End Sub

Generacja 2 · Wszystkie edycje

Najwydajniejszy dekompilator natywny i P-Code

Dekompilator generacji 2 nie rozpoznaje wzorców: interpretuje kod, łącznie z rejestrami, pamięcią wirtualną i stosem FPU, a następnie tłumaczy go z powrotem na czytelny Visual Basic. Traktuje kod natywny tak samo jak P-Code, oba tryby kompilacji VB6, a jego wynik jest mierzony względem oryginalnego źródła.

  • Abstrakcyjna interpretacja kodu maszynowego zamiast rozpoznawania wzorców
  • 1 164 zdefiniowane instrukcje P-Code, 1 158 przetłumaczonych na VB6
  • Rekonstruuje wywołania środowiska uruchomieniowego (MSVBVM60.dll)
  • 15 680 deklaracji API Win32, 6 442 stałe, 422 typy
  • Wnioskowanie typów, odzyskane nazwy, granice tablic, tabele skoków Select Case
  • Cztery profile optymalizacji VB6 objęte i mierzone osobno
Uwaga: od VBReFormer 7 dekompilowany jest zarówno P-Code, jak i kod natywny. Poprzednia generacja odtwarzała wyłącznie kod natywny.

90 % kodu źródłowego odzyskane średnio. Nazwy zmiennych lokalnych i symbole prywatne nie są zapisane w pliku binarnym i nie wchodzą do tej miary.

Zmierzone na binarium wzorcowym 9,35 MB, w porównaniu z oryginalnym źródłem

Generacja 1 Gen2 (V7)
Procedury zapisane przy eksporcie 1 799 1 976
Puste ciało, choć w źródle nie jest puste 229 0
Znaczniki błędów pozostawione w wygenerowanym kodzie 1 129 0
Sygnatury oddane jako « As Unknow » 75 014 0
Otwarcie → zapisany projekt ≈ 88 s 12 s

121 ze 149 projektów ze stanowiska testowego kompiluje się ponownie bez zmian w IDE Visual Basic 6.

Jedna licencja obejmuje obie generacje: VBReFormer 7 (Windows 10 i 11) oraz generację 1 (Windows XP do 11) pobiera się z tego samego konta.

Zobacz pokrycie, funkcja po funkcji
Professional i Enterprise

Wokół dekompilatora: analiza i nawigacja

Wygenerowany kod czyta się z jego narzędziami: deasembler x86 i P-Code, grafy wywołań i przepływu sterowania, inwentarz symboli, globalna zmiana nazw, widok szesnastkowy. To, co silnik odczytał, i to, co zsyntetyzował, pozostaje rozróżnione.

Deasemblacja: kod maszynowy → asembler
Graf wywołań — trzy skale, filtry wywołujących i wywoływanych
Graf przepływu sterowania, z blokami nieosiągalnymi
Spis symboli — nazwy odczytane a nazwy wygenerowane
Zmiana nazw globalnie — miejsca wywołań w innych modułach podążają
Adnotowany widok szesnastkowy i łatki binarne
Wnioskowanie typów, propagowane do ciał i warunków
Nagłówki wymagane przez VB6 do ponownego otwarcia pliku
Wszystkie edycje

Wyodrębnianie interfejsu

VBReFormer wyodrębnia wszystkie elementy projektu graficznego ze skompilowanego pliku binarnego, nawet bez oryginalnych plików projektu.

  • Wyodrębnia plik projektu VB (.vbp)
  • Wyodrębnia formularze i kontrolki (.frm, .ctl, .pag)
  • Wyodrębnia zasoby binarne (.frx, .ctx, .pgx)
  • Identyfikuje wszystkie zewnętrzne komponenty COM, OLE i ActiveX
  • Wyodrębnia osadzone obrazy i ikony

Zrekonstruowane dane wyjściowe

Form1.frm — main form extracted

Form1.frx — binary resources

Module1.bas — standard module

Class1.cls — class module

UserCtrl.ctl — user control

Project.vbp — project file

Unikalne · Wszystkie edycje

Edytor skompilowanego interfejsu

Jedyne narzędzie na rynku, które pozwala edytować skompilowany interfejs VB5/VB6 bez żadnych ograniczeń rozmiaru. Zmiana właściwości kontrolek, poprawianie etykiet, podmiana obrazów — wszystko bezpośrednio w skompilowanym pliku binarnym.

  • Edycja właściwości kontrolek w skompilowanym pliku binarnym
  • Brak ograniczeń rozmiaru (unikalna funkcja)
  • Podmiana osadzonych bitmap i ikon
  • Dodawanie ukrytych właściwości bez ponownej kompilacji
  • Eksport pojedynczych zasobów do ponownego użycia

Edycję wewnątrz binarium zapewnia generacja 1, dostarczana z licencją. Generacja 2 odczytuje powierzchnię formularza i wszystkie jego właściwości, ale jeszcze ich nie zapisuje.

Edytowalne właściwości

Caption "My Application v2.1"
BackColor &H00FFFFFF&
Font.Name "Arial"
Font.Size 12
Width 5280
Height 3840
Icon [binary resource]

Edycje

Porównanie funkcji

Trzy edycje, według tego, co odblokowują: Standard odzyskuje i eksportuje kod źródłowy, Professional dodaje narzędzia analizy, licencja zbiorowa obejmuje wszystkich użytkowników jednostki.

Edycje

Standard

Odzyskaj swój kod źródłowy

79 € na użytkownika

Popular

Professional

Standard plus narzędzia analizy

229 € na użytkownika

Licencja zbiorowa

Professional dla wszystkich użytkowników jednostki

od 799 €

Dekompilator (P-Code i kod natywny)
Rekonstrukcja: kod maszynowy → Visual Basic
Rekonstrukcja P-code → Visual Basic
1 164 zdefiniowane instrukcje P-Code, 1 158 przetłumaczonych na VB6
Rekonstrukcja wywołań środowiska uruchomieniowego (MSVBVM60)
15 680 deklaracji API Win32, 6 442 stałe, 422 typy
Wnioskowanie typów, propagowane do ciał i warunków
121 ze 149 projektów kompiluje się ponownie bez poprawek
Deasembler
Identyfikacja procedur (formularze, moduły, klasy…)
Deasemblacja: kod maszynowy → asembler
Podświetlanie składni asemblera i VB
Wyszukiwarka w kodzie deasemblowanym
Wyodrębnianie interfejsu
Wyodrębnianie pliku projektu (.vbp)
Wyodrębnianie formularzy (.frm, .ctl, .pag)
Binarne pliki zasobów (.frx, .ctx, .pgx)
Identyfikacja komponentów COM / OLE / ActiveX
Wyodrębnianie osadzonych obrazów i ikon
Edytor projektu interfejsu
Edycja właściwości kontrolek w skompilowanym pliku binarnym
Brak ograniczeń rozmiaru (funkcja unikalna)
Zamiana osadzonych zasobów (obrazy, ikony)
Dodawanie ukrytych właściwości bez rekompilacji
Narzędzia analizy
Graf wywołań — trzy skale, filtry wywołujących i wywoływanych —
Graf przepływu sterowania, z blokami nieosiągalnymi —
Odwołania krzyżowe —
Zmiana nazw globalnie — miejsca wywołań w innych modułach podążają —
Ogólne
Obsługa Visual Basic 5 i 6
Obsługiwane formaty: .exe .dll .ocx .scr
Windows 10 → Windows 11
Bezpłatne aktualizacje produktu
Dokumentacja online i podręcznik użytkownika
Zakres licencji
Użytkownicy Na użytkownika, od 1 do 19 Na użytkownika, od 1 do 19 20, 100 lub bez ograniczeń
Rodzaj użytkowania Prywatnie lub komercyjnie, każda organizacja Prywatnie lub komercyjnie, każda organizacja Prywatnie lub komercyjnie, każda organizacja
Instalacja Na użytkownika lub na komputer Na użytkownika lub na komputer Na użytkownika lub na komputer
Wybierz licencję Uzyskaj licencję → Uzyskaj licencję → Zapytanie o wycenę →

Licencja ważna 1, 2 lub 3 lata zależnie od okresu wybranego przy zamówieniu, wsparcie i aktualizacje wliczone przez cały czas. VAT nie ma zastosowania — art. 293 B francuskiego kodeksu podatkowego.

Najpierw warto wypróbować bezpłatnie — edycja Free pokazuje, co silnik rekonstruuje z Państwa pliku binarnego → · Lub wypróbuj online, bez instalacji → · Dokumentacja

100% francuskie

Zaprojektowany i opracowany we Francji

VBReFormer jest projektowany, tworzony i utrzymywany we Francji, między Tuluzą a Sabaudią — francuska i europejska wiedza ekspercka w zakresie inżynierii wstecznej, bez zależności spoza Europy.

Tuluza

Haute-Garonne · Oksytania

Sabaudia

Owernia-Rodan-Alpy

Właściwe narzędzie do właściwego zadania

.NET, C# czy VB.NET? Bezpłatne narzędzia takie jak dnSpy czy ILSpy radzą sobie z tym bardzo dobrze. Naszą specjalnością jest Visual Basic 5 i 6 — problem naprawdę trudny i jedyny, który chcemy rozwiązywać lepiej niż ktokolwiek inny.

Dlaczego taka specjalizacja →

Najczęściej zadawane pytania

Jaka jest różnica między P-Code a Native Code?

VB6 kompiluje do P-Code (pseudokodu wykonywanego przez maszynę wirtualną) albo do kodu natywnego (instrukcji maszynowych x86, ustawienie domyślne). Od generacji 2 (VBReFormer 7) ten sam silnik dekompiluje oba do czytelnego Visual Basica: 1 158 z 1 164 zdefiniowanych instrukcji P-Code jest tłumaczonych, pomiar opublikowany na stronie pokrycia. Poprzednia generacja odtwarzała tylko kod natywny.

Czy silnik dopasowuje wzorce, czy interpretuje kod?

Interpretuje. Generacja 1 dopasowywała wzorce w skompilowanym kodzie i oddawała tylko to, co rozpoznała. Generacja 2 interpretuje kod maszynowy i P-code, aby odtworzyć wyrażenia i typy; tego, czego nie potrafi odtworzyć, nie odrzuca ani nie zgaduje, lecz nazywa i uzasadnia w notatkach eksportu.

Czy VBReFormer potrafi zdekompilować każdy program VB6?

VBReFormer analizuje wszystkie pliki wykonywalne skompilowane w Visual Basic 5 lub 6, zarówno w P-Code, jak i w kodzie natywnym. Interfejs — formularze, kontrolki, zasoby — jest w każdym przypadku wyodrębniany w całości. Odtworzenie kodu zależy od tego, co zachował plik binarny: bezpłatna wersja pokaże Ci to na Twoim własnym pliku, przed zakupem.

Czy zdekompilowany kod kompiluje się ponownie w IDE Visual Basic 6?

Często: na stanowisku testowym ze 149 projektami 121 kompiluje się ponownie bez poprawek. Eksport zapisuje nagłówki wymagane przez IDE (VERSION, Attribute VB_Name), bez których VB6 odrzuca plik. To, czego nie udało się odtworzyć, jest nazwane i uzasadnione w notatkach eksportu, zamiast być wypełnione prawdopodobną wartością.

Co da się odzyskać z pliku wykonywalnego, a co jest stracone na zawsze?

To, czego Visual Basic potrzebuje w czasie wykonania, jest w pliku i da się odzyskać: nazwy formularzy, klas, modułów i kontrolek, procedury obsługi zdarzeń, publiczne składowe klas, właściwości interfejsu, wywołania runtime, deklaracje API. Tego, co kompilator odrzucił, nie odzyska żadne narzędzie: komentarzy, nazw zmiennych lokalnych i parametrów, stałych nazwanych zastąpionych ich wartością oraz nazw procedur w modułach .bas. Średnio odzyskuje się 90 % kodu źródłowego; to, czego brakuje, wynika z tych elementów nieobecnych w pliku.

Co jeśli dekompilacja nie zadziała na moim pliku binarnym?

Właśnie do tego służy edycja Free: pokazuje ona, na PAŃSTWA pliku i przed jakimkolwiek zakupem, co można wyodrębnić — formularze, zasoby, strukturę projektu. Zawsze zalecamy, aby najpierw ją wypróbować. Ponieważ licencje są treścią cyfrową dostarczaną natychmiast, sprzedaż jest ostateczna; w razie problemu technicznego nasze wsparcie pomoże znaleźć rozwiązanie.

Czy istnieje wersja bezpłatna?

Tak, i bez kupowania czegokolwiek. Bezpłatna edycja desktopowa to ten sam instalator co edycja licencjonowana: wyodrębnia pełny interfejs (formularze, zasoby, strukturę projektu) i pokazuje podgląd zdekompilowanego kodu, bez limitu czasu. Studio online, dostępne w jedenastu językach, robi to samo w przeglądarce bez instalacji: deasemblacja, P-code, projektant, projekt .vbp i zasoby są udostępniane w całości, a odtworzony kod źródłowy jako podgląd. Licencja odblokowuje pełny kod i eksport projektu.

Jak długo obowiązuje licencja?

Przez okres wybrany przy zakupie: rok, dwa lub trzy lata. Wsparcie e-mailowe i wszystkie aktualizacje wydane w tym czasie są wliczone, bez dopłat. Po jego upływie dostęp wygasa i można wykupić nową licencję. Wersja bezpłatna pozostaje dostępna bez ograniczeń czasowych.

Czy dekompilacja programu jest legalna?

Tak, jeśli posiadają Państwo prawa do oprogramowania — typowym przypadkiem jest rekonstrukcja własnego utraconego kodu źródłowego — lub w ramach przepisów dotyczących interoperacyjności. Muszą Państwo posiadać niezbędne prawa do analizowanego programu.

Czy VBReFormer dekompiluje .NET, VB.NET lub C#?

Nie. VBReFormer obsługuje Visual Basic 5 i 6: .exe, .dll, .ocx i .scr. Zestaw .NET wymaga dekompilatora .NET; kilka z nich porównujemy na blogu.

Wybierz licencję

Wybierz edycję i liczbę użytkowników: Twoja licencja będzie gotowa w mniej niż 30 sekund.

Rozpocznij dobór →