Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Первый старт. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Процесс не закрывается http://www.cyberforum.ru/cpp/thread317596.html
Проблема на 82ой строчке, второй параметр функции GetMessage(). Так как у меня создается одно окно второй параметр пишу 0. Но если будет несколько окон, то второй параметр должен быть идентефикатор...
C++ Где можно скачать C++? Мне очень интересно где можно скачать c++.Недавно захотелось заняться программированием.Нашёл в интернете кучу самоучителей а сам язык никак не могу найти.Помогите пожалуйста!!!!!!!!!!!!Дайте... http://www.cyberforum.ru/cpp/thread317524.html
C++ libcurl: закачка файла
Файл скачивается, но его размер 12243 байт, хотя должен быть 12182 байт, и так с любым файлом, получается чуть большего размера, что не так? #include <iostream> #include <curl/curl.h> #include...
Как перекомпилить Win32 dll -> Win64 C++
Привет форумчане. Подскжите как перестроить MS2005 стоящую на ХР что бы можно было перекомпилить мою dll-ку под платформу Win64
C++ Словарь-переводчик. вывод в textBox http://www.cyberforum.ru/cpp/thread315822.html
Вроде всё компилируется нормально, но выводить не хочет, помогите разобраться в чём ошибка, заранее благодарен! Проект прикреплён к сообщению
C++ Алгоритм шифрования Доброго времени суток. Имеется программа, которая шифрует данные собственным алгоритмом. Есть пример зашифрованных данных (вместе с исходными). Можно ли как-нибудь написать дешифратор? Для начала... подробнее

Показать сообщение отдельно
An1ka
65 / 70 / 2
Регистрация: 30.06.2011
Сообщений: 176
01.07.2011, 08:31
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
128
129
130
131
132
133
134
135
136
137
138
139
140
#include <d3dx9.h>
#pragma warning( disable : 4996 )
#pragma warning( default : 4996 )
#include "windows.h"
 
#pragma comment( lib, "d3d9.lib")
#pragma comment( lib, "d3dx9.lib")
 
// принемаем сообщение обратно, должна быть во всех программа для Win32 (???)
LRESULT __stdcall WndProc(HWND, UINT, WPARAM, LPARAM);
 
int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                      LPSTR lpCmdLine, int nCmdShow)
{
  WNDCLASS wc;// класс окна
  MSG msg; // (???)
 
  // Настройка класа окна.
  wc.style = CS_OWNDC;                        // стиль для окна..... CS_NOCLOSE
  wc.lpfnWndProc = WndProc;                   // указатель на обработчик сообщений.
  wc.cbClsExtra = 0;                          // что то связанное с байтами (???)
  wc.cbWndExtra = 0;                          // но во всех примерах нужна использовать 0.
  wc.hbrBackground = (HBRUSH)(6);             // цвет фона. необезательное значение.
  wc.hCursor = LoadCursor(NULL, IDC_ARROW);   // задаёт курсор
  wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); // значёк окна.
  wc.hInstance = hInstance;                   // дискриптов экзамплятора оконных процеддур
  wc.lpszClassName = "class";                 // Имя класса.
  wc.lpszMenuName = NULL;                     // имя ресурса меню
 
  // Регистрация класса окна
  RegisterClass(&wc);                         // RegisterClass - это функция. &wc - это указатель на класс окна.
 
  // создание окна.
  HWND hWnd = CreateWindow(
          "class",                                // Имя класса.
          "Инициализация Direct3D",               // Имя окна.
       WS_OVERLAPPEDWINDOW,                   // Стиль окна
           0,                                     // Позиция окна по X
           0,                                     // Позиция окна по Y
       500,                                   // Ширина окна.
           500,                                   // Высота окна.
           NULL,                                  // Указатель на радительское окно.
           NULL,                                  // Дискриптор связанного с окном меню.
           hInstance,                             // Дескриптор экземпляра модуля. Получается функцией WinMain
           NULL                                   // Используется для указания дополннительных данных создаваемова окна
           );
 
  //Отображение окна (???)
  ShowWindow(hWnd,nCmdShow);
 
 
 
  UpdateWindow(hWnd);
 
 
  IDirect3D9 * d3d = NULL;                     // объект Direct3D
  IDirect3DDevice9 * dev = NULL;               // устройство (видеокарта)
 
  d3d = Direct3DCreate9(D3D_SDK_VERSION);
 
 
  // Создание устройства рендера.
  D3DPRESENT_PARAMETERS pp;
  ZeroMemory(&pp,sizeof(pp));
 
  pp.BackBufferWidth = 500;                  // Ширина поверхности вторичного буфера в пикселах.
  pp.BackBufferHeight = 500;                 // Высота поверхности вторичного буфера в пикселах.
  pp.BackBufferFormat = D3DFMT_X8R8G8B8;     // Формат пикселей во вторичном буфере.
  pp.BackBufferCount = 1;                    // Количество используемых вторичных буферов.
  pp.SwapEffect = D3DSWAPEFFECT_DISCARD;
  pp.hDeviceWindow = hWnd;
  pp.Windowed = true;                        // Оконно или растянуто.
 
 
  d3d->CreateDevice(
          D3DADAPTER_DEFAULT,
          D3DDEVTYPE_HAL,                         // Тип устройства. Видеокарта или процессор.
          hWnd,                                   // Главное окно приложение.
      D3DCREATE_SOFTWARE_VERTEXPROCESSING,    // Способ обработки.
      &pp, 
          &dev);
 
    D3DXMATRIX matView, matProjection;
    // размещение и ориентация камеры
    D3DXVECTOR3 position( 0.0f, 0.0f, -2.0f);
    D3DXVECTOR3 target( 0.0f, 0.0f, 0.0f);
    D3DXVECTOR3 up( 0.0f, 1.0f, 0.0f);
    D3DXMatrixLookAtLH( &matView, &position, &target, &up);
    // установка матрицы вида
    dev->SetTransform( D3DTS_VIEW, &matView);
    // установка матрицы проекции
    D3DXMatrixPerspectiveFovLH( &matProjection, D3DX_PI * 0.25f, // 45 градусов
        static_cast<float>( 500) / static_cast<float>( 500), 1.0f, 1000.0f);
    dev->SetTransform( D3DTS_PROJECTION, &matProjection);
 
    LPD3DXMESH cylinder;
    D3DXCreateCylinder( dev, 0.2f, 0.2f, 1, 16, 3, &cylinder, NULL);
 
while (1)
  {
 
       
     if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
    {
      if (msg.message == WM_QUIT)
        break;
      TranslateMessage(&msg);
      DispatchMessage(&msg);
    }
 
    dev->Clear(0,NULL,D3DCLEAR_TARGET,
               D3DCOLOR_XRGB(100,0,0),1.0f,0);
 
    dev->BeginScene();
 
    cylinder->DrawSubset(0);
    dev->EndScene();
 
    dev->Present(NULL,NULL,NULL,NULL);
    }
 
  if (dev != NULL)
    dev->Release();
  if (d3d != NULL)
    d3d->Release();
  return 0;
}
 
  
LRESULT __stdcall WndProc (HWND hWnd, UINT msg,
                           WPARAM wParam, LPARAM lParam)
{
  switch (msg)
  {
  case WM_DESTROY:
    PostQuitMessage(0);
    return 0;
  }
  return DefWindowProc(hWnd,msg,wParam,lParam);
}
Вот работает всё.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru