Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
user1111

Программа под Windows

14.04.2011, 21:29. Показов 2948. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Хочу попробовать создать игру "Тетрис" под Windows в среде Visual Studio 2008.

Подскажите как создать проект для программирования на С++, где можно будет редактировать окна, вставлять кнопки и т.д.

Также подскажите, что почитать для новичков в создании Windows приложений, программированием на С уже занимался, так что важно узнать как программировать кнопки и другие элементы, а так же знать их функции. Желательно на простом примере.

Спасибо!
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.04.2011, 21:29
Ответы с готовыми решениями:

Программа под Windows Mobile
Здравствуйте, ребята очень срочно нужно кое что... Смотрите нужен файл .exe с кодом C++ или бесик неважно чтобы инклудилась в него...

Программа для контроля работы пк под управлением ОС Windows XP
Всем привет! Пришла мне в голову идея написать программу, которая будет в соответствии со временем разрешать доступ пользователю к...

Запустить проект под windows на c++ из-под javascript
Есть проект на C++, скомпиленный под виндоус. Задача - запустить его из javascript и передать туда кое-какие параметры (скорее всего, 2...

9
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
14.04.2011, 22:42
смотрите в сторону win32 API, пример ищется в гугле
0
216 / 216 / 33
Регистрация: 26.12.2010
Сообщений: 691
14.04.2011, 22:47
Цитата Сообщение от user1111 Посмотреть сообщение
Подскажите как создать проект для программирования на С++, где можно будет редактировать окна, вставлять кнопки и т.д.
windows form application .. вроде правильно написал.
0
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
14.04.2011, 22:50
Могу посоветовать книгу "Win32 API Эффективная разработка приложений". Там основы Win32 API и про графику есть.

Добавлено через 56 секунд
Цитата Сообщение от NiRamz Посмотреть сообщение
windows form application .. вроде правильно написал.
Интересно чем windows form application отличается от Win32 API?

Зашел в Visual studio 2008. При создании проекта на C++ есть только Win32 API. А вот windows form есть у C#.
0
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
14.04.2011, 22:51
тем что это .NET
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,701
14.04.2011, 22:53
Цитата Сообщение от Chelioss Посмотреть сообщение
Зашел в Visual studio 2008. При создании проекта на C++ есть только Win32 API.
Дружище, версия express?
0
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
14.04.2011, 22:53
Цитата Сообщение от panicwassano Посмотреть сообщение
тем что это .NET
И как на C++ создать проект windows form(s)?
0
216 / 216 / 33
Регистрация: 26.12.2010
Сообщений: 691
14.04.2011, 22:56
Зашел в Visual studio 2008. При создании проекта на C++ есть только Win32 API. А вот windows form есть у C#.
смотрим скрин ..
Миниатюры
Программа под Windows  
0
186 / 186 / 21
Регистрация: 08.01.2011
Сообщений: 1,139
14.04.2011, 23:01
NiRamz
Не заметил.

Цитата Сообщение от kravam Посмотреть сообщение
Дружище, версия express?
Pro

Так, что предпочтительнее? Win32 API или Windows forms? Для тетриса, например?
0
user1111
16.04.2011, 17:50
Установил Express 2010.

Создал пустой проект. При таком коде:
C++
1
2
3
4
5
6
#include <windows.h>
 
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) {
    MessageBox (NULL, "Hi", "Hi", MB_OK);
    return 0;
}
Выдает ошибку:

Code
1
2
3
4
5
6
7
8
1>------ Build started: Project: 555, Configuration: Release Win32 ------
1>Compiling...
1>555.cpp
1>.\555.cpp(4) : error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [3]' to 'LPCWSTR'
1>        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>Build log was saved at "file://g:\proba\555\555\Release\BuildLog.htm"
1>555 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Это пример из книги Щупака...

Добавлено через 56 минут
Помогла эта информация

> error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [35]' to 'LPCWSTR'
Все, что с W - wide (двух байтные символы, Unicode). Ты пробуешь char (1 байт) преобразовать в WSTR (2 байта). Или тебе надо компилировать программу не в Unicode (General/Character Set/Use Multi-Byte Character Set, а не Unicode). Или ставить перед const char [35] буквы "L" типа: L"char 1 byte". По-моему "L", хотя может ошибюсь, или "_T" ???!!! 8)

MagicWolf писал(а):
> error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [35]' to 'LPCWSTR'
Все, что с W - wide (двух байтные символы, Unicode). Ты пробуешь char (1 байт) преобразовать в WSTR (2 байта). Или тебе надо компилировать программу не в Unicode (General/Character Set/Use Multi-Byte Character Set, а не Unicode). Или ставить перед const char [35] буквы "L" типа: L"char 1 byte". По-моему "L", хотя может ошибюсь, или "_T" ???!!! 8)


А можно поподробней, что мне надо сделать?
Вод допустим возьму фрагмент кода и ее ошибку:
MessageBox(0,"Can't Find A Suitable PixelFormat.","Error",MB_OK|MB_ICONERROR );
ошибка:
error C2664: 'MessageBoxW' : cannot convert parameter 2 from 'const char [36]' to 'LPCWSTR'
что и как я должен дописать, или преобразовать ?



younggamedeveloper

В настройках текущего проекта найди параметр Character Set и поменя его со значения Use Unicode Character Set на Use Multi-Byte Character Set.

Либо все строки пиши не:
Код:
"Строка"

а так:
Код:
L"Строка"


Т.е. твой код будет выглядить так:
Код:
MessageBox(0, L"Can't Find A Suitable PixelFormat.", L"Error",MB_OK|MB_ICONERROR);


Otli4nik

Да спасибо, эти ошибки устранены. Но появилась новая...
1>MSVCRTD.lib(crtexe.obj) : error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup

У нас в первом примере в коде нет функции main() , если я правильно понимаю, то он на это и раугается. Как можно исправить?

younggamedeveloper

Не правильно создал приложение свое, т.е. мог создать Windows Application, а пишешь вместо WinMain функции main и наоборот для Console Application пишешь WinMain вместо main.
Пошел дальше читать книгу
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.04.2011, 17:50
Помогаю со студенческими работами здесь

C++ под Windows
Доброго дня! Разбираюсь в программировании на С++ под Windows? нахожусь в самом начале вот взял пример из книги прошу подскажите в чём...

С++ под Windows 7
Скажите, какой компилятор языка C++ поставить поставить для Windows 7,? чтобы структура и синтаксис были, как в C++ Builder 6? ...

c ++ графика под windows
объясните , пожалуйста, как настроить компилятор dev-cpp для графики под windows, у меня нет graphics.h

Приложения под Windows
Подскажите что нужно ещё учить помимо C++, чтоб писать приложения под винд. ? Дело в том, что основы С++ я уже освоил и не знаю за что...

Компиляторы C++ под Windows 8
На Windows 8, лично у меня, Dev Cpp не хочет работать. Возможно кто-то подскажет мне компилятор по данную операционную систему!? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru