14#define MAX_GETPRINTER_SIZE 4096 - MAX_PATH
54 ERR(
"HeapAlloc failed!\n");
133 ERR(
"IPH : Printer Handle failed!\n");
143 FIXME(
"IPH Close : We are shared\n");
148 FIXME(
"IPH Close : closing.\n");
220 ERR(
"HeapAlloc failed!\n");
262 if ( !pMem )
return TRUE;
287 PSID sid_group, sid_owner;
358 ERR(
"UpdateTrayIcon : GetPrinterW cbNeeded %d\n");
378 ERR(
"UpdateTrayIcon : No Shell32!\n");
#define ERROR_NOT_ENOUGH_MEMORY
BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision)
#define GetProcAddress(x, y)
#define HeapFree(x, y, z)
#define ERROR_INVALID_HANDLE
#define WideCharToMultiByte
#define EXCEPTION_EXECUTE_HANDLER
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
static DWORD DWORD void LPSTR DWORD cch
#define _SEH2_EXCEPT(...)
BOOL WINAPI IsValidSecurityDescriptor(PSECURITY_DESCRIPTOR pSecurityDescriptor)
BOOL WINAPI GetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID *pGroup, LPBOOL lpbGroupDefaulted)
BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bDaclPresent, PACL pDacl, BOOL bDaclDefaulted)
BOOL WINAPI GetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL *pSacl, LPBOOL lpbSaclDefaulted)
BOOL WINAPI SetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pOwner, BOOL bOwnerDefaulted)
BOOL WINAPI SetSecurityDescriptorSacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bSaclPresent, PACL pSacl, BOOL bSaclDefaulted)
BOOL WINAPI MakeSelfRelativeSD(PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, LPDWORD lpdwBufferLength)
BOOL WINAPI GetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL *pDacl, LPBOOL lpbDaclDefaulted)
BOOL WINAPI SetSecurityDescriptorGroup(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID pGroup, BOOL bGroupDefaulted)
BOOL WINAPI GetSecurityDescriptorOwner(PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID *pOwner, LPBOOL lpbOwnerDefaulted)
#define SHCNF_FLUSHNOWAIT
STRSAFEAPI StringCchCopyA(STRSAFE_LPSTR pszDest, size_t cchDest, STRSAFE_LPCSTR pszSrc)
CRITICAL_SECTION rtlCritSec
struct _SPOOLER_HANDLE * PSPOOLER_HANDLE
#define SPOOLER_HANDLE_SIG
LONG WINAPI IntProtectHandle(HANDLE hSpooler, BOOL Close)
BOOL WINAPI DllFreeSplMem(PVOID pMem)
SECURITY_DESCRIPTOR * get_sd(SECURITY_DESCRIPTOR *sd, DWORD *size)
static int multi_sz_lenW(const WCHAR *str)
void(WINAPI * PPfpSHChangeNotify)(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2)
DWORD UnicodeToAnsiInPlace(PWSTR pwszField)
BOOL WINAPI IntUnprotectHandle(HANDLE hSpooler)
DWORD UnicodeToAnsiZZInPlace(PWSTR pwszzField)
PVOID WINAPI DllAllocSplMem(DWORD dwBytes)
BOOL WINAPI DllFreeSplStr(PWSTR pwszString)
PWSTR WINAPI AllocSplStr(PCWSTR pwszInput)
VOID UpdateTrayIcon(HANDLE hPrinter, DWORD JobId)
#define MAX_GETPRINTER_SIZE
DWORD WINAPI GetSecurityDescriptorLength(PSECURITY_DESCRIPTOR)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
WINBOOL WINAPI GetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter, DWORD cbBuf, LPDWORD pcbNeeded)
#define SECURITY_DESCRIPTOR_REVISION