Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Не могу инициализировать DirectX  (Прочитано 6338 раз)
0 Пользователей и 1 Гость смотрят эту тему.
NBPNBP
Гость
« : 13-03-2010 10:10 » 

Здравствуйте! Никак не могу инициализировать DirectX ни в VC++.NET ни в WinApi.
В  NET выбрасывает ошибку:

 'C:\WINDOWS1\assembly\GAC\Microsoft.DirectX.Direct3D\1.0.2902.0__31bf3856ad364e35\Microsoft.DirectX.Direct3D.dll' is attempting managed execution inside OS Loader lock. Do not attempt to run managed code inside a DllMain or image initialization function since doing so can cause the application to hang.

Код:
	public:

Device^ device;

 void InitializeGrafics()
{
PresentParameters^ presentParams=gcnew PresentParameters();
presentParams->Windowed=true;
presentParams->SwapEffect=SwapEffect::Discard;
Device^ device=gcnew Device(0,DeviceType::Reference,this,
CreateFlags::SoftwareVertexProcessing,presentParams);

}

А в WinApi код такой:
 LPDIRECT3DDEVICE9 pDevice = NULL;

D3DPRESENT_PARAMETERS d3dpp;

ZeroMemory( &d3dpp, sizeof(d3dpp) );
d3dpp.Windowed   = TRUE;
d3dpp.SwapEffect = D3DSWAPEFFECT_COPY;

if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
                                  D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                                      &d3dpp, &d3dDevice ) ) )
    return E_FAIL;
« Последнее редактирование: 13-03-2010 10:19 от RXL » Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines