Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
FireNovel
 Аватар для FireNovel
150 / 73 / 8
Регистрация: 09.04.2010
Сообщений: 297
#1

вытянуть значение HINSTENCE из текущего потока - C++

28.10.2011, 10:39. Просмотров 511. Ответов 4
Метки нет (Все метки)

Доброго времени суток!
Подскажите как можно вытянуть значение HINSTENCE из текущего потока. Может есть какая функция.
Т.е. хочу в принципе в любом месте кода уметь получить hInst, чтобы не тягать это значение из WinMain.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2011, 10:39     вытянуть значение HINSTENCE из текущего потока
Посмотрите здесь:

C++ Как вытянуть RGB из COLORREF?
C++ boombastiku. Как вытянуть альтернативные номера из адресной книги?
Создание потока из потока. C++
C++ Вытянуть номер телефона
C++ Разработать программу «Успеваемость», позволяющую рассчитать значение среднего балла студента, группы, потока
Как из файла/строки вытянуть данные? C++
C++ Нужно вытянуть путь из переменной
C++ Вызывть метод одного потока из другого потока
Значение потока вывода C++
Два потока, две очереди, два потока C++
C++ Вытянуть число из массива
C++ Pugixml - вытянуть тег из файла при разном его вложении

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
28.10.2011, 11:01     вытянуть значение HINSTENCE из текущего потока #2
Хмм знаю только как дескриптор текущего окна получить HWND = GetForegroundWindow(); Возможно через HWND можно потом получить и HINSTANCE, честно ещё не копал в этом направлении...
FireNovel
 Аватар для FireNovel
150 / 73 / 8
Регистрация: 09.04.2010
Сообщений: 297
28.10.2011, 11:41  [ТС]     вытянуть значение HINSTENCE из текущего потока #3
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Возможно через HWND можно потом получить и HINSTANCE
Да можно есть спец макрос в WindowsX.h типа
C++
1
HINSTENCE GetInstence(HWND)
Мне это не подходит т.к. HINSTENCE мне нужен до/для создания окна посредством CreateWindow() один из параметров которой как раз и есть HINSTENCE.
-=ЮрА=-
Заблокирован
Автор FAQ
28.10.2011, 12:06     вытянуть значение HINSTENCE из текущего потока #4
FireNovel, на сколько я понял окна у вас ещё нет, вы его создаёте и нам нужно самим "придумать" HINSTANCE. Думается HINSTANCE такой же дескриптор как и HWND т.е допустимо в hInst передать любой незанятый систомой HINSTANCE.
Эм это будет довольно геморно, но предлагаю EnumWindows перечислять все HWND cистемы, затем вычислять саамый большой 0х%р HINSTANCE и добавляя к нему 1-чку пробовать запихивать "наш свободный" HINSTANCE в CreateWindow. Хотя думается что у Мелкософта должно быть что-то аля
GetFreeHINSTANCE

Добавлено через 1 минуту
Цитата Сообщение от FireNovel Посмотреть сообщение
HINSTENCE GetInstence(HWND)
- этого не знал, спасибо!
FireNovel
 Аватар для FireNovel
150 / 73 / 8
Регистрация: 09.04.2010
Сообщений: 297
28.10.2011, 13:29  [ТС]     вытянуть значение HINSTENCE из текущего потока #5
Благодаря xAtom ответ действительно оказался простым см тут

Да можно есть спец макрос в WindowsX.h типа
C++
1
HINSTENCE GetInstence(HWND)
Полное определение макроса может кому пригодится:
C++
1
#define     GetWindowInstance(hwnd) ((HMODULE)GetWindowLongPtr(hwnd, GWLP_HINSTANCE))
Yandex
Объявления
28.10.2011, 13:29     вытянуть значение HINSTENCE из текущего потока
Ответ Создать тему
Опции темы

Текущее время: 12:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru