Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI В чем разница между SetViewportExtEx и SetWindowExtEx? https://www.cyberforum.ru/ win-api/ thread987933.html
Не могу понять различий между двумя функциями. Как понимаю из мсдн , SetWindowExtEx задает размер окна ,к которому позже будут нанесены деления , с помощью SetViewportExtEx но тогда почему не сделано так,что первая функция принимает ,какойто Rect и к нему разметки ?? Хотя в принципе имеется SetViewportOrgEx на практике не могу сообразить , как показать их полые возможности . ...
C++ WinAPI Вывод руссских символов winapi
Доброго времени суток, дело в следующем: по ходу программы требуется вывести русские символы(считанные из файла). Всё считывается, но вместо нужных символов выводятся юникодовские каракули. В чём проблема, как поправить? wchar_t c; wsprintf(c, L"%c",mas.imya);//вывод русского символа TextOut(hdc,x,y,LPCWSTR(c),2);
C++ WinAPI const char*' to 'LPCWSTR Код: ShellExecute(0, "cmd.exe", "open", "/k powercfg -h off", NULL, SW_HIDE); при компиляции видает ошибку: C:\Qt\QTProgram\manual\manual\mainwindow.cpp:43: ошибка: cannot convert 'const char*' to 'LPCWSTR {aka const wchar_t*}' for argument '2' to 'HINSTANCE__* ShellExecuteW(HWND, LPCWSTR, LPCWSTR, LPCWSTR, LPCWSTR, INT)' ShellExecute(0, "cmd.exe", "open", "/k powercfg -h off", NULL,... https://www.cyberforum.ru/ win-api/ thread986982.html C++ WinAPI сообщение WM_VSCROLL https://www.cyberforum.ru/ win-api/ thread986939.html
пытаюсь использовать функцию int ScrollWindowEx( _In_ HWND hWnd, _In_ int dx, _In_ int dy, _In_ const RECT *prcScroll, _In_ const RECT *prcClip, _In_ HRGN hrgnUpdate, _Out_ LPRECT prcUpdate,
Во время перетаскивания файла MoveFileEx заглушить процесс C++ WinAPI
Собственно, какие флаги не ставь, файл не до переместится в случае глушения процесса, в котором и вызывается MoveFileEx ?
C++ WinAPI VLC + DirectShow https://www.cyberforum.ru/ win-api/ thread986595.html
Здравствуйте. Есть задача - нужно написать декодер для VLC плеера. Собственно есть несколько вопросов: 1) DirectShow - я вот вычитал что это фреймфорк, предоставляет API и т.д. Но вопрос такой: По сути просто используя это АПИ что я получу на выходе? (dll библиотеку? Или что другое?) и куда потом положить то что будет на выходе? 2) Если я создам определенный декодер (что бы обработать какой-то...
C++ WinAPI Сделать всегда активным дочернее окно https://www.cyberforum.ru/ win-api/ thread986465.html
При работе с дочерним окном иногда, когда происходят какие-то команды в главном окне, активным становится главное окно, а дочернее уходит на задний план, пока не кликнешь. Как сделать, что-бы оно было всегда активным до его закрытия?
окно со стилем WS_EX_TOPMOST перекрывается окном без такого стиля C++ WinAPI
Суть проблемы есть приложение окно которого должно быть всегда по верх других окон для этого оно создается со стилем WS_EX_TOPMOST. И второе приложение с основным окном развернутым на весь экран но без этого стиля. Первое время всё работает хорошо. Но при работе второго приложения периодически создаются дочернии окна, которым это приложение динамически меняет стиль на WS_EX_TOPMOST, потом также...
C++ WinAPI intPtr to handle Доброго времени суток. Подскажите почему такой код код ниже не работает?(ошибки приведены тоже ниже) Handle - это handle окна windows forms hWnd = static_cast<HWND>(Handle.ToPointer()); SetWindowLong(hWnd,GWL_EXSTYLE,GetWindowLong(hWnd,GWL_EXSTYLE) | WS_EX_LAYERED); error LNK2028: unresolved token (0A000011) "extern "C" long __stdcall GetWindowLongW(struct HWND__ *,int)"... https://www.cyberforum.ru/ win-api/ thread986368.html C++ WinAPI имя директории мне надо записать имена папок в массив , какие функции для этого надо использовать? https://www.cyberforum.ru/ win-api/ thread986136.html
C++ WinAPI CryptGetHashParam Как самому сгенерить то, что генерит она?
Привет! Ткнине носом на пример или продемонстрируйте тут, как можно самому сгенерить хэш сумму, получаемому в примере с MSDN снизу в функции if (CryptGetHashParam(hHash, HP_HASHVAL, rgbHash, &cbHash, 0)) .... И почему размер хеша равен 16-и ? #define MD5LEN 16 #include <stdio.h> #include <windows.h> #include <Wincrypt.h> #define BUFSIZE 1024 #define MD5LEN 16
C++ WinAPI Поиск файлов в несколько потокв https://www.cyberforum.ru/ win-api/ thread985385.html
нужно реализировать поиск файлов в несколько потокв, пока без синхронизации, просто чтоб искало в несколько потоков, возможны повторения файлов) Написал вот такую функцию, но здесь почему то не создаються потоки. DWORD WINAPI ThreadFunc(LPVOID lpParam) { FuncParam *t = (FuncParam *) lpParam; HANDLE hFind; WIN32_FIND_DATA FileData; SYSTEMTIME sys;
0 / 0 / 1
Регистрация: 16.10.2011
Сообщений: 53
26.10.2013, 10:59  [ТС] 0

WinAPI C++ WM_DEVICECHANGE - C++ WinAPI - Ответ 5237972

26.10.2013, 10:59. Показов 9632. Ответов 18
Метки (Все метки)

Ответ

Цитата Сообщение от Убежденный Посмотреть сообщение
Последовательность примерно следующая.

заполняя структуру DEV_BROADCAST_DEVICEINTERFACE:
в dbcc_devicetype указываем DBT_DEVTYP_DEVICEINTERFACE, а в dbcc_classguid вписываем
GUID_DEVINTERFACE_DISK (чтобы перехватывать сообщения только от устройств,
поддерживающих данный интерфейс, в данном случае это "Дисковые устройства").
dbcc_size задаем равным "sizeof (DEV_BROADCAST_DEVICEINTERFACE)".
Нужные объявления находятся в заголовке Dbt.h.

)
Т е если DBT_DEVTYP_DEVICEINTERFACE не прописывать ничего то он вернет все устройства с их гуид классами? Или можно прописать разные гуиды вместо GUID_DEVINTERFACE_DISK в форме {блаблабла} и будет типа фильтра чтоли? Ибо моей задачей является отлов того же айфона а он не MASSSTORAGE, он определяется вообще Win32_pnpentity.service = scanusb.

Добавлено через 2 часа 40 минут
Вот что-то набросал
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include <windows.h>
#include "HelloFromMsgBox.h"
 
const char g_szClassName[] = "myWindowClass";
 
// Step 4: the Window Procedure
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    char szMsg[80]; 
    DEV_BROADCAST_DEVICEINTERFACE NotificationFilter; 
    void **hDevNotify=NULL; 
    ZeroMemory( &NotificationFilter, sizeof(NotificationFilter) ); 
NotificationFilter.dbcc_devicetype= DBT_DEVTYP_DEVICEINTERFACE; 
NotificationFilter.dbcc_classguid = GUID_DEVINTERFACE_LIST[0];
hDevNotify=(void**)RegisterDeviceNotification(hwnd,&NotificationFilter, DEVICE_NOTIFY_WINDOW_HANDLE); 
    
switch(msg)
    {
        case WM_CLOSE:
            DestroyWindow(hwnd);
        break;
        case WM_DESTROY:
            PostQuitMessage(0);
        break;
        default:
            return DefWindowProc(hwnd, msg, wParam, lParam);
    }
    return 0;
}
 
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
{
    WNDCLASSEX wc;
    HWND hwnd;
    MSG Msg;
 
    //Step 1: Registering the Window Class
    wc.cbSize        = sizeof(WNDCLASSEX);
    wc.style         = 0;
    wc.lpfnWndProc   = WndProc;
    wc.cbClsExtra    = 0;
    wc.cbWndExtra    = 0;
    wc.hInstance     = hInstance;
    wc.hIcon         = LoadIcon(NULL, IDI_APPLICATION);
    wc.hCursor       = LoadCursor(NULL, IDC_ARROW);
    wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
    wc.lpszMenuName  = NULL;
    wc.lpszClassName = g_szClassName;
    wc.hIconSm       = LoadIcon(NULL, IDI_APPLICATION);
 
    if(!RegisterClassEx(&wc))
    {
        MessageBox(NULL, "Window Registration Failed!", "Error!",
            MB_ICONEXCLAMATION | MB_OK);
        return 0;
    }
 
    // Step 2: Creating the Window
    hwnd = CreateWindowEx(
        WS_EX_CLIENTEDGE,
        g_szClassName,
        "The title of my window",
        WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT, CW_USEDEFAULT, 240, 120,
        NULL, NULL, hInstance, NULL);
 
    if(hwnd == NULL)
    {
        MessageBox(NULL, "Window Creation Failed!", "Error!",
            MB_ICONEXCLAMATION | MB_OK);
        return 0;
    }
 
    ShowWindow(hwnd, nCmdShow);
    UpdateWindow(hwnd);
 
    // Step 3: The Message Loop
    while(GetMessage(&Msg, NULL, 0, 0) > 0)
    {
        TranslateMessage(&Msg);
        DispatchMessage(&Msg);
    }
    return Msg.wParam;
}


Вернуться к обсуждению:
WinAPI C++ WM_DEVICECHANGE C++ WinAPI
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.10.2013, 10:59
Готовые ответы и решения:

WM_DEVICECHANGE
Здравствуйте, при подключении или отключении usb устройства сообщение &quot;WM_DEVICECHANGE&quot; приходить...

Грабли с WM_DEVICECHANGE
Потратил кучу времени на изучение структур связанных с WM_DEVICECHANGE. Все работает как надо...

Перехват wm_devicechange
Здравствуйте написал простенькую программку по отлову сообщений вставки usb носителей. Собственно...

Как обработать WM_DEVICECHANGE?
Нужна помощь, как заделать хук на событие - вставка изъятие USB-устройства???? Алгоритм такой...

18
26.10.2013, 10:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.10.2013, 10:59
Помогаю со студенческими работами здесь

Не могу разобраться с WM_DEVICECHANGE
Здравствуйте! Необходимо перертсовать дерево со списком дисков в системе, когда в(из) USB...

WM_DEVICECHANGE RegisterDeviceNotification PDEV_BROADCAST_HDR
При приведении происходит исключение System.OverflowException что-то там переполнение из-за чего...

RegisterDeviceNotification / WM_DEVICECHANGE / VID _ PID
Не могу подписаться на WM_DEVICECHANGE какие-то неизвестные ошибки не пойму что не так ...

Обработка события подключения и отключения USB(WM_DEVICECHANGE)
Всем привет . Такая задача, требуется отследить подключение и отключение USB. Следующий код...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru