Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
83 lines
3.1 KiB
C++
83 lines
3.1 KiB
C++
//*********************************************************************
|
|
//* Microsoft Windows **
|
|
//* Copyright 1996 - 1998 Microsoft Corporation. **
|
|
//*********************************************************************
|
|
|
|
#ifndef _RATINGS_H_
|
|
#define _RATINGS_H_
|
|
|
|
#include <winerror.h>
|
|
#include <shlwapi.h>
|
|
|
|
STDAPI RatingEnable(HWND hwndParent, LPCSTR pszUsername, BOOL fEnable);
|
|
STDAPI RatingCheckUserAccess(LPCSTR pszUsername, LPCSTR pszURL,
|
|
LPCSTR pszRatingInfo, LPBYTE pData,
|
|
DWORD cbData, void **ppRatingDetails);
|
|
STDAPI RatingAccessDeniedDialog(HWND hDlg, LPCSTR pszUsername, LPCSTR pszContentDescription, void *pRatingDetails);
|
|
STDAPI RatingAccessDeniedDialog2(HWND hDlg, LPCSTR pszUsername, void *pRatingDetails);
|
|
STDAPI RatingFreeDetails(void *pRatingDetails);
|
|
STDAPI RatingObtainCancel(HANDLE hRatingObtainQuery);
|
|
STDAPI RatingObtainQuery(LPCTSTR pszTargetUrl, DWORD dwUserData, void (*fCallback)(DWORD dwUserData, HRESULT hr, LPCTSTR pszRating, void *lpvRatingDetails), HANDLE *phRatingObtainQuery);
|
|
STDAPI RatingSetupUI(HWND hDlg, LPCSTR pszUsername);
|
|
#ifdef _INC_COMMCTRL
|
|
STDAPI RatingAddPropertyPage(PROPSHEETHEADER *ppsh);
|
|
#endif
|
|
|
|
STDAPI RatingEnabledQuery();
|
|
STDAPI RatingInit();
|
|
STDAPI_(void) RatingTerm();
|
|
|
|
//Quick & dirty way to check if ratings are installed. We still need to calling
|
|
// ratings dll to find out for sure but this allows us to delay load ratings.
|
|
_inline BOOL IS_RATINGS_ENABLED()
|
|
{
|
|
TCHAR szSup[200];
|
|
DWORD dwType;
|
|
DWORD cbSize = sizeof(szSup);
|
|
|
|
return (SHGetValue(HKEY_LOCAL_MACHINE,
|
|
"Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Ratings",
|
|
"Key",
|
|
&dwType, &szSup, &cbSize) == ERROR_SUCCESS);
|
|
}
|
|
|
|
#define S_RATING_ALLOW S_OK
|
|
#define S_RATING_DENY S_FALSE
|
|
#define S_RATING_FOUND 0x00000002
|
|
#define E_RATING_NOT_FOUND 0x80000001
|
|
|
|
/************************************************************************
|
|
|
|
IObtainRating interface
|
|
|
|
This interface is used to obtain the rating (PICS label) for a URL.
|
|
It is entirely up to the server to determine how to come up with the
|
|
label. The ObtainRating call may be synchronous.
|
|
|
|
GetSortOrder returns a ULONG which is used to sort this rating helper
|
|
into the list of installed helpers. The helpers are sorted in ascending
|
|
order, so a lower numbered helper will be called before a higher numbered
|
|
one.
|
|
|
|
************************************************************************/
|
|
|
|
DECLARE_INTERFACE_(IObtainRating, IUnknown)
|
|
{
|
|
// *** IUnknown methods ***
|
|
STDMETHOD(QueryInterface) (THIS_ REFIID riid, void **ppvObj) PURE;
|
|
STDMETHOD_(ULONG,AddRef) (THIS) PURE;
|
|
STDMETHOD_(ULONG,Release) (THIS) PURE;
|
|
|
|
STDMETHOD(ObtainRating) (THIS_ LPCTSTR pszTargetUrl, HANDLE hAbortEvent,
|
|
IMalloc *pAllocator, LPSTR *ppRatingOut) PURE;
|
|
|
|
STDMETHOD_(ULONG,GetSortOrder) (THIS) PURE;
|
|
};
|
|
|
|
#define RATING_ORDER_REMOTESITE 0x80000000
|
|
#define RATING_ORDER_LOCALLIST 0xC0000000
|
|
|
|
|
|
#endif
|
|
// _RATINGS_H_
|