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

Как правильно использовать GetModuleFileName? - C++ WinAPI

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ WinAPI Копирование файлов в winapi http://www.cyberforum.ru/win-api/thread953294.html
Нужно выбрать файл для чтения и для записи с помощью стандартных диалогов Open и Save as и скопировать содержимое одного файла в другой. Выдает сообщение, что неправильный путь к файлу или, что этот...
C++ WinAPI Внести изменения в карту таблицы сообщений есть структура: struct AFX_MSGMAP { const AFX_MSGMAP* (PASCAL* pfnGetBaseMap)(); const AFX_MSGMAP_ENTRY* lpEntries; }; объявлена в afxwin.h, в заполняется статически при связывании событий, в... http://www.cyberforum.ru/win-api/thread953241.html
C++ WinAPI Изменить свойства VPN соединения
Добрый день. В Windows, в центре управления сетями и общим доступом, содержатся значки всех подключенных адаптеров, будь то Wifi, Lan, либо VPN-соединения. При вызове окна со свойствами у данных...
C++ WinAPI WindowProc необъявленный идентификатор
Не могу понять в чем проблема WindowProc=FuncWndProc; void FuncWndProc(Message winmes); { ////////// } пишет, что WindowProc необъявленный идентификатор
C++ WinAPI Окно с кнопками http://www.cyberforum.ru/win-api/thread953060.html
Ребята подскажите нужно чтоб при нажатии кнопки создавалась дочернее окно с определенным именем,вот я создал кнопку наложил на нее изображение а что дальще не в дуплю... LRESULT CALLBACK...
C++ WinAPI winapi, c++, нарисовать ломанные юзер ставит точки мышкой, а они должны соединяться линиями. как это реализовать? подробнее

Показать сообщение отдельно
castaway
Эксперт С++
4884 / 3019 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
13.03.2015, 21:55
Если подойти к этому ответственно, то это будет выглядеть примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <windows.h>
#include <cstdio>
 
char * get_module_file_name( HMODULE hModule = NULL ) {
    size_t size = 1;
    char * buffer;
    for ( ; ; ) {
        buffer = new char [size + 1];
        DWORD r = GetModuleFileName( hModule, buffer, size );
        if ( r < size && r != 0 ) break;
        if ( GetLastError() == ERROR_INSUFFICIENT_BUFFER ) {
            delete buffer;
            size += 64;
        } else return NULL;
    }
    return buffer;
}
 
int main()
{
    char * mod_name = get_module_file_name();
    if ( mod_name ) {
        printf( "%s\n", mod_name );
    } else {
        printf( "get_module_file_name(): error\n" );
    }
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru