ПрограммированиеФорумОбщее

Win32 application + консоль, С++ (2 стр)

Страницы: 1 2 3 Следующая »
#15
10:17, 31 окт 2010

Ну, во-первых, если собираешься использовать std::sin, то    int hCrt = _open_osfhandle((long)
    GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT);
    *stdout = *(::_fdopen(hCrt, "w"));
    ::setvbuf(stdout, NULL, _IONBF, 0);
    *stderr = *(::_fdopen(hCrt, "w"));
    ::setvbuf(stderr, NULL, _IONBF, 0); лишнее.
А коль уж у тебя есть хандл окошка, то сама собой напрашивается функция ReadConsole. Или ReadConsoleInput.
Гугель, т.е. тьфу ты, МСДН тебе в помощь.

Правка.
А может, и нет. Я, кажется, так делал - в главном цикле стояла функция проверки, есть ли нажатая клавиша именно этими функциями.

#16
13:22, 1 ноя 2010

Самый простой способ подключить обычную консоль:

#pragma comment (linker, "/SUBSYSTEM:CONSOLE")
#17
13:30, 1 ноя 2010

... и заменить WinMain() на main()

#18
16:06, 1 ноя 2010

Wraith
>... и заменить WinMain() на main()
не обязательно

#19
16:45, 1 ноя 2010

Trinimac
> не обязательно
Ну ты бы проверил что ли...

#20
16:51, 1 ноя 2010

Wraith
проверил и отлично работает что ли
попробуй сам:

#pragma comment (linker, "/SUBSYSTEM:CONSOLE")
#pragma comment (linker, "/ENTRY:WinMainCRTStartup")
#21
17:04, 1 ноя 2010

>#pragma comment (linker, "/ENTRY:WinMainCRTStartup")
Э, ну дык это ж то же самое, что заменить winmain на main.

#22
17:16, 1 ноя 2010

Wraith
это указание компилятору сделать входной точкой в программу функцию WinMain
что-то не так?

#23
20:40, 1 ноя 2010

facepalm.jpg

#24
20:49, 1 ноя 2010

Wraith
это ты себе фейспалм?
правильно

#25
10:00, 2 ноя 2010

  AllocConsole() и все проблемы решены. Не знаю, что вы тут ещё мутите. Какие нафиг прагмы? Засуньте их подальше.

#26
10:08, 2 ноя 2010

Не, не, не. Вот такое не работает :

#include <Windows.h>
#include <iostream>

using namespace std;

int WINAPI WinMain( __in HINSTANCE hInstance, __in_opt HINSTANCE hPrevInstance, __in_opt LPSTR lpCmdLine, __in int nShowCmd ) {
    AllocConsole();
    cout << endl;
    int x;
    cin >> x;
    return 0;
}
#27
10:09, 2 ноя 2010

В-общем, я обычно не парю себе мозг и создаю консольное приложение в студии, в котором можно чудесно виндовые окошки создавать при необходимости.

#28
11:14, 2 ноя 2010

Zefick
>AllocConsole() и все проблемы решены. Не знаю, что вы тут ещё мутите. Какие нафиг прагмы? Засуньте их подальше.
Фу ты ну ты, и в чем профит от твоего аллока?

#29
13:00, 2 ноя 2010

А какой профит именно от стандартной консоли? Немодальное окошко с листбоксом и полем ввода успешно её заменяет безо всяких плясок с параллельным тредом и т.п.

Страницы: 1 2 3 Следующая »
ПрограммированиеФорумОбщее

Тема в архиве.