mirror of
https://github.com/UzixLS/KernelEx.git
synced 2025-07-19 07:21:20 +03:00
import KernelEx-4.5-Final
This commit is contained in:
@ -33,9 +33,9 @@
|
||||
|
||||
#ifndef GRADIENT_FILL_RECT_H
|
||||
#define GRADIENT_FILL_RECT_H 0x00
|
||||
#define GRADIENT_FILL_RECT_V 0x01
|
||||
#define GRADIENT_FILL_TRIANGLE 0x02
|
||||
#define GRADIENT_FILL_OP_FLAG 0xff
|
||||
#define GRADIENT_FILL_RECT_V 0x01
|
||||
#define GRADIENT_FILL_TRIANGLE 0x02
|
||||
#define GRADIENT_FILL_OP_FLAG 0xff
|
||||
#endif
|
||||
|
||||
#ifndef AC_SRC_ALPHA
|
||||
@ -44,23 +44,23 @@
|
||||
|
||||
BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||
{
|
||||
if (fdwReason == DLL_PROCESS_ATTACH)
|
||||
if (fdwReason == DLL_PROCESS_ATTACH)
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
BOOL WINAPI AlphaBlend_NEW( HDC hdcDest, // handle to destination DC
|
||||
int nXOriginDest, // x-coord of upper-left corner
|
||||
int nYOriginDest, // y-coord of upper-left corner
|
||||
int nWidthDest, // destination width
|
||||
int nHeightDest, // destination height
|
||||
HDC hdcSrc, // handle to source DC
|
||||
int nXOriginSrc, // x-coord of upper-left corner
|
||||
int nYOriginSrc, // y-coord of upper-left corner
|
||||
int nWidthSrc, // source width
|
||||
int nHeightSrc, // source height
|
||||
BLENDFUNCTION blendFunction // alpha-blending function
|
||||
int nXOriginDest, // x-coord of upper-left corner
|
||||
int nYOriginDest, // y-coord of upper-left corner
|
||||
int nWidthDest, // destination width
|
||||
int nHeightDest, // destination height
|
||||
HDC hdcSrc, // handle to source DC
|
||||
int nXOriginSrc, // x-coord of upper-left corner
|
||||
int nYOriginSrc, // y-coord of upper-left corner
|
||||
int nWidthSrc, // source width
|
||||
int nHeightSrc, // source height
|
||||
BLENDFUNCTION blendFunction // alpha-blending function
|
||||
)
|
||||
{
|
||||
unsigned int srcalpha, dstalpha;
|
||||
@ -160,10 +160,10 @@ BOOL WINAPI GradientFill_NEW( HDC hdc, TRIVERTEX *vert_array, ULONG nvert,
|
||||
unsigned int i;
|
||||
|
||||
if ( !hdc || !vert_array || ! grad_array )
|
||||
{
|
||||
SetLastError(ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
{
|
||||
SetLastError(ERROR_INVALID_PARAMETER);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
switch(mode)
|
||||
{
|
||||
@ -275,7 +275,7 @@ BOOL WINAPI GradientFill_NEW( HDC hdc, TRIVERTEX *vert_array, ULONG nvert,
|
||||
int b2 = (v2->Blue * y2 + v-> Blue * (dy2 - y2)) / dy2;
|
||||
|
||||
int x;
|
||||
if (x1 < x2)
|
||||
if (x1 < x2)
|
||||
{
|
||||
int dx = x2 - x1;
|
||||
for (x = 0; x < dx; x++)
|
||||
@ -307,19 +307,19 @@ BOOL WINAPI GradientFill_NEW( HDC hdc, TRIVERTEX *vert_array, ULONG nvert,
|
||||
* GdiTransparentBlt [GDI32.@]
|
||||
*/
|
||||
BOOL WINAPI TransparentBlt_NEW( HDC hdcDest, int xDest, int yDest, int widthDest, int heightDest,
|
||||
HDC hdcSrc, int xSrc, int ySrc, int widthSrc, int heightSrc,
|
||||
UINT crTransparent )
|
||||
HDC hdcSrc, int xSrc, int ySrc, int widthSrc, int heightSrc,
|
||||
UINT crTransparent )
|
||||
{
|
||||
BOOL ret = FALSE;
|
||||
HDC hdcWork;
|
||||
HBITMAP bmpWork;
|
||||
HGDIOBJ oldWork;
|
||||
HDC hdcMask = NULL;
|
||||
HBITMAP bmpMask = NULL;
|
||||
HBITMAP oldMask = NULL;
|
||||
COLORREF oldBackground;
|
||||
COLORREF oldForeground;
|
||||
int oldStretchMode;
|
||||
BOOL ret = FALSE;
|
||||
HDC hdcWork;
|
||||
HBITMAP bmpWork;
|
||||
HGDIOBJ oldWork;
|
||||
HDC hdcMask = NULL;
|
||||
HBITMAP bmpMask = NULL;
|
||||
HBITMAP oldMask = NULL;
|
||||
COLORREF oldBackground;
|
||||
COLORREF oldForeground;
|
||||
int oldStretchMode;
|
||||
|
||||
if ( !hdcDest || !hdcSrc )
|
||||
{
|
||||
@ -327,56 +327,56 @@ BOOL WINAPI TransparentBlt_NEW( HDC hdcDest, int xDest, int yDest, int widthDest
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if(widthDest < 0 || heightDest < 0 || widthSrc < 0 || heightSrc < 0) {
|
||||
return FALSE;
|
||||
}
|
||||
if(widthDest < 0 || heightDest < 0 || widthSrc < 0 || heightSrc < 0) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
oldBackground = SetBkColor(hdcDest, RGB(255,255,255));
|
||||
oldForeground = SetTextColor(hdcDest, RGB(0,0,0));
|
||||
oldBackground = SetBkColor(hdcDest, RGB(255,255,255));
|
||||
oldForeground = SetTextColor(hdcDest, RGB(0,0,0));
|
||||
|
||||
/* Stretch bitmap */
|
||||
oldStretchMode = GetStretchBltMode(hdcSrc);
|
||||
if(oldStretchMode == BLACKONWHITE || oldStretchMode == WHITEONBLACK)
|
||||
SetStretchBltMode(hdcSrc, COLORONCOLOR);
|
||||
hdcWork = CreateCompatibleDC(hdcDest);
|
||||
bmpWork = CreateCompatibleBitmap(hdcDest, widthDest, heightDest);
|
||||
oldWork = SelectObject(hdcWork, bmpWork);
|
||||
if(!StretchBlt(hdcWork, 0, 0, widthDest, heightDest, hdcSrc, xSrc, ySrc, widthSrc, heightSrc, SRCCOPY)) goto error;
|
||||
SetBkColor(hdcWork, crTransparent);
|
||||
/* Stretch bitmap */
|
||||
oldStretchMode = GetStretchBltMode(hdcSrc);
|
||||
if(oldStretchMode == BLACKONWHITE || oldStretchMode == WHITEONBLACK)
|
||||
SetStretchBltMode(hdcSrc, COLORONCOLOR);
|
||||
hdcWork = CreateCompatibleDC(hdcDest);
|
||||
bmpWork = CreateCompatibleBitmap(hdcDest, widthDest, heightDest);
|
||||
oldWork = SelectObject(hdcWork, bmpWork);
|
||||
if(!StretchBlt(hdcWork, 0, 0, widthDest, heightDest, hdcSrc, xSrc, ySrc, widthSrc, heightSrc, SRCCOPY)) goto error;
|
||||
SetBkColor(hdcWork, crTransparent);
|
||||
|
||||
/* Create mask */
|
||||
hdcMask = CreateCompatibleDC(hdcDest);
|
||||
bmpMask = CreateCompatibleBitmap(hdcMask, widthDest, heightDest);
|
||||
oldMask = SelectObject(hdcMask, bmpMask);
|
||||
if(!BitBlt(hdcMask, 0, 0, widthDest, heightDest, hdcWork, 0, 0, SRCCOPY)) goto error;
|
||||
/* Create mask */
|
||||
hdcMask = CreateCompatibleDC(hdcDest);
|
||||
bmpMask = CreateCompatibleBitmap(hdcMask, widthDest, heightDest);
|
||||
oldMask = SelectObject(hdcMask, bmpMask);
|
||||
if(!BitBlt(hdcMask, 0, 0, widthDest, heightDest, hdcWork, 0, 0, SRCCOPY)) goto error;
|
||||
|
||||
/* Replace transparent color with black */
|
||||
SetBkColor(hdcWork, RGB(0,0,0));
|
||||
SetTextColor(hdcWork, RGB(255,255,255));
|
||||
if(!BitBlt(hdcWork, 0, 0, widthDest, heightDest, hdcMask, 0, 0, SRCAND)) goto error;
|
||||
/* Replace transparent color with black */
|
||||
SetBkColor(hdcWork, RGB(0,0,0));
|
||||
SetTextColor(hdcWork, RGB(255,255,255));
|
||||
if(!BitBlt(hdcWork, 0, 0, widthDest, heightDest, hdcMask, 0, 0, SRCAND)) goto error;
|
||||
|
||||
/* Replace non-transparent area on destination with black */
|
||||
if(!BitBlt(hdcDest, xDest, yDest, widthDest, heightDest, hdcMask, 0, 0, SRCAND)) goto error;
|
||||
/* Replace non-transparent area on destination with black */
|
||||
if(!BitBlt(hdcDest, xDest, yDest, widthDest, heightDest, hdcMask, 0, 0, SRCAND)) goto error;
|
||||
|
||||
/* Draw the image */
|
||||
if(!BitBlt(hdcDest, xDest, yDest, widthDest, heightDest, hdcWork, 0, 0, SRCPAINT)) goto error;
|
||||
/* Draw the image */
|
||||
if(!BitBlt(hdcDest, xDest, yDest, widthDest, heightDest, hdcWork, 0, 0, SRCPAINT)) goto error;
|
||||
|
||||
ret = TRUE;
|
||||
ret = TRUE;
|
||||
error:
|
||||
SetStretchBltMode(hdcSrc, oldStretchMode);
|
||||
SetBkColor(hdcDest, oldBackground);
|
||||
SetTextColor(hdcDest, oldForeground);
|
||||
if(hdcWork) {
|
||||
SelectObject(hdcWork, oldWork);
|
||||
DeleteDC(hdcWork);
|
||||
}
|
||||
if(bmpWork) DeleteObject(bmpWork);
|
||||
if(hdcMask) {
|
||||
SelectObject(hdcMask, oldMask);
|
||||
DeleteDC(hdcMask);
|
||||
}
|
||||
if(bmpMask) DeleteObject(bmpMask);
|
||||
return ret;
|
||||
SetStretchBltMode(hdcSrc, oldStretchMode);
|
||||
SetBkColor(hdcDest, oldBackground);
|
||||
SetTextColor(hdcDest, oldForeground);
|
||||
if(hdcWork) {
|
||||
SelectObject(hdcWork, oldWork);
|
||||
DeleteDC(hdcWork);
|
||||
}
|
||||
if(bmpWork) DeleteObject(bmpWork);
|
||||
if(hdcMask) {
|
||||
SelectObject(hdcMask, oldMask);
|
||||
DeleteDC(hdcMask);
|
||||
}
|
||||
if(bmpMask) DeleteObject(bmpMask);
|
||||
return ret;
|
||||
}
|
||||
|
||||
void WINAPI vSetDdrawflag()
|
||||
|
@ -24,12 +24,12 @@
|
||||
int WINAPI CommonUnimpStub(void);
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define UNIMPL_FUNC(name,params) \
|
||||
__asm__( ".text\n" \
|
||||
".globl _" #name "@0\n" \
|
||||
"_" #name "_new@0:\n\t" \
|
||||
"xor %eax, %eax\n\t" \
|
||||
"movb $" #params ", %cl\n\t" \
|
||||
#define UNIMPL_FUNC(name,params) \
|
||||
__asm__( ".text\n" \
|
||||
".globl _" #name "@0\n" \
|
||||
"_" #name "_new@0:\n\t" \
|
||||
"xor %eax, %eax\n\t" \
|
||||
"movb $" #params ", %cl\n\t" \
|
||||
"jmp _CommonUnimpStub@0\n\t" \
|
||||
)
|
||||
#else
|
||||
@ -44,24 +44,25 @@ int WINAPI CommonUnimpStub(void);
|
||||
|
||||
BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||
{
|
||||
switch (fdwReason) {
|
||||
case DLL_PROCESS_ATTACH:
|
||||
{
|
||||
switch (fdwReason)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
{
|
||||
OSVERSIONINFO osv;
|
||||
osv.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||
GetVersionEx(&osv);
|
||||
if (osv.dwMajorVersion < 5)
|
||||
return FALSE;
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
break;
|
||||
}
|
||||
case DLL_PROCESS_DETACH:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
break;
|
||||
}
|
||||
case DLL_PROCESS_DETACH:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
UNIMPL_FUNC(PdhGetDllVersion, 1);
|
||||
|
@ -41,54 +41,54 @@
|
||||
|
||||
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||
{
|
||||
TRACE("%p %d %p\n", hinstDLL, fdwReason, lpvReserved);
|
||||
TRACE("%p %d %p\n", hinstDLL, fdwReason, lpvReserved);
|
||||
|
||||
switch (fdwReason)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
switch (fdwReason)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI CreateEnvironmentBlock( LPVOID* lpEnvironment,
|
||||
HANDLE hToken, BOOL bInherit )
|
||||
{
|
||||
FIXME("%p %p %d\n", lpEnvironment, hToken, bInherit );
|
||||
return FALSE;
|
||||
FIXME("%p %p %d\n", lpEnvironment, hToken, bInherit );
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL WINAPI DestroyEnvironmentBlock( LPVOID lpEnvironment )
|
||||
{
|
||||
FIXME("%p\n", lpEnvironment);
|
||||
FIXME("%p\n", lpEnvironment);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL WINAPI ExpandEnvironmentStringsForUserA( HANDLE hToken, LPCSTR lpSrc,
|
||||
LPSTR lpDest, DWORD dwSize )
|
||||
{
|
||||
BOOL ret;
|
||||
BOOL ret;
|
||||
|
||||
TRACE("%p %s %p %d\n", hToken, debugstr_a(lpSrc), lpDest, dwSize);
|
||||
TRACE("%p %s %p %d\n", hToken, debugstr_a(lpSrc), lpDest, dwSize);
|
||||
|
||||
ret = ExpandEnvironmentStringsA( lpSrc, lpDest, dwSize );
|
||||
TRACE("<- %s\n", debugstr_a(lpDest));
|
||||
return ret;
|
||||
ret = ExpandEnvironmentStringsA( lpSrc, lpDest, dwSize );
|
||||
TRACE("<- %s\n", debugstr_a(lpDest));
|
||||
return ret;
|
||||
}
|
||||
|
||||
BOOL WINAPI ExpandEnvironmentStringsForUserW( HANDLE hToken, LPCWSTR lpSrc,
|
||||
LPWSTR lpDest, DWORD dwSize )
|
||||
{
|
||||
BOOL ret;
|
||||
BOOL ret;
|
||||
|
||||
TRACE("%p %s %p %d\n", hToken, debugstr_w(lpSrc), lpDest, dwSize);
|
||||
TRACE("%p %s %p %d\n", hToken, debugstr_w(lpSrc), lpDest, dwSize);
|
||||
|
||||
ret = ExpandEnvironmentStringsW( lpSrc, lpDest, dwSize );
|
||||
TRACE("<- %s\n", debugstr_w(lpDest));
|
||||
return ret;
|
||||
ret = ExpandEnvironmentStringsW( lpSrc, lpDest, dwSize );
|
||||
TRACE("<- %s\n", debugstr_w(lpDest));
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int getsubdirpath(int nFolder, LPSTR lpBuffer, LPSTR lpSubDir)
|
||||
@ -154,49 +154,49 @@ int WINAPI GetAllUsersProfileDirectoryW( LPWSTR lpProfileDir, LPDWORD lpcchSize
|
||||
|
||||
int WINAPI GetProfilesDirectoryA( LPSTR lpProfilesDir, LPDWORD lpcchSize )
|
||||
{
|
||||
return GetSpecialSubdirPathA(CSIDL_APPDATA,"..\\..",lpProfilesDir,lpcchSize);
|
||||
return GetSpecialSubdirPathA(CSIDL_APPDATA,"..\\..",lpProfilesDir,lpcchSize);
|
||||
}
|
||||
|
||||
int WINAPI GetProfilesDirectoryW( LPWSTR lpProfilesDir, LPDWORD lpcchSize )
|
||||
{
|
||||
return GetSpecialSubdirPathW(CSIDL_APPDATA,"..\\..",lpProfilesDir,lpcchSize);
|
||||
return GetSpecialSubdirPathW(CSIDL_APPDATA,"..\\..",lpProfilesDir,lpcchSize);
|
||||
}
|
||||
|
||||
BOOL WINAPI GetProfileType( DWORD *pdwFlags )
|
||||
{
|
||||
FIXME("%p\n", pdwFlags );
|
||||
*pdwFlags = 0;
|
||||
return TRUE;
|
||||
FIXME("%p\n", pdwFlags );
|
||||
*pdwFlags = 0;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI LoadUserProfileA( HANDLE hToken, LPPROFILEINFOA lpProfileInfo )
|
||||
{
|
||||
FIXME("%p %p\n", hToken, lpProfileInfo );
|
||||
lpProfileInfo->hProfile = HKEY_CURRENT_USER;
|
||||
return TRUE;
|
||||
FIXME("%p %p\n", hToken, lpProfileInfo );
|
||||
lpProfileInfo->hProfile = HKEY_CURRENT_USER;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI LoadUserProfileW( HANDLE hToken, LPPROFILEINFOW lpProfileInfo )
|
||||
{
|
||||
FIXME("%p %p\n", hToken, lpProfileInfo );
|
||||
lpProfileInfo->hProfile = HKEY_CURRENT_USER;
|
||||
return TRUE;
|
||||
FIXME("%p %p\n", hToken, lpProfileInfo );
|
||||
lpProfileInfo->hProfile = HKEY_CURRENT_USER;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI RegisterGPNotification( HANDLE event, BOOL machine )
|
||||
{
|
||||
FIXME("%p %d\n", event, machine );
|
||||
return TRUE;
|
||||
FIXME("%p %d\n", event, machine );
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI UnregisterGPNotification( HANDLE event )
|
||||
{
|
||||
FIXME("%p\n", event );
|
||||
return TRUE;
|
||||
FIXME("%p\n", event );
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
BOOL WINAPI UnloadUserProfile( HANDLE hToken, HANDLE hProfile )
|
||||
{
|
||||
FIXME("(%p, %p): stub\n", hToken, hProfile);
|
||||
return FALSE;
|
||||
FIXME("(%p, %p): stub\n", hToken, hProfile);
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -36,14 +36,14 @@
|
||||
*/
|
||||
BOOL WINAPI GetThemeSysBool(HTHEME hTheme, int iBoolID)
|
||||
{
|
||||
SetLastError(0);
|
||||
if(iBoolID == TMT_FLATMENUS) {
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
SetLastError(STG_E_INVALIDPARAMETER);
|
||||
}
|
||||
return FALSE;
|
||||
SetLastError(0);
|
||||
if(iBoolID == TMT_FLATMENUS) {
|
||||
return FALSE;
|
||||
}
|
||||
else {
|
||||
SetLastError(STG_E_INVALIDPARAMETER);
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -52,8 +52,8 @@ BOOL WINAPI GetThemeSysBool(HTHEME hTheme, int iBoolID)
|
||||
*/
|
||||
COLORREF WINAPI GetThemeSysColor(HTHEME hTheme, int iColorID)
|
||||
{
|
||||
SetLastError(0);
|
||||
return GetSysColor(iColorID - TMT_FIRSTCOLOR);
|
||||
SetLastError(0);
|
||||
return GetSysColor(iColorID - TMT_FIRSTCOLOR);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -62,7 +62,7 @@ COLORREF WINAPI GetThemeSysColor(HTHEME hTheme, int iColorID)
|
||||
*/
|
||||
HBRUSH WINAPI GetThemeSysColorBrush(HTHEME hTheme, int iColorID)
|
||||
{
|
||||
return CreateSolidBrush(GetThemeSysColor(hTheme, iColorID));
|
||||
return CreateSolidBrush(GetThemeSysColor(hTheme, iColorID));
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -71,29 +71,29 @@ HBRUSH WINAPI GetThemeSysColorBrush(HTHEME hTheme, int iColorID)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeSysFont(HTHEME hTheme, int iFontID, LOGFONTW *plf)
|
||||
{
|
||||
HRESULT hr = S_OK;
|
||||
HRESULT hr = S_OK;
|
||||
|
||||
if(iFontID == TMT_ICONTITLEFONT) {
|
||||
if(!SystemParametersInfoW(SPI_GETICONTITLELOGFONT, sizeof(LOGFONTW), &plf, 0))
|
||||
return HRESULT_FROM_WIN32(GetLastError());
|
||||
}
|
||||
else {
|
||||
NONCLIENTMETRICSW ncm;
|
||||
LOGFONTW *font = NULL;
|
||||
ncm.cbSize = sizeof(NONCLIENTMETRICSW);
|
||||
if(!SystemParametersInfoW(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICSW), &ncm, 0))
|
||||
return HRESULT_FROM_WIN32(GetLastError());
|
||||
switch(iFontID) {
|
||||
case TMT_CAPTIONFONT: font = &ncm.lfCaptionFont; break;
|
||||
case TMT_SMALLCAPTIONFONT: font = &ncm.lfSmCaptionFont; break;
|
||||
case TMT_MENUFONT: font = &ncm.lfMenuFont; break;
|
||||
case TMT_STATUSFONT: font = &ncm.lfStatusFont; break;
|
||||
case TMT_MSGBOXFONT: font = &ncm.lfMessageFont; break;
|
||||
}
|
||||
if(font) *plf = *font;
|
||||
else hr = STG_E_INVALIDPARAMETER;
|
||||
}
|
||||
return hr;
|
||||
if(iFontID == TMT_ICONTITLEFONT) {
|
||||
if(!SystemParametersInfoW(SPI_GETICONTITLELOGFONT, sizeof(LOGFONTW), &plf, 0))
|
||||
return HRESULT_FROM_WIN32(GetLastError());
|
||||
}
|
||||
else {
|
||||
NONCLIENTMETRICSW ncm;
|
||||
LOGFONTW *font = NULL;
|
||||
ncm.cbSize = sizeof(NONCLIENTMETRICSW);
|
||||
if(!SystemParametersInfoW(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICSW), &ncm, 0))
|
||||
return HRESULT_FROM_WIN32(GetLastError());
|
||||
switch(iFontID) {
|
||||
case TMT_CAPTIONFONT: font = &ncm.lfCaptionFont; break;
|
||||
case TMT_SMALLCAPTIONFONT: font = &ncm.lfSmCaptionFont; break;
|
||||
case TMT_MENUFONT: font = &ncm.lfMenuFont; break;
|
||||
case TMT_STATUSFONT: font = &ncm.lfStatusFont; break;
|
||||
case TMT_MSGBOXFONT: font = &ncm.lfMessageFont; break;
|
||||
}
|
||||
if(font) *plf = *font;
|
||||
else hr = STG_E_INVALIDPARAMETER;
|
||||
}
|
||||
return hr;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -102,7 +102,7 @@ HRESULT WINAPI GetThemeSysFont(HTHEME hTheme, int iFontID, LOGFONTW *plf)
|
||||
*/
|
||||
HRESULT WINAPI GetThemeSysInt(HTHEME hTheme, int iIntID, int *piValue)
|
||||
{
|
||||
return E_HANDLE;
|
||||
return E_HANDLE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -111,7 +111,7 @@ HRESULT WINAPI GetThemeSysInt(HTHEME hTheme, int iIntID, int *piValue)
|
||||
*/
|
||||
int WINAPI GetThemeSysSize(HTHEME hTheme, int iSizeID)
|
||||
{
|
||||
return GetSystemMetrics(iSizeID);
|
||||
return GetSystemMetrics(iSizeID);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
@ -121,5 +121,5 @@ int WINAPI GetThemeSysSize(HTHEME hTheme, int iSizeID)
|
||||
HRESULT WINAPI GetThemeSysString(HTHEME hTheme, int iStringID,
|
||||
LPWSTR pszStringBuff, int cchMaxStringChars)
|
||||
{
|
||||
return E_HANDLE;
|
||||
return E_HANDLE;
|
||||
}
|
||||
|
@ -32,7 +32,7 @@
|
||||
|
||||
BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, BOOL bLoadStatic)
|
||||
{
|
||||
if (fdwReason == DLL_PROCESS_ATTACH)
|
||||
if (fdwReason == DLL_PROCESS_ATTACH)
|
||||
{
|
||||
if (!bLoadStatic)
|
||||
{
|
||||
@ -44,7 +44,7 @@ BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, BOOL bLoadStatic)
|
||||
}
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
}
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
UNIMPL_FUNC(CloseThemeData, 1, _E_NOTIMPL);
|
||||
|
@ -69,35 +69,36 @@ static HMODULE WTSAPI32_hModule = 0;
|
||||
|
||||
BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
||||
{
|
||||
TRACE("%p,%lx,%p\n", hinstDLL, fdwReason, lpvReserved);
|
||||
TRACE("%p,%lx,%p\n", hinstDLL, fdwReason, lpvReserved);
|
||||
|
||||
switch (fdwReason) {
|
||||
case DLL_PROCESS_ATTACH:
|
||||
{
|
||||
OSVERSIONINFO osv;
|
||||
osv.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||
GetVersionEx(&osv);
|
||||
if (osv.dwMajorVersion < 5)
|
||||
return FALSE;
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
WTSAPI32_hModule = hinstDLL;
|
||||
break;
|
||||
}
|
||||
case DLL_PROCESS_DETACH:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
switch (fdwReason)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
{
|
||||
OSVERSIONINFO osv;
|
||||
osv.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||
GetVersionEx(&osv);
|
||||
if (osv.dwMajorVersion < 5)
|
||||
return FALSE;
|
||||
DisableThreadLibraryCalls(hinstDLL);
|
||||
WTSAPI32_hModule = hinstDLL;
|
||||
break;
|
||||
}
|
||||
case DLL_PROCESS_DETACH:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSCloseServer (WTSAPI32.@)
|
||||
*/
|
||||
void WINAPI WTSCloseServer(HANDLE hServer)
|
||||
{
|
||||
FIXME("Stub %p\n", hServer);
|
||||
FIXME("Stub %p\n", hServer);
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
@ -105,110 +106,110 @@ void WINAPI WTSCloseServer(HANDLE hServer)
|
||||
*/
|
||||
BOOL WINAPI WTSDisconnectSession(HANDLE hServer, DWORD SessionId, BOOL bWait)
|
||||
{
|
||||
FIXME("Stub %p 0x%08lx %d\n", hServer, SessionId, bWait);
|
||||
return TRUE;
|
||||
FIXME("Stub %p 0x%08lx %d\n", hServer, SessionId, bWait);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSEnumerateProcessesA (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSEnumerateProcessesA(HANDLE hServer, DWORD Reserved, DWORD Version,
|
||||
PWTS_PROCESS_INFOA* ppProcessInfo, DWORD* pCount)
|
||||
PWTS_PROCESS_INFOA* ppProcessInfo, DWORD* pCount)
|
||||
{
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppProcessInfo, pCount);
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppProcessInfo, pCount);
|
||||
|
||||
if (!ppProcessInfo || !pCount) return FALSE;
|
||||
if (!ppProcessInfo || !pCount) return FALSE;
|
||||
|
||||
*pCount = 0;
|
||||
*ppProcessInfo = NULL;
|
||||
*pCount = 0;
|
||||
*ppProcessInfo = NULL;
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSEnumerateProcessesW (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSEnumerateProcessesW(HANDLE hServer, DWORD Reserved, DWORD Version,
|
||||
PWTS_PROCESS_INFOW* ppProcessInfo, DWORD* pCount)
|
||||
PWTS_PROCESS_INFOW* ppProcessInfo, DWORD* pCount)
|
||||
{
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppProcessInfo, pCount);
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppProcessInfo, pCount);
|
||||
|
||||
if (!ppProcessInfo || !pCount) return FALSE;
|
||||
if (!ppProcessInfo || !pCount) return FALSE;
|
||||
|
||||
*pCount = 0;
|
||||
*ppProcessInfo = NULL;
|
||||
*pCount = 0;
|
||||
*ppProcessInfo = NULL;
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSEnumerateServersA (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSEnumerateServersA(LPSTR pDomainName, DWORD Reserved, DWORD Version,
|
||||
PWTS_SERVER_INFOA* ppServerInfo, DWORD* pCount)
|
||||
PWTS_SERVER_INFOA* ppServerInfo, DWORD* pCount)
|
||||
{
|
||||
FIXME("Stub %s 0x%08lx 0x%08lx %p %p\n", debugstr_a(pDomainName), Reserved, Version,
|
||||
ppServerInfo, pCount);
|
||||
FIXME("Stub %s 0x%08lx 0x%08lx %p %p\n", debugstr_a(pDomainName), Reserved, Version,
|
||||
ppServerInfo, pCount);
|
||||
|
||||
if (!ppServerInfo || !pCount) return FALSE;
|
||||
if (!ppServerInfo || !pCount) return FALSE;
|
||||
|
||||
*pCount = 0;
|
||||
*ppServerInfo = NULL;
|
||||
*pCount = 0;
|
||||
*ppServerInfo = NULL;
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSEnumerateServersW (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSEnumerateServersW(LPWSTR pDomainName, DWORD Reserved, DWORD Version,
|
||||
PWTS_SERVER_INFOW* ppServerInfo, DWORD* pCount)
|
||||
PWTS_SERVER_INFOW* ppServerInfo, DWORD* pCount)
|
||||
{
|
||||
FIXME("Stub %s 0x%08lx 0x%08lx %p %p\n", debugstr_w(pDomainName), Reserved, Version,
|
||||
ppServerInfo, pCount);
|
||||
FIXME("Stub %s 0x%08lx 0x%08lx %p %p\n", debugstr_w(pDomainName), Reserved, Version,
|
||||
ppServerInfo, pCount);
|
||||
|
||||
if (!ppServerInfo || !pCount) return FALSE;
|
||||
if (!ppServerInfo || !pCount) return FALSE;
|
||||
|
||||
*pCount = 0;
|
||||
*ppServerInfo = NULL;
|
||||
*pCount = 0;
|
||||
*ppServerInfo = NULL;
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSEnumerateEnumerateSessionsA (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSEnumerateSessionsA(HANDLE hServer, DWORD Reserved, DWORD Version,
|
||||
PWTS_SESSION_INFOA* ppSessionInfo, DWORD* pCount)
|
||||
PWTS_SESSION_INFOA* ppSessionInfo, DWORD* pCount)
|
||||
{
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppSessionInfo, pCount);
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppSessionInfo, pCount);
|
||||
|
||||
if (!ppSessionInfo || !pCount) return FALSE;
|
||||
if (!ppSessionInfo || !pCount) return FALSE;
|
||||
|
||||
*pCount = 0;
|
||||
*ppSessionInfo = NULL;
|
||||
*pCount = 0;
|
||||
*ppSessionInfo = NULL;
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSEnumerateEnumerateSessionsW (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSEnumerateSessionsW(HANDLE hServer, DWORD Reserved, DWORD Version,
|
||||
PWTS_SESSION_INFOW* ppSessionInfo, DWORD* pCount)
|
||||
PWTS_SESSION_INFOW* ppSessionInfo, DWORD* pCount)
|
||||
{
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppSessionInfo, pCount);
|
||||
FIXME("Stub %p 0x%08lx 0x%08lx %p %p\n", hServer, Reserved, Version,
|
||||
ppSessionInfo, pCount);
|
||||
|
||||
if (!ppSessionInfo || !pCount) return FALSE;
|
||||
if (!ppSessionInfo || !pCount) return FALSE;
|
||||
|
||||
*pCount = 0;
|
||||
*ppSessionInfo = NULL;
|
||||
*pCount = 0;
|
||||
*ppSessionInfo = NULL;
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
@ -216,8 +217,8 @@ BOOL WINAPI WTSEnumerateSessionsW(HANDLE hServer, DWORD Reserved, DWORD Version,
|
||||
*/
|
||||
void WINAPI WTSFreeMemory(PVOID pMemory)
|
||||
{
|
||||
FIXME("Stub %p\n", pMemory);
|
||||
return;
|
||||
FIXME("Stub %p\n", pMemory);
|
||||
return;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
@ -225,9 +226,9 @@ void WINAPI WTSFreeMemory(PVOID pMemory)
|
||||
*/
|
||||
HANDLE WINAPI WTSOpenServerA(LPSTR pServerName)
|
||||
{
|
||||
FIXME("(%s) stub\n", debugstr_a(pServerName));
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return NULL;
|
||||
FIXME("(%s) stub\n", debugstr_a(pServerName));
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
@ -235,64 +236,72 @@ HANDLE WINAPI WTSOpenServerA(LPSTR pServerName)
|
||||
*/
|
||||
HANDLE WINAPI WTSOpenServerW(LPWSTR pServerName)
|
||||
{
|
||||
FIXME("(%s) stub\n", debugstr_w(pServerName));
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return NULL;
|
||||
FIXME("(%s) stub\n", debugstr_w(pServerName));
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSQuerySessionInformationA (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSQuerySessionInformationA(
|
||||
HANDLE hServer,
|
||||
DWORD SessionId,
|
||||
WTS_INFO_CLASS WTSInfoClass,
|
||||
LPSTR* Buffer,
|
||||
DWORD* BytesReturned)
|
||||
HANDLE hServer,
|
||||
DWORD SessionId,
|
||||
WTS_INFO_CLASS WTSInfoClass,
|
||||
LPSTR* Buffer,
|
||||
DWORD* BytesReturned)
|
||||
{
|
||||
/* FIXME: Forward request to winsta.dll::WinStationQueryInformationA */
|
||||
FIXME("Stub %p 0x%08lx %d %p %p\n", hServer, SessionId, WTSInfoClass,
|
||||
Buffer, BytesReturned);
|
||||
/* FIXME: Forward request to winsta.dll::WinStationQueryInformationA */
|
||||
FIXME("Stub %p 0x%08lx %d %p %p\n", hServer, SessionId, WTSInfoClass,
|
||||
Buffer, BytesReturned);
|
||||
|
||||
return FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSQuerySessionInformationW (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSQuerySessionInformationW(
|
||||
HANDLE hServer,
|
||||
DWORD SessionId,
|
||||
WTS_INFO_CLASS WTSInfoClass,
|
||||
LPWSTR* Buffer,
|
||||
DWORD* BytesReturned)
|
||||
HANDLE hServer,
|
||||
DWORD SessionId,
|
||||
WTS_INFO_CLASS WTSInfoClass,
|
||||
LPWSTR* Buffer,
|
||||
DWORD* BytesReturned)
|
||||
{
|
||||
/* FIXME: Forward request to winsta.dll::WinStationQueryInformationW */
|
||||
FIXME("Stub %p 0x%08lx %d %p %p\n", hServer, SessionId, WTSInfoClass,
|
||||
Buffer, BytesReturned);
|
||||
/* FIXME: Forward request to winsta.dll::WinStationQueryInformationW */
|
||||
FIXME("Stub %p 0x%08lx %d %p %p\n", hServer, SessionId, WTSInfoClass,
|
||||
Buffer, BytesReturned);
|
||||
|
||||
return FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSQueryUserConfigA (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSQueryUserConfigA(LPSTR pServerName, LPSTR pUserName,
|
||||
WTS_CONFIG_CLASS WTSConfigClass, LPSTR* ppBuffer, DWORD* pBytesReturned)
|
||||
BOOL WINAPI WTSQueryUserConfigA(
|
||||
LPSTR pServerName,
|
||||
LPSTR pUserName,
|
||||
WTS_CONFIG_CLASS WTSConfigClass,
|
||||
LPSTR* ppBuffer,
|
||||
DWORD* pBytesReturned)
|
||||
{
|
||||
FIXME("Stub %s %s 0x%08lx %p %p\n", debugstr_a(pServerName), debugstr_a(pUserName),
|
||||
WTSConfigClass, ppBuffer, pBytesReturned);
|
||||
WTSConfigClass, ppBuffer, pBytesReturned);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
* WTSQueryUserConfigW (WTSAPI32.@)
|
||||
*/
|
||||
BOOL WINAPI WTSQueryUserConfigW(LPWSTR pServerName, LPWSTR pUserName,
|
||||
WTS_CONFIG_CLASS WTSConfigClass, LPWSTR* ppBuffer, DWORD* pBytesReturned)
|
||||
BOOL WINAPI WTSQueryUserConfigW(
|
||||
LPWSTR pServerName,
|
||||
LPWSTR pUserName,
|
||||
WTS_CONFIG_CLASS WTSConfigClass,
|
||||
LPWSTR* ppBuffer,
|
||||
DWORD* pBytesReturned)
|
||||
{
|
||||
FIXME("Stub %s %s 0x%08lx %p %p\n", debugstr_w(pServerName), debugstr_w(pUserName),
|
||||
WTSConfigClass, ppBuffer, pBytesReturned);
|
||||
WTSConfigClass, ppBuffer, pBytesReturned);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -320,8 +329,8 @@ BOOL WINAPI WTSRegisterSessionNotification(HWND hWnd, DWORD dwFlags)
|
||||
BOOL WINAPI WTSTerminateProcess(HANDLE hServer, DWORD ProcessId, DWORD ExitCode)
|
||||
{
|
||||
FIXME("Stub %p 0x%08x 0x%08x\n", hServer, ProcessId, ExitCode);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/************************************************************
|
||||
@ -338,7 +347,7 @@ BOOL WINAPI WTSUnRegisterSessionNotification(HWND hWnd)
|
||||
*/
|
||||
BOOL WINAPI WTSWaitSystemEvent(HANDLE hServer, DWORD Mask, DWORD* Flags)
|
||||
{
|
||||
/* FIXME: Forward request to winsta.dll::WinStationWaitSystemEvent */
|
||||
FIXME("Stub %p 0x%08lx %p\n", hServer, Mask, Flags);
|
||||
return FALSE;
|
||||
/* FIXME: Forward request to winsta.dll::WinStationWaitSystemEvent */
|
||||
FIXME("Stub %p 0x%08lx %p\n", hServer, Mask, Flags);
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -28,74 +28,74 @@ extern "C" {
|
||||
|
||||
typedef enum tagWTS_INFO_CLASS
|
||||
{
|
||||
WTSInitialProgram,
|
||||
WTSApplicationName,
|
||||
WTSWorkingDirectory,
|
||||
WTSOEMId,
|
||||
WTSSessionId,
|
||||
WTSUserName,
|
||||
WTSWinStationName,
|
||||
WTSDomainName,
|
||||
WTSConnectState,
|
||||
WTSClientBuildNumber,
|
||||
WTSClientName,
|
||||
WTSClientDirectory,
|
||||
WTSClientProductId,
|
||||
WTSClientHardwareId,
|
||||
WTSClientAddress,
|
||||
WTSClientDisplay,
|
||||
WTSClientProtocolType,
|
||||
WTSInitialProgram,
|
||||
WTSApplicationName,
|
||||
WTSWorkingDirectory,
|
||||
WTSOEMId,
|
||||
WTSSessionId,
|
||||
WTSUserName,
|
||||
WTSWinStationName,
|
||||
WTSDomainName,
|
||||
WTSConnectState,
|
||||
WTSClientBuildNumber,
|
||||
WTSClientName,
|
||||
WTSClientDirectory,
|
||||
WTSClientProductId,
|
||||
WTSClientHardwareId,
|
||||
WTSClientAddress,
|
||||
WTSClientDisplay,
|
||||
WTSClientProtocolType,
|
||||
} WTS_INFO_CLASS;
|
||||
|
||||
typedef enum _WTS_CONNECTSTATE_CLASS
|
||||
{
|
||||
WTSActive,
|
||||
WTSConnected,
|
||||
WTSConnectQuery,
|
||||
WTSShadow,
|
||||
WTSDisconnected,
|
||||
WTSIdle,
|
||||
WTSListen,
|
||||
WTSReset,
|
||||
WTSDown,
|
||||
WTSInit
|
||||
WTSActive,
|
||||
WTSConnected,
|
||||
WTSConnectQuery,
|
||||
WTSShadow,
|
||||
WTSDisconnected,
|
||||
WTSIdle,
|
||||
WTSListen,
|
||||
WTSReset,
|
||||
WTSDown,
|
||||
WTSInit
|
||||
} WTS_CONNECTSTATE_CLASS;
|
||||
|
||||
typedef enum _WTS_CONFIG_CLASS
|
||||
{
|
||||
WTSUserConfigInitialProgram,
|
||||
WTSUserConfigWorkingDirectory,
|
||||
WTSUserConfigInheritInitialProgram,
|
||||
WTSUserConfigAllowLogonTerminalServer,
|
||||
WTSUserConfigTimeoutSettingsConnections,
|
||||
WTSUserConfigTimeoutSettingsDisconnections,
|
||||
WTSUserConfigTimeoutSettingsIdle,
|
||||
WTSUserConfigDeviceClientDrives,
|
||||
WTSUserConfigDeviceClientPrinters,
|
||||
WTSUserConfigDeviceClientDefaultPrinter,
|
||||
WTSUserConfigBrokenTimeoutSettings,
|
||||
WTSUserConfigModemCallbackSettings,
|
||||
WTSUserConfigModemCallbackPhoneNumber,
|
||||
WTSUserConfigShadowSettings,
|
||||
WTSUserConfigTerminalServerProfilePath,
|
||||
WTSUserConfigTerminalServerHomeDirectory,
|
||||
WTSUserConfigfTerminalServerRemoteHomeDir
|
||||
WTSUserConfigInitialProgram,
|
||||
WTSUserConfigWorkingDirectory,
|
||||
WTSUserConfigInheritInitialProgram,
|
||||
WTSUserConfigAllowLogonTerminalServer,
|
||||
WTSUserConfigTimeoutSettingsConnections,
|
||||
WTSUserConfigTimeoutSettingsDisconnections,
|
||||
WTSUserConfigTimeoutSettingsIdle,
|
||||
WTSUserConfigDeviceClientDrives,
|
||||
WTSUserConfigDeviceClientPrinters,
|
||||
WTSUserConfigDeviceClientDefaultPrinter,
|
||||
WTSUserConfigBrokenTimeoutSettings,
|
||||
WTSUserConfigModemCallbackSettings,
|
||||
WTSUserConfigModemCallbackPhoneNumber,
|
||||
WTSUserConfigShadowSettings,
|
||||
WTSUserConfigTerminalServerProfilePath,
|
||||
WTSUserConfigTerminalServerHomeDirectory,
|
||||
WTSUserConfigfTerminalServerRemoteHomeDir
|
||||
} WTS_CONFIG_CLASS;
|
||||
|
||||
typedef struct _WTS_PROCESS_INFOA
|
||||
{
|
||||
DWORD SessionId;
|
||||
DWORD ProcessId;
|
||||
LPSTR pProcessName;
|
||||
PSID pUserSid;
|
||||
DWORD SessionId;
|
||||
DWORD ProcessId;
|
||||
LPSTR pProcessName;
|
||||
PSID pUserSid;
|
||||
} WTS_PROCESS_INFOA, *PWTS_PROCESS_INFOA;
|
||||
|
||||
typedef struct _WTS_PROCESS_INFOW
|
||||
{
|
||||
DWORD SessionId;
|
||||
DWORD ProcessId;
|
||||
LPWSTR pProcessName;
|
||||
PSID pUserSid;
|
||||
DWORD SessionId;
|
||||
DWORD ProcessId;
|
||||
LPWSTR pProcessName;
|
||||
PSID pUserSid;
|
||||
} WTS_PROCESS_INFOW, *PWTS_PROCESS_INFOW;
|
||||
|
||||
DECL_WINELIB_TYPE_AW(WTS_PROCESS_INFO)
|
||||
@ -103,16 +103,16 @@ DECL_WINELIB_TYPE_AW(PWTS_PROCESS_INFO)
|
||||
|
||||
typedef struct _WTS_SESSION_INFOA
|
||||
{
|
||||
DWORD SessionId;
|
||||
LPSTR pWinStationName;
|
||||
WTS_CONNECTSTATE_CLASS State;
|
||||
DWORD SessionId;
|
||||
LPSTR pWinStationName;
|
||||
WTS_CONNECTSTATE_CLASS State;
|
||||
} WTS_SESSION_INFOA, *PWTS_SESSION_INFOA;
|
||||
|
||||
typedef struct _WTS_SESSION_INFOW
|
||||
{
|
||||
DWORD SessionId;
|
||||
LPWSTR pWinStationName;
|
||||
WTS_CONNECTSTATE_CLASS State;
|
||||
DWORD SessionId;
|
||||
LPWSTR pWinStationName;
|
||||
WTS_CONNECTSTATE_CLASS State;
|
||||
} WTS_SESSION_INFOW, *PWTS_SESSION_INFOW;
|
||||
|
||||
DECL_WINELIB_TYPE_AW(WTS_SESSION_INFO)
|
||||
@ -120,12 +120,12 @@ DECL_WINELIB_TYPE_AW(PWTS_SESSION_INFO)
|
||||
|
||||
typedef struct _WTS_SERVER_INFOA
|
||||
{
|
||||
LPSTR pServerName;
|
||||
LPSTR pServerName;
|
||||
} WTS_SERVER_INFOA, *PWTS_SERVER_INFOA;
|
||||
|
||||
typedef struct _WTS_SERVER_INFOW
|
||||
{
|
||||
LPWSTR pServerName;
|
||||
LPWSTR pServerName;
|
||||
} WTS_SERVER_INFOW, *PWTS_SERVER_INFOW;
|
||||
|
||||
DECL_WINELIB_TYPE_AW(WTS_SERVER_INFO)
|
||||
|
Reference in New Issue
Block a user