mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 12:23:31 +00:00
[KSPROXY, MSDVBNP, MSVIDCTL, BDAPLGIN]
- Implement DllRegisterServer, DllUnregisterServer for those components - Add msdvbnp, msvidctl to build - Add msdvbnp, bdaplgin, msvidctl to bootcd svn path=/trunk/; revision=46518
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
<property name="BASEADDRESS_PSTOREC" value="0x513d0000" />
|
||||
<property name="BASEADDRESS_LPK" value="0x516c0000" />
|
||||
<property name="BASEADDRESS_MSGSM32ACM" value="0x56db0000" />
|
||||
<property name="BASEADDRESS_MSDVBNP" value="0x58280000" />
|
||||
<property name="BASEADDRESS_MSG711ACM" value="0x584f0000" />
|
||||
<property name="BASEADDRESS_IMAADP32ACM" value="0x585e0000" />
|
||||
<property name="BASEADDRESS_BDAPLGIN" value="0x58600000" />
|
||||
@@ -32,6 +33,7 @@
|
||||
<property name="BASEADDRESS_MMSYS" value="0x588a0000" />
|
||||
<property name="BASEADDRESS_JOY" value="0x589b0000" />
|
||||
<property name="BASEADDRESS_QMGR" value="0x59620000" />
|
||||
<property name="BASEADDRESS_MSVIDCTL" value="0x59660000" />
|
||||
<property name="BASEADDRESS_UXTHEME" value="0x5ad70000" />
|
||||
<property name="BASEADDRESS_VDMDBG" value="0x5b0d0000" />
|
||||
<property name="BASEADDRESS_UNTFS" value="0x5b340000" />
|
||||
|
||||
@@ -151,6 +151,7 @@ dll\cpl\timedate\timedate.cpl 1
|
||||
;dll\cpl\usrmgr\usrmgr.cpl 1
|
||||
|
||||
dll\directx\amstream\amstream.dll 1
|
||||
dll\directx\bdaplgin\bdaplgin.ax 1
|
||||
dll\directx\dinput\dinput.dll 1
|
||||
dll\directx\dinput8\dinput8.dll 1
|
||||
dll\directx\dmusic\dmusic.dll 1
|
||||
@@ -164,6 +165,8 @@ dll\directx\devenum\devenum.dll 1
|
||||
dll\directx\ksproxy\ksproxy.ax 1
|
||||
dll\directx\ksuser\ksuser.dll 1
|
||||
dll\directx\msdmo\msdmo.dll 1
|
||||
dll\directx\msdvbnp\msdvbnp.ax 1
|
||||
dll\directx\msvidctl\msvidctl.dll 1
|
||||
dll\directx\quartz\quartz.dll 1
|
||||
dll\directx\qedit\qedit.dll 1
|
||||
dll\directx\wine\d3d8\d3d8.dll 1
|
||||
|
||||
@@ -52,7 +52,27 @@ HRESULT
|
||||
WINAPI
|
||||
DllUnregisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass;
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_SET_VALUE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
RegDeleteKeyW(hClass, pStr);
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
extern "C"
|
||||
@@ -61,7 +81,39 @@ HRESULT
|
||||
WINAPI
|
||||
DllRegisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass, hKey, hSubKey;
|
||||
static LPCWSTR ModuleName = L"bdaplgin.ax";
|
||||
static LPCWSTR ThreadingModel = L"Both";
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_WRITE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
if (RegCreateKeyExW(hClass, pStr, 0, 0, 0, KEY_WRITE, NULL, &hKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegCreateKeyExW(hKey, L"InprocServer32", 0, 0, 0, KEY_WRITE, NULL, &hSubKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
RegSetValueExW(hSubKey, 0, 0, REG_SZ, (const BYTE*)ModuleName, (wcslen(ModuleName) + 1) * sizeof(WCHAR));
|
||||
RegSetValueExW(hSubKey, L"ThreadingModel", 0, REG_SZ, (const BYTE*)ThreadingModel, (wcslen(ThreadingModel) + 1) * sizeof(WCHAR));
|
||||
RegCloseKey(hSubKey);
|
||||
}
|
||||
RegCloseKey(hKey);
|
||||
}
|
||||
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
KSDDKAPI
|
||||
|
||||
@@ -43,6 +43,12 @@
|
||||
<directory name="msdmo">
|
||||
<xi:include href="msdmo/msdmo.rbuild" />
|
||||
</directory>
|
||||
<directory name="msdvbnp">
|
||||
<xi:include href="msdvbnp/msdvbnp.rbuild" />
|
||||
</directory>
|
||||
<directory name="msvidctl">
|
||||
<xi:include href="msvidctl/msvidctl.rbuild" />
|
||||
</directory>
|
||||
<directory name="qedit">
|
||||
<xi:include href="qedit/qedit.rbuild" />
|
||||
</directory>
|
||||
|
||||
@@ -343,7 +343,27 @@ HRESULT
|
||||
WINAPI
|
||||
DllUnregisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass;
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_SET_VALUE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
RegDeleteKeyW(hClass, pStr);
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
extern "C"
|
||||
@@ -352,7 +372,39 @@ HRESULT
|
||||
WINAPI
|
||||
DllRegisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass, hKey, hSubKey;
|
||||
static LPCWSTR ModuleName = L"ksproxy.ax";
|
||||
static LPCWSTR ThreadingModel = L"Both";
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_WRITE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
if (RegCreateKeyExW(hClass, pStr, 0, 0, 0, KEY_WRITE, NULL, &hKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegCreateKeyExW(hKey, L"InprocServer32", 0, 0, 0, KEY_WRITE, NULL, &hSubKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
RegSetValueExW(hSubKey, 0, 0, REG_SZ, (const BYTE*)ModuleName, (wcslen(ModuleName) + 1) * sizeof(WCHAR));
|
||||
RegSetValueExW(hSubKey, L"ThreadingModel", 0, REG_SZ, (const BYTE*)ThreadingModel, (wcslen(ThreadingModel) + 1) * sizeof(WCHAR));
|
||||
RegCloseKey(hSubKey);
|
||||
}
|
||||
RegCloseKey(hKey);
|
||||
}
|
||||
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
KSDDKAPI
|
||||
|
||||
@@ -48,7 +48,27 @@ HRESULT
|
||||
WINAPI
|
||||
DllUnregisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass;
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_SET_VALUE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
RegDeleteKeyW(hClass, pStr);
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
extern "C"
|
||||
@@ -57,7 +77,39 @@ HRESULT
|
||||
WINAPI
|
||||
DllRegisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass, hKey, hSubKey;
|
||||
static LPCWSTR ModuleName = L"msdvbnp.ax";
|
||||
static LPCWSTR ThreadingModel = L"Both";
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_WRITE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
if (RegCreateKeyExW(hClass, pStr, 0, 0, 0, KEY_WRITE, NULL, &hKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegCreateKeyExW(hKey, L"InprocServer32", 0, 0, 0, KEY_WRITE, NULL, &hSubKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
RegSetValueExW(hSubKey, 0, 0, REG_SZ, (const BYTE*)ModuleName, (wcslen(ModuleName) + 1) * sizeof(WCHAR));
|
||||
RegSetValueExW(hSubKey, L"ThreadingModel", 0, REG_SZ, (const BYTE*)ThreadingModel, (wcslen(ThreadingModel) + 1) * sizeof(WCHAR));
|
||||
RegCloseKey(hSubKey);
|
||||
}
|
||||
RegCloseKey(hKey);
|
||||
}
|
||||
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
KSDDKAPI
|
||||
|
||||
@@ -287,7 +287,7 @@ CScanningTunner::performDVBTTune(
|
||||
IDVBTuneRequest * pDVBTRequest,
|
||||
IDVBTLocator *pDVBTLocator)
|
||||
{
|
||||
HRESULT hr;
|
||||
HRESULT hr = S_OK;
|
||||
ULONG Index;
|
||||
IBDA_Topology *pTopo;
|
||||
IUnknown *pNode;
|
||||
|
||||
@@ -48,7 +48,27 @@ HRESULT
|
||||
WINAPI
|
||||
DllUnregisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass;
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_SET_VALUE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
RegDeleteKeyW(hClass, pStr);
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
extern "C"
|
||||
@@ -57,7 +77,39 @@ HRESULT
|
||||
WINAPI
|
||||
DllRegisterServer(void)
|
||||
{
|
||||
return S_OK;
|
||||
ULONG Index = 0;
|
||||
LPOLESTR pStr;
|
||||
HRESULT hr = S_OK;
|
||||
HKEY hClass, hKey, hSubKey;
|
||||
static LPCWSTR ModuleName = L"msvidctl.ax";
|
||||
static LPCWSTR ThreadingModel = L"Both";
|
||||
|
||||
if (RegOpenKeyExW(HKEY_CLASSES_ROOT, L"CLSID", 0, KEY_WRITE, &hClass) != ERROR_SUCCESS)
|
||||
return E_FAIL;
|
||||
|
||||
do
|
||||
{
|
||||
hr = StringFromCLSID(*InterfaceTable[Index].riid, &pStr);
|
||||
if (FAILED(hr))
|
||||
break;
|
||||
|
||||
if (RegCreateKeyExW(hClass, pStr, 0, 0, 0, KEY_WRITE, NULL, &hKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
if (RegCreateKeyExW(hKey, L"InprocServer32", 0, 0, 0, KEY_WRITE, NULL, &hSubKey, 0) == ERROR_SUCCESS)
|
||||
{
|
||||
RegSetValueExW(hSubKey, 0, 0, REG_SZ, (const BYTE*)ModuleName, (wcslen(ModuleName) + 1) * sizeof(WCHAR));
|
||||
RegSetValueExW(hSubKey, L"ThreadingModel", 0, REG_SZ, (const BYTE*)ThreadingModel, (wcslen(ThreadingModel) + 1) * sizeof(WCHAR));
|
||||
RegCloseKey(hSubKey);
|
||||
}
|
||||
RegCloseKey(hKey);
|
||||
}
|
||||
|
||||
CoTaskMemFree(pStr);
|
||||
Index++;
|
||||
}while(InterfaceTable[Index].lpfnCI != 0);
|
||||
|
||||
RegCloseKey(hClass);
|
||||
return hr;
|
||||
}
|
||||
|
||||
KSDDKAPI
|
||||
|
||||
Reference in New Issue
Block a user