![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
ido |
![]()
Сообщение
#1
|
Студент ![]() Группа: Участник Сообщений: 26 Регистрация: 7.4.2010 Пользователь №: 1602 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Есть программка, которая использует для своей загрузки около 30-и WinApi-функций из Kernel32.dll, User32.dll и Ole32.dll. При дальнейшей работе дополнительных функций она не использует. Нужно заменить в исходниках вызов этих функций на аналогичные из любой кроссплатформенной библиотеки, внося минимум изменений в код. Какую библиотеку проще всего использовать для этого и есть ли для нее что-то типа справочника по аналогам функций?
|
|
|
maint |
![]()
Сообщение
#2
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: ![]() ![]() ![]() |
Есть программка, которая использует для своей загрузки около 30-и WinApi-функций из Kernel32.dll, User32.dll и Ole32.dll. При дальнейшей работе дополнительных функций она не использует. Нужно заменить в исходниках вызов этих функций на аналогичные из любой кроссплатформенной библиотеки, внося минимум изменений в код. Какую библиотеку проще всего использовать для этого и есть ли для нее что-то типа справочника по аналогам функций? обычно конкретно спрашивают. А так, про телепатов в отпуске можно только ответ получить |
|
|
ViGOur |
![]()
Сообщение
#3
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
ido, какие функции хоть используются?
Как вариант в принципе можно их обернуть чем-то вроде
|
|
|
molchanoviv |
![]()
Сообщение
#4
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: ![]() ![]() ![]() |
Если выбирать по похожести, то это WxWidgets. А так по-моему ничего лучше Qt нет.
|
|
|
ido |
![]()
Сообщение
#5
|
Студент ![]() Группа: Участник Сообщений: 26 Регистрация: 7.4.2010 Пользователь №: 1602 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата("ViGOur") какие функции хоть используются? Я тупо скопировал часть списка Цитата … Не думаю, что это проясняет что-либо. Хотелось бы выработать единообразную методику перехода с WinApi-функций на функции из кроссплатформенных библиотек, тогда, возможно, это будет интересно не только мне. Поэтому, надо искать аналоги в какойто документации.Name: WriteFile Name: SetFilePointer Name: SetFileAttributesA Name: ReadFile Name: MoveFileA Name: GetVolumeInformationA Name: GetTempPathA Name: GetModuleFileNameA Name: GetLastError Name: GetFileTime Name: GetFileSize Name: GetFileAttributesA Name: GetDriveTypeA Name: GetCommandLineA Name: FindNextFileA Name: FindFirstFileA Name: FindClose Name: FileTimeToSystemTime Name: DeleteFileA Name: CreateFileA Name: CreateDirectoryA Name: CloseHandle Name: VirtualProtect Name: VirtualFree Name: VirtualAlloc Name: SuspendThread Name: Sleep … Цитата("ViGOur") Как вариант в принципе можно их обернуть чем-то вроде… Насколько я знаю, это стандартный подход, но в данном случае обертки излишнее. Ведь под Windows уже есть готовая программа. Достаточно просто указать -- Библиотека.Функция (из Qt, WxWidgets…) |
|
|
molchanoviv |
![]()
Сообщение
#6
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: ![]() ![]() ![]() |
Большинство из перечисленных функций можно заменить функциями из QFile. Ну или написать самому используя QFile.
|
|
|
Iron Bug |
![]()
Сообщение
#7
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: ![]() ![]() ![]() |
ну, как вариант - заменить на бустовские библиотеки. но придётся дорабатывать.
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#8
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
ido |
![]()
Сообщение
#9
|
Студент ![]() Группа: Участник Сообщений: 26 Регистрация: 7.4.2010 Пользователь №: 1602 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Цитата("molchanoviv") Большинство из перечисленных функций можно заменить функциями из QFile. У меня есть возможность посмотреть Qt только в Linux’е. Открыл QFile.h. Если правильно понимаю, то на месте вызовов ядра в Windows-версии должны быть WinApi-функции?
|
|
|
molchanoviv |
![]()
Сообщение
#10
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 16.2.2025, 23:34 |