|
|
/*
* shlvalid.c - Shell validation functions module. */
/* Headers
**********/
#include "project.h"
#pragma hdrstop
#include "olestock.h"
#include "olevalid.h"
#include "shlstock.h"
#include "shlvalid.h"
#ifdef DEBUG
/****************************** Public Functions *****************************/
PUBLIC_CODE BOOL IsValidPCIExtractIcon(PCIExtractIcon pciei) { return(IS_VALID_READ_PTR(pciei, CIExtractIcon) && IS_VALID_INTERFACE_PTR((PCIUnknown)pciei, IUnknown) && IS_VALID_METHOD(pciei, GetIconLocation) && IS_VALID_METHOD(pciei, Extract)); }
PUBLIC_CODE BOOL IsValidPCINewShortcutHook(PCINewShortcutHook pcinshhk) { return(IS_VALID_READ_PTR(pcinshhk, CINewShortcutHook) && IS_VALID_INTERFACE_PTR((PCIUnknown)pcinshhk, IUnknown) && IS_VALID_METHOD(pcinshhk, SetReferent) && IS_VALID_METHOD(pcinshhk, GetReferent) && IS_VALID_METHOD(pcinshhk, SetFolder) && IS_VALID_METHOD(pcinshhk, GetFolder) && IS_VALID_METHOD(pcinshhk, GetName) && IS_VALID_METHOD(pcinshhk, GetExtension)); }
PUBLIC_CODE BOOL IsValidPCIShellExecuteHook(PCIShellExecuteHook pciseh) { return(IS_VALID_READ_PTR(pciseh, CIShellExecuteHook) && IS_VALID_INTERFACE_PTR((PCIUnknown)pciseh, IUnknown) && IS_VALID_METHOD(pciseh, Execute)); }
PUBLIC_CODE BOOL IsValidPCIShellExtInit(PCIShellExtInit pcisei) { return(IS_VALID_READ_PTR(pcisei, CIShellExtInit) && IS_VALID_INTERFACE_PTR((PCIUnknown)pcisei, IUnknown) && IS_VALID_METHOD(pcisei, Initialize)); }
PUBLIC_CODE BOOL IsValidPCIShellLink(PCIShellLink pcisl) { return(IS_VALID_READ_PTR(pcisl, CIShellLink) && IS_VALID_READ_PTR(pcisl->lpVtbl, sizeof(*(pcisl->lpVtbl))) && IS_VALID_INTERFACE_PTR((PCIUnknown)pcisl, IUnknown) && IS_VALID_METHOD(pcisl, SetPath) && IS_VALID_METHOD(pcisl, GetPath) && IS_VALID_METHOD(pcisl, SetRelativePath) && IS_VALID_METHOD(pcisl, SetIDList) && IS_VALID_METHOD(pcisl, GetIDList) && IS_VALID_METHOD(pcisl, SetDescription) && IS_VALID_METHOD(pcisl, GetDescription) && IS_VALID_METHOD(pcisl, SetArguments) && IS_VALID_METHOD(pcisl, GetArguments) && IS_VALID_METHOD(pcisl, SetWorkingDirectory) && IS_VALID_METHOD(pcisl, GetWorkingDirectory) && IS_VALID_METHOD(pcisl, SetHotkey) && IS_VALID_METHOD(pcisl, GetHotkey) && IS_VALID_METHOD(pcisl, SetShowCmd) && IS_VALID_METHOD(pcisl, GetShowCmd) && IS_VALID_METHOD(pcisl, SetIconLocation) && IS_VALID_METHOD(pcisl, GetIconLocation) && IS_VALID_METHOD(pcisl, Resolve)); }
PUBLIC_CODE BOOL IsValidPCIShellPropSheetExt(PCIShellPropSheetExt pcispse) { return(IS_VALID_READ_PTR(pcispse, CIShellPropSheetExt) && IS_VALID_INTERFACE_PTR((PCIUnknown)pcispse, IUnknown) && IS_VALID_METHOD(pcispse, AddPages) && IS_VALID_METHOD(pcispse, ReplacePage)); }
PUBLIC_CODE BOOL IsValidPCITEMIDLIST(PCITEMIDLIST pcidl) { /* FEATURE: Fill me in. */
return(IS_VALID_READ_PTR(pcidl, CITEMIDLIST)); }
PUBLIC_CODE BOOL IsValidPCPROPSHEETPAGE(PCPROPSHEETPAGE pcpsp) { /* FEATURE: Fill me in. */
return(IS_VALID_READ_PTR(pcpsp, CPROPSHEETPAGE)); }
PUBLIC_CODE BOOL IsValidPCSHELLEXECUTEINFO(PCSHELLEXECUTEINFO pcei) { /* hInstApp may be any value. */ /* dwHotKey may be any value. */
return(IS_VALID_READ_PTR(pcei, CSHELLEXECUTEINFO) && pcei->cbSize >= sizeof(*pcei) && FLAGS_ARE_VALID(pcei->fMask, SEE_MASK_VALID) && (! pcei->hwnd || IS_VALID_HANDLE(pcei->hwnd, WND)) && (! pcei->lpVerb || IS_VALID_STRING_PTR(pcei->lpVerb, CSTR)) && (! pcei->lpFile || IS_VALID_STRING_PTR(pcei->lpFile, CSTR)) && (! pcei->lpParameters || IS_VALID_STRING_PTR(pcei->lpParameters, CSTR)) && (! pcei->lpDirectory || IS_VALID_STRING_PTR(pcei->lpDirectory, CSTR)) && EVAL(IsValidShowCmd(pcei->nShow)) && (IS_FLAG_CLEAR(pcei->fMask, SEE_MASK_IDLIST) || IS_VALID_STRUCT_PTR(pcei->lpIDList, CITEMIDLIST)) && ((pcei->fMask & SEE_MASK_CLASSKEY) == SEE_MASK_CLASSKEY || IS_FLAG_CLEAR(pcei->fMask, SEE_MASK_CLASSNAME) || IS_VALID_STRING_PTR(pcei->lpClass, CSTR)) && (IS_FLAG_CLEAR(pcei->fMask, SEE_MASK_CLASSKEY) || IS_VALID_HANDLE(pcei->hkeyClass, KEY)) && (! pcei->hIcon || IS_VALID_HANDLE(pcei->hIcon, ICON)) && (! pcei->hProcess || IS_VALID_HANDLE(pcei->hProcess, PROCESS))); }
#endif /* DEBUG */
|