Це команда winedump-development, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS.
ПРОГРАМА:
ІМ'Я
winedump - інструмент Wine DLL
СИНТАКСИС
звалище вина [-h | sym sym | spec DLL | дамп файл ] [mode_options]
ОПИС
звалище вина це інструмент Wine, який має на меті допомогти:
Відповідь: Повторне впровадження DLL Win32 для використання в Wine, або
B: Компіляція програми Win32 з Winelib, яка використовує x86 DLL
Для обох завдань, щоб мати можливість зв'язатися з Win функції деякі
потрібен код клею. Цей «клей» має форму a .спец файлу.
Команда .спец файл разом із деяким фіктивним кодом використовується для створення a
вино .тому відповідний DLL Windows. The winebuild програма
потім може розв’язувати виклики функцій DLL.
Створення .спец файл є трудомістким завданням, під час якого він
легко зробити помилку. Ідея про звалище вина полягає в автоматизації цього завдання
і створіть більшість коду підтримки, необхідного для вашої DLL. в
доповнення ви можете мати звалище вина створити код, який допоможе вам повторно реалізувати a
DLL, забезпечуючи відстеження викликів DLL і (у деяких випадках)
автоматичне визначення параметрів, умовних умов викликів і
повертати значення функцій DLL.
Іншим використанням цього інструмента є відображення (дамп) інформації про 32-бітний файл
Файл зображення у форматі DLL або PE. При такому використанні звалище вина Функції
подібно до інструментів, таких як pedump, які надаються багатьма компіляторами Win32
продавці.
в кінці кінців звалище вина також можна використовувати для демонтажу символів C++.
РЕЖИМИ
звалище вина можна використовувати в кількох різних режимах. Перший аргумент програми
визначає режим звалище вина забігатиме.
-h Режим допомоги. Роздруковано базову довідку щодо використання.
дамп Щоб дамп вмісту файлу.
spec Для створення файлів .spec і заглушок DLL.
sym Режим символів. Використовується для демонтажу символів C++.
ВАРІАНТИ
Параметри режиму залежать від режиму, заданого як перший аргумент.
Документи режим:
Опції не використовуються.
Програма друкує довідкову інформацію, а потім виходить.
Дамп режим:
файл Видає вміст файл. Підтримуються різні формати файлів
(PE, NE, LE, Minidumps, .lnk).
-C Вмикає розшифровку символів.
-f Видає інформацію заголовка файлу.
Ця опція скидає лише стандартні структури заголовка PE,
разом із розділами COFF, доступними у файлі.
-j dir_name
Дампує лише вміст каталогу dir_name, для файлів
який заголовок вказує на каталоги.
Для файлів PE наразі імпорт, експорт, налагодження, ресурс,
реалізовані каталоги tls і clr.
Для файлів NE наразі є каталоги експорту та ресурсів
здійснено.
-x Все скидає.
Ця команда друкує всю доступну інформацію (включаючи всю
доступні каталоги - див -j варіант) про файл. Ви можете
хочуть передати вихідний канал більше/менше або у файл, оскільки
буде вироблено багато продукції.
-G Дампує вміст розділу налагодження, якщо такий є (поки що тільки stabs
інформація підтримується).
Специфікація режим:
DLL Скористайтесь DLL для вхідного файлу та створення коду реалізації.
-I реж Шукайте прототипи в реж (припускає -c). У випадку
DLL Windows, це може бути або стандартне включення
каталог із вашого компілятора або каталог включення SDK.
Якщо у вас є текстовий документ із прототипами (наприклад
документація), які також можна використовувати, якщо вам це може знадобитися
щоб видалити деякі некодові рядки, щоб переконатися, що прототипи є
розібрано правильно.
Команда реж Аргумент також може бути специфікацією файлу (наприклад
включати/*). Якщо він містить символи підстановки, ви повинні ввести його в лапки
запобігти розширенню оболонки.
Якщо у вас немає прототипів, вкажіть / dev / null as реж.
звалище вина можливо, все ще зможе створити якийсь робочий заглушок
код для вас.
-c Згенеруйте скелетний код (потрібно -I).
Цей варіант розповідає звалище вина щоб створити заглушки функцій для кожного
функція в DLL. Як звалище вина зчитує кожен експортований символ
з вихідної DLL, вона спочатку намагається розкрити ім’я. Якщо
ім'я - це символ C++, аргументи, клас і повернення
всі значення закодовані в імені символу. Winedump
перетворює цю інформацію в прототип функції C. Якщо
це не вдається, файл(и), зазначений у -I аргумент є
відскановано прототип функції. Якщо такий знайдений, він використовується
для наступного кроку процесу, генерування коду.
-t Аргументи TRACE (припускає -c).
Цей параметр створює той самий код, що і -c, крім цього
аргументи виводяться на друк під час виклику функції.
Структури, які передаються за значенням, друкуються як "struct",
а функції, які приймають списки змінних аргументів, друкують "...".
-f DLL Переадресовувати дзвінки на DLL (припускає -t).
Це найскладніший рівень генерації коду. The
генерується такий самий код, як -t, однак додається підтримка для
переадресація викликів до іншої DLL. DLL для пересилання є
дано як DLL.
-D Сформувати документацію.
За замовчуванням звалище вина створює стандартний коментар на
заголовок кожної функції, яку вона створює. Передача цієї опції
робить звалище вина вивести повний шаблон заголовка для стандарту
Документація Wine з переліком параметрів і значення, що повертається
функції.
-o ім'я
Встановіть вихідну назву dll (за замовчуванням: DLL).
За замовчуванням, якщо звалище вина виконується на DLL Foo, це створює
файли foo.spec, foo_main.c тощо, а префікси будь-які
функції, створені за допомогою FOO_. Якщо -o бар дається,
ці стануть бар.спец, bar_main.c та BAR_
відповідно.
Ця опція в основному корисна під час генерації DLL для пересилання.
-C Припустимо, виклики __cdecl (за замовчуванням: __stdcall).
Якщо winebuild не може визначити умову виклику,
__stdcall використовується за замовчуванням, якщо ця опція не має
надано.
Unless -q надано, для кожного буде надруковано попередження
функція що звалище вина визначає конвенцію виклику
for і який не відповідає передбачуваній конвенції про виклик.
-s Num Почніть пошук прототипу після символу Num.
-e Num Завершіть пошук прототипу після символу Num.
Проходячи повз -s or -e варіанти, які ви можете мати звалище вина спробуйте
генерувати код лише для деяких функцій у вашій DLL. Це може
використовуватися для створення однієї функції, наприклад, якщо ви
хотів додати функціональність до існуючої DLL.
-S символічний файл
Шукати лише назви прототипів, знайдені в символічний файл.
Якщо ви хочете створити код лише для підмножини експортованих
функції з вихідної DLL, ви можете використовувати цю опцію для
надайте текстовий файл, що містить імена символів до
витяг, по одному на рядок. Лише символи, присутні в цьому файлі
буде використовуватися у вашій вихідній DLL.
-q Не показуйте прогрес (тихо).
Вихід не друкується, якщо не буде виявлено фатальну помилку.
-v Показуйте багато деталей під час роботи (дослівно).
Є 3 рівні виходу звалище вина біжить. The
рівень за замовчуванням, коли ні -q or -v надаються, друкує
кількість експортованих функцій, знайдених у dll, а потім
ім'я кожної функції під час її обробки та статус
вказівка на те, чи було оброблено нормально. З -v дано, а
багато інформації скидається в той час звалище вина роботи: це
призначений для налагодження будь-яких проблем.
Sym режим:
sym Деманглує символ C++ sym а потім виходить.
Використовуйте winedump-development онлайн за допомогою служб onworks.net