Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Пользователь


Сообщения: 53
Благодарности: 8

Профиль | Отправить PM | Цитировать


Цитата Admiral:
Для начала изучить теорию - почитать про внутренние устройство ОС Виндовс. »
Спасибо вам огромное, я такое всегда мечтал найти!!!

Цитата Admiral:
Значит данная Бета не сильно отличалась в части данной библиотеки, вот система и восприняла её нормально. »
Да, в билде Vista 5219 строение библиотеки gdi32.dll очень схоже со строением gdi32.dll от 2003 (смотрел в Dependency Walker) и все функции соводают, кроме, того что user32.dll в W2K3 ищет функцию в gdi32.dll(GdiGetBitmapBits), которой нет в gdi32.dll от Vista 5219, но зато там есть GetBitmapBits, поэтому мне пришлось модифицировать и стандартный user32.dll от W2K3.

В результате Windows запустилась, работала вроде безотказно, но только на классическом виде, ибо стиль Windows XP отображался неправильно (все элементы меню, например, панель задач, заливались черным цветом без текстур), но зато и вроде залагивания окон стали не такие ощутимые, и, возможно, появилась возможность реализации WDDM на XP ибо появились такие функции в gdi32.dll как:
D3DKMTChangeSurfacePointer
D3DKMTCloseAdapter
D3DKMTCreateAllocation
D3DKMTCreateDCFromMemory
D3DKMTCreateDevice
D3DKMTCreateOverlay
D3DKMTDestroyAllocation
D3DKMTDestroyDCFromMemory
D3DKMTDestroyDevice
D3DKMTDestroyOverlay
D3DKMTEscape
D3DKMTFlipOverlay
D3DKMTGetDeviceSchedulingPriority
D3DKMTGetDeviceState
D3DKMTGetDisplayModeList
D3DKMTGetMultisampleMethodList
D3DKMTGetPresentHistory
D3DKMTGetProcessSchedulingPriorityClass
D3DKMTGetRuntimeData
D3DKMTGetScanLine
D3DKMTGetSharedPrimaryHandle
D3DKMTLock
D3DKMTOpenAdapterFromHdc
D3DKMTOpenResource
D3DKMTPresent
D3DKMTQueryAdapterInfo
D3DKMTQueryAllocationResidency
D3DKMTQueryResourceInfo
D3DKMTReleaseProcessVidPnSourceOwners
D3DKMTRender
D3DKMTSetAllocationPriority
D3DKMTSetDeviceSchedulingPriority
D3DKMTSetDisplayMode
D3DKMTSetGammaRamp
D3DKMTSetProcessSchedulingPriorityClass
D3DKMTSetVidPnSourceOwner
D3DKMTUnlock
D3DKMTUpdateOverlay
D3DKMTWaitForVerticalBlankEvent

Это все функции D3DKMT* которые доступны у меня в gdi32.dll на Windows 2003.

А вот уже в Vista build 5231 строение gdi32.dll кардинально поменялось, очередность USES стала другая и Windows 2003 напрочь перестал загружаться (BSOD)...

Последний раз редактировалось Svyatpro, 17-02-2009 в 18:33.


Отправлено: 16:39, 17-02-2009 | #12