Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
C++ WinAPI Подскажите литературу по WinAPI Всем доброго вечера. Изучаю язык с++ по книжке Р. Лафоре. Уже дошел до классов, все предельно ясно и просто. Хочу паралельно изучать WinApi, Думаю, уже можно? Подскажите какую-то литературу, чтобы там все было выложено так же просто как в Лафоре. Заранее большое спасибо тем, кто поможет или просто даст дельный совет =) https://www.cyberforum.ru/ win-api/ thread780118.html Поиск по подкаталогам C++ WinAPI
Здравствуйте,не буду писать суть всего задания. У меня есть проход по всем файлам введёного каталога,как сделать так,что бы поиск производился и по вложенным каталогам? Вот кусок кода: if (hFileFind != INVALID_HANDLE_VALUE) { do { if ( (find_data.dwFileAttributes == FILE_ATTRIBUTE_NORMAL) || (find_data.dwFileAttributes ==FILE_ATTRIBUTE_ARCHIVE) ) {
C++ WinAPI Аналог SetDlgItem, если есть handle https://www.cyberforum.ru/ win-api/ thread779869.html
Собственно вопрос в названии: я обладаю handle'ом контрола диалогового окна. Как, зная handle, управлять текстом контрола, а не указывать SetDlgItem(hDlg, SOME_ID_OF_CONTROL, someVariable); ? Или гораздо лучше через ID обращаться, чем через дескриптор?
C++ WinAPI Куб 3D https://www.cyberforum.ru/ win-api/ thread779861.html
Здравствуйте! Имеется код: // 3DShaaaaapes.cpp: определяет точку входа для приложения. // # include "stdafx.h" # include "3DShaaaaapes.h" # include <math.h> HDC hdc; class Shape
C++ WinAPI Создать окно в консоле win32
Создаю проект win32 консоль.. с кодом: окно почему то не показывается ! ошибок ниче нет... мне нужно именно в win32 консоль окно сделать #include <Windows.h> LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { PAINTSTRUCT PS; // switch(message) {
C++ WinAPI Реализация функции strpos в winapi Здравствуйте, роюсь в справке msdn, не могу найти реализацию функции strpos в winapi. Подскажите пожалуйста она есть и, если нет, то как ее реализовать? https://www.cyberforum.ru/ win-api/ thread779014.html
C++ WinAPI Распознавание текста на отсканированной картинки https://www.cyberforum.ru/ win-api/ thread778855.html
Господа вообщем задача есть следующая - распознать текст на отсканированном паспорте . Пытаюсь использовать библиотеку Open Cv , но не понятен весь процесс как распознать текст . Если кто то делал оналогичную задачу или есть какие то мысли, наработки или хорошая ссылочка по данной теме прошу поделиться , вообщем приветствуется всё за , что можно зацепиться и пойти дальше . Всем заранее ОГРОМНОЕ...
Как отловить выбор строки в listbox? C++ WinAPI
case WM_COMMAND: if(LOWORD(wParam) == Window::_ids::NamesBox) { if(HIWORD(wParam) == LBN_SELCHANGE) { wnd->_Select(); } }
C++ WinAPI Закрытие доступа к процессу https://www.cyberforum.ru/ win-api/ thread778295.html
есть процесс к примеру h.exe как можно сделать так, чтобы невозможно было получить доступ к его памяти? или просто скрыть его нахождения в программах которые могут вскрыть его память Добавлено через 12 секунд или просто как защитить процесс от дампа памяти?
C++ WinAPI Именованные пайпы/ сервер-клиент на одном пк https://www.cyberforum.ru/ win-api/ thread778239.html
Условие таково: Клиент – асинхронный читатель Сервер –синхронный писатель Краткое описание: • создание именованного канала • установление соединения • ввод информационного блока с клавиатуры и отправка • информационный обмен
C++ WinAPI Как заставить новый поток писать в консоль?
Есть оконная прога она запускает поток: DWORD WINAPI ConsoleThread(PVOID) { wchar_t *some_string=L"New thread!"; const wchar_t *some_string2=L"some text inside console"; AllocConsole(); SetConsoleTitleW(some_string); HANDLE conHandle=GetStdHandle(STD_OUTPUT_HANDLE); if(conHandle==NULL) MessageBox(GetConsoleWindow(), L"cannot get std handle to output", L"error", MB_OK); ...
C++ WinAPI Главное окно и контролы Каким образом (кроме ручного кода) можно добавлять контролы в главное окно программы? Дизайнером быстрее, имхо :\ В свое время выкрутился: создал главное окно, скрыл его, создал дочернее диалоговое окно, вывел его. На созданных диалоговых окнах рисовать не проблема, так что тут всё просто.. Но что делать с главным не диалоговым окном? >_< https://www.cyberforum.ru/ win-api/ thread777650.html
Заблокирован
Автор FAQ
07.02.2013, 16:46 0

Потоки (приостановка и продолжение) - C++ WinAPI - Ответ 4105052

07.02.2013, 16:46. Показов 14489. Ответов 18
Метки (Все метки)

Ответ

WhiteP, так вот допиши в свой код вот это
C++
1
2
3
4
while(1)
    {
        cout<<"I chem zhe probeg po etomy cicly otlichen ot moego?)))"<<endl;
        if(bWork = ParseVKKey(pArrow.iLeft))
и сравни с проходом в моём цикле.
так вот, ты прописал 100 мсек здесь
Цитата Сообщение от WhiteP Посмотреть сообщение
SetWaitableTimer(hTimer, &li, 100, 0, 0, FALSE);
,
BOOL WINAPI SetWaitableTimer(
_In_ HANDLE hTimer,
_In_ const LARGE_INTEGER *pDueTime,
_In_ LONG lPeriod,
_In_opt_ PTIMERAPCROUTINE pfnCompletionRoutine,
_In_opt_ LPVOID lpArgToCompletionRoutine,
_In_ BOOL fResume
);
Я прописал в Sleep, "базар", как говориться, у нас о другом шёл - напомню
Цитата Сообщение от nexen Посмотреть сообщение
Да, можно сделать глобальную переменную, в потоке сделать бесконечный цикл и выполнять вычисления только если переменная активна, а делать её активной по таймеру окна, но это ненужная загруженность потока на 100%. Так как событий в C++ нет, то хотелось быть (после выполнения одной итерации вычислений) приостановить поток из себя же, а затем, когда вызовется таймер, возобновить:
т.е автор явно указывает - без событий

Добавлено через 2 минуты

Не по теме:

Цитата Сообщение от nexen Посмотреть сообщение
-=ЮрА=-, sleep ставит жесткое ограничение на fps, так что использовать его я не буду ни в коем случае при синхронизации
- синхронизиция может быть реализована через семафоры, критические секции, мьютексы, хорошо таймеры да. Так вот со Sleep спкойно разгружаем CPU, впрочем делай как ты понимаешь, я показал а внять невнять дело уже сугубо личное
Ниже тот же код с синхронизацией


Кликните здесь для просмотра всего текста
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
#include <windows.h>
#include <process.h>
#include <iostream>
using namespace std;
 
bool bStop = false;
bool bWork = false;
bool ParseVKKey(int vKey);
void ThreadArrow(PVOID pParam);
void ThreadExit (PVOID pParam);
CRITICAL_SECTION cs;
 
struct ARROWS
{
    int iLeft;
    int iRight;
    int iUp;
    int iDown;
};
 
int main()
{
    InitializeCriticalSection(&cs);//Îðãàíèçîâàëè êðèòè÷åñêóþñåêöèþ
    //òåïåðü âñ¸ æèâ¸ò ñèíõðîííî
    int  iExit = VK_ESCAPE;
    ARROWS pParam = {0};
    pParam.iUp   = VK_UP;
    pParam.iDown = VK_DOWN;
    pParam.iLeft = VK_LEFT;
    pParam.iRight= VK_RIGHT;
    _beginthread(ThreadArrow,0,&pParam);
    _beginthread(ThreadExit ,0,&iExit);
    while(!bStop)
    {
        Sleep(50);//Îñíîâíîé ïîòîê äîëæåí ñïàòü ìåíüøå ÷åì äî÷åðíèå
        EnterCriticalSection(&cs);//âîøëè â ñåêöèþ
        if(bWork)
            cout<<"Main program detect event!"<<endl;
        LeaveCriticalSection(&cs);//âûøëè èç ñåêöèè
        cout<<"\rMain thread wait...";
        bWork = false;
    }
    Sleep(1000);
    DeleteCriticalSection(&cs);
    return 0;
}
 
bool ParseVKKey(int vKey)
{
    bool bKey = false;
    if(GetAsyncKeyState(vKey))//DOWN
    if(GetAsyncKeyState(vKey))//UP
        bKey = true;
    return bKey;
}
 
void ThreadArrow(PVOID pParam)
{
    ARROWS pArrow = ((ARROWS *)pParam)[0];
    while(!bStop)
    {
        EnterCriticalSection(&cs);//âîøëè â ñåêöèþ
        if(bWork = ParseVKKey(pArrow.iLeft))
            cout<<"ArrowThread LEFT  : "<<pArrow.iLeft<<endl;
        else
        if(bWork = ParseVKKey(pArrow.iRight))
            cout<<"ArrowThread RIGHT : "<<pArrow.iRight<<endl;
        else
        if(bWork = ParseVKKey(pArrow.iUp))
            cout<<"ArrowThread UP    : "<<pArrow.iUp<<endl;
        else
        if(bWork = ParseVKKey(pArrow.iDown))
            cout<<"ArrowThread DOWN  : "<<pArrow.iDown<<endl;
        LeaveCriticalSection(&cs);//âûøëè èç ñåêöèè
        Sleep(100);//Ïîòîê ñîòàíîâèë ñàì ñåáÿ
    }
}
 
void ThreadExit(PVOID pParam)
{
    int vKey = ((int *)pParam)[0];
    while(!bStop)
    {
        EnterCriticalSection(&cs);
        if(bWork = (bStop = ParseVKKey(vKey)))
            cout<<"Program will close of second..."<<endl;
        LeaveCriticalSection(&cs);
        Sleep(100);//Ïîòîê ñîòàíîâèë ñàì ñåáÿ
    }
}


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

Приостановка второстепенного потока
Привет ребят. Нужно создать поток, а потом в функции этого потока приостановить его. Читал на MSDN,...

Приостановка и продолжение потока (Thread)
Как реализовать в C#, чтобы поток приостанавливался, когда начинает работу другой поток, и затем...

Что такое потоки ввода, потоки вывода?
Здарова всем! Не так давно уже прогаю на С++ и все НИКАК не могу понять, что такое потоки ввода,...

Приостановка
У меня есть такая проблемма, мне нжуно чтобы по нажатии на кнопку у меня единица прееходила из 1...

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

Приостановка выполнения
Есть форма с кнопкой при нажатии на которую форма сворачивается и создаётся новая форма с...

Приостановка консоли
Здравствуйте. Учусь программировать на Common LISP. Интерактивный ражим не устраивает. А...

Приостановка потоков
Суть в следующем. Пишу простого бота для игры 2048. Когда происходит сдвиг плиток, вызывается...

приостановка программы
как заставить программу остановиться на 1 сек и потом продолжить работу? т.е. по нажатию кнопки...

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