Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI Ошибка error C4996: 'GetVersionExW': объявлен deprecate https://www.cyberforum.ru/ win-api/ thread1873785.html
Добрый день! Помогите, пожалуйста. В функции выдает ошибку: error C4996: 'GetVersionExW': объявлен deprecate SAMPLEDLL_API void GetWinVers(){ OSVERSIONINFO OSVI; OSVI.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); LPOSVERSIONINFO lOSVI = &OSVI; bool res = GetVersionEx(lOSVI);
Ошибка в программе C++ C++ WinAPI
Добрый день! Помогите, пожалуйста. В динамической библиотеке есть функция: SAMPLEDLL_API void ListFolders(){ int fldrs = { CSIDL_APPDATA, CSIDL_COMMON_APPDATA, CSIDL_COMMON_DOCUMENTS, CSIDL_HISTORY, CSIDL_INTERNET_CACHE,
C++ WinAPI Закрытие окон в С++ WinAPI https://www.cyberforum.ru/ win-api/ thread1873571.html
Добрый вечер всем Мне в лабе нужно при открытии нового окна закрывать предадущее Пробовал делать через SendMessage(hWnd,WM_CLOSE,0,0); Когда вставлял в case ID_BUTTON_00_01:
C++ WinAPI Найти минимум и максимум в матрице в несколько потоков Есть пример подсчёта количества N-разрядных чисел в массиве, но как атомарно делать проверку на мин/макс я не знаю. Думаю по идее должна быть функция, позволяющя выполнять атомарно др функцю или что-то подобное. Кто может помочь? #include <conio.h> #include <iostream> #include <stdlib.h> #include <time.h> #include <Windows.h> using namespace std; https://www.cyberforum.ru/ win-api/ thread1873482.html
Записать файлы указанного каталога в файл (поиск и запись осуществить в разных потоках) C++ WinAPI
вроде бы все правильно но вывода нет, что не так? Функция задания button_3 LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam); void button1_click(void); void button2_click(void); void button3_click(void); #define IDC_EDIT1 100 #define IDC_BUTTON1 101 #define IDC_BUTTON2 102 #define IDC_BUTTON3 103
C++ WinAPI Перемещение файла, который выбран в диалоге Привет все. Как на С++ переместить файл который в диалоге был выбран. Понятно File.Move(); но не получается у меня. #include <windows.h> #include <gdiplus.h> #include <System.Windows.Forms> #pragma comment(lib, "gdiplus.lib") using namespace Gdiplus; #define width 640 #define height 480 #define XBCleo 10 https://www.cyberforum.ru/ win-api/ thread1873310.html
C++ WinAPI Как подавить сообщения о блокировке со стороны брандмауэра Windows либо проставить в них галочки на автомате? https://www.cyberforum.ru/ win-api/ thread1873221.html
Здравствуйте! Исполняемый файл следующей программы: #include <stdio.h> #include <windows.h> #include <process.h> #include <Tlhelp32.h> #include <winbase.h> #include <string.h> #include <iostream>
Разделяемая память C++ WinAPI
Реализовать программу, которая дожидается запуска заданного количества экземпляров своего процесса, которым назначаются последовательные номера. Дальше первый процесс генерирует последовательность случайных чисел, которые передаёт по одному второму процессу. Второй процесс увеличивает каждое получаемое число на 1 и передаёт дальше. Последний процесс после увеличения числа выводит его на печать....
C++ WinAPI Хук клавиатуры: не вызывается callback https://www.cyberforum.ru/ win-api/ thread1872989.html
Очень простой код для отлавливания событий нажатия клавиш. Создаю хук, передаю callback функцию, отлаживаю. И ничего. Вот сам код в Visual Studio (console app) // Server.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "Server.h" #include "Task.h"
C++ WinAPI Отловить блокировку экрана https://www.cyberforum.ru/ win-api/ thread1872753.html
Доброго времени суток! Каким образом можно отловить блокировку экрана используя WinAPI в Qt? пробовал HWND hwnd_desctop=GetDesktopWindow(); WTSRegisterSessionNotification(hwnd_desctop,NOTIFY_FOR_THIS_SESSION); WNDPROC pOrigProc = (WNDPROC)SetWindowLongPtr (hwnd_desctop, GWLP_WNDPROC, (LONG_PTR)&Spy::StaticWindowProc); LRESULT Spy::WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam,...
C++ WinAPI Подключение библиотеки импорта Ws2_32.lib
Добрый вечер, при подключение библиотеки импорта Ws2_32.lib и соответственно заголовочного файла "Winsock2.h" сыпятся ошибки. Подключение: #pragma comment(lib, "Ws2_32.lib") #include <Windows.h> #include <tchar.h> #include <locale.h>
C++ WinAPI Стрелки вверх-вниз при вводе https://www.cyberforum.ru/ win-api/ thread1872543.html
При вводе строки при нажатии кнопок вверх-вниз выводятся ранее введённые строки. Как отключить эту возможность?
671 / 217 / 88
Регистрация: 21.07.2016
Сообщений: 1,036
Записей в блоге: 2
11.12.2016, 08:10  [ТС] 0

Поиск границ прямоугольника - C++ WinAPI - Ответ 9880702

11.12.2016, 08:10. Показов 925. Ответов 2
Метки (Все метки)

Ответ

Попытка использовать потоки тоже оказалась провальной

main.cpp
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
#include <iostream>
#include "main.h"
 
int main()
{
    HDC hDC_Desktop = GetDC(0);
    POINT mouse;
    RECT rect;
    Queue queue(hDC_Desktop);
 
    for (; !GetAsyncKeyState(VK_ESCAPE); Sleep(200))
    {
        if ((GetKeyState(VK_LSHIFT) & 0x100) == 0)
            continue;
        if ((GetKeyState(VK_LBUTTON) & 0x100) == 0)
            continue;
 
        GetCursorPos(&mouse);
        rect = queue.GetGameArea(mouse);
 
        FillRect(hDC_Desktop, &rect, CreateSolidBrush(RGB(230, 25, 10)));
        std::cout << "RECT get rect FILLED" << std::endl;
    }
 
    ReleaseDC(NULL, hDC_Desktop);
    return 0;
}
main.h
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#pragma once
#ifndef MAIN_H
#define MAIN_H
 
#include <Windows.h>
#include <thread>
 
class COLOR
{
public:
    unsigned char r;
    unsigned char g;
    unsigned char b;
 
    COLOR()
    {
        r = g = b = 0;
    }
    COLOR(unsigned red, unsigned green, unsigned blue)
    {
        r = red;
        g = green;
        b = blue;
    }
    ~COLOR() {}
 
    bool equal(COLOR subject)
    {
        return r == subject.r
            && g == subject.g
            && b == subject.b;
    }
};
 
COLOR GetPixelColor(HDC dc, long x, long y)
{
    COLORREF color = GetPixel(dc, x, y);
    return COLOR(GetRValue(color), GetGValue(color), GetBValue(color));
}
 
class Queue
{
public:
    Queue(HDC _dc)
    {
        dc = _dc;
        state = 0;
    }
    ~Queue() {}
    RECT GetGameArea(POINT &_p)
    {
        area.bottom = area.top = p.y;
        area.left = area.right = p.x;
 
        areaColor = GetPixelColor(dc, p.x, p.y);
 
        std::thread ftop(&Queue::FindTop, this);
        ftop.detach();
 
        std::thread fright(&Queue::FindRight, this);
        fright.detach();
 
        std::thread fbottom(&Queue::FindBottom, this);
        fbottom.detach();
 
        std::thread fleft(&Queue::FindLeft, this);
        fleft.detach();
 
        while (state != 4)
        {
            Sleep(10);
        }
 
        return area;
    }
private:
    int state;
    HDC dc;
    POINT p;
    RECT area;
    COLOR newColor, areaColor;
 
    void FindTop()
    {
        do
        {
            --area.top;
            newColor = GetPixelColor(dc, p.x, area.top);
        } while (areaColor.equal(newColor));
        ++state;
    }
 
    void FindLeft()
    {
        do
        {
            area.left -= 10;
            //--area.left;
            newColor = GetPixelColor(dc, area.left, p.y);
        } while (areaColor.equal(newColor));
        ++state;
    }
 
    void FindBottom()
    {
        do
        {
            area.bottom += 10;
            //++area.bottom;
            newColor = GetPixelColor(dc, p.x, area.bottom);
        } while (areaColor.equal(newColor));
        ++state;
    }
 
    void FindRight()
    {
        do
        {
            area.right += 10;
            //++area.right;
            newColor = GetPixelColor(dc, area.right, p.y);
        } while (areaColor.equal(newColor));
        ++state;
    }
};
 
#endif // !MAIN_H


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

Поиск границ окружности в Делфи
Вот какой вопрос появился... У меня есть набор из 100 и более картинок... Нужно на одной картинке...

Поиск границ плоскостей, образущих выпуклый объем
Имеется 6++ плоскостей, образующих выпуклый объем. Плоскости заданы нормалью и точкой. Каким...

Сравнение изображений. Поиск границ цвета, запись в файл
Здравствуйте друзья помогите решить задачу. Имеется 3 изображения которые сравниваются, в...

Поиск прямоугольника на фотографии
С чего начать разработку программы для поиска документов(лист а4 или визитной карточки)? Я думал...

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

Поиск прямоугольника максимальной площади
Здравствуйте! Есть задача в двумерном массиве MxN из нулей и единиц найти прямоугольник заполненный...

Использовать рекурсивную функцию деления прямоугольника на два прямоугольника меньших размеров
Разработка программы для вывода изображения на экран &quot;Деление прямоугольника&quot;. Отобразить...

Ввести площадь и периметр прямоугольника. Вывести длины сторон этого прямоугольника
Помогите написать программу... Пользователь водит прямоугольника площадь и периметр. Надо...

Известны координаты вершин прямоугольника ABCD , A(x1,y1), B(x2,y2), C(x3,y3). Найти площадь и периметр прямоугольника.
как решить эту задачу с помощью delphi? Известны координаты вершин прямоугольника ABCD , A(x1,y1),...

Нужно два градиентных прямоугольника расположить поверх белого прямоугольника
Нужно два градиентных прямоугольника расположить поверх белого прямоугольника. &lt;?xml...

Определить, где находится текущая точка: внутри прямоугольника, снаружи, на границе прямоугольника
Представьте, что у вас на форме есть прямоугольник, границы которого на 10 пикселей отстоят от...

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