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.
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
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
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 funkcjiWokół 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.
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
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
Edycje
Porównanie funkcji
Wszystkie edycje zawierają komplet funkcji technicznych. Różni je zakres licencji — wielkość organizacji będącej beneficjentem.
| Edycje | Small Business Home / Education 79 € |
Popular
Medium Business 10–249 Maksymalna wielkość organizacji 349 € |
Large Business Gov · Military · 250+ 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 | |||
| 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 | |||
| Maksymalna wielkość organizacji | < 10 pracowników · obrót < 1 mln € | 10–249 pracowników · obrót < 50 mln € | 250+ pracowników · bez ograniczeń |
| Rodzaj użytkowania | Osobiste · Akademickie · Non-profit | Komercyjne profesjonalne | Komercyjne · Rządowe · Wojskowe |
| 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ę → | Uzyskaj licencję → |
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
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 →Partnerzy
Francuski ekosystem inżynierii wstecznej i cyberbezpieczeństwa.
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ę
Wystarczy odpowiedzieć na 2 pytania dotyczące Państwa profilu, a dobierzemy odpowiednią edycję — w mniej niż 30 sekund.
Rozpocznij dobór →