71 ATLASSERT(
_T(
"statically linked in CRegObject is not a com object. Do not callthis function"));
77 ATLASSERT(
_T(
"statically linked in CRegObject is not a com object. Do not callthis function"));
83 ATLASSERT(
_T(
"statically linked in CRegObject is not a com object. Do not callthis function"));
199 wchar_t szBuffer[256];
210 dwSize =
sizeof(szBuffer) /
sizeof(szBuffer[0]);
216 dwSize =
sizeof(szBuffer) /
sizeof(szBuffer[0]);
248 buf->str[
buf->len] =
'\0';
281 regstrw[
len - 1] =
'\0';
327 regstrw[
len - 1] =
'\0';
358 if (
FAILED(hResult) && do_register)
384 iter =
wcschr(iter2,
'%');
396 for (rep_iter =
m_rep; rep_iter; rep_iter = rep_iter->
next)
439 if (*iter ==
'}' || *iter ==
'=')
445 else if (*iter ==
'\'')
448 iter =
wcschr(iter,
'\'');
476 if (
a >=
'0' &&
a <=
'9')
478 if (
a >=
'A' &&
a <=
'F')
480 if (
a >=
'a' &&
a <=
'f')
502 static const wchar_t *wstrNoRemove =
L"NoRemove";
503 static const wchar_t *wstrForceRemove =
L"ForceRemove";
504 static const wchar_t *wstrDelete =
L"Delete";
505 static const wchar_t *wstrval =
L"val";
516 while(
buf->str[1] ||
buf->str[0] !=
'}')
522 key_type = FORCE_REMOVE;
526 key_type = DO_DELETE;
537 if (key_type == IS_VAL)
544 else if (key_type == DO_DELETE)
550 if (key_type == FORCE_REMOVE)
560 else if (key_type != IS_VAL && key_type != DO_DELETE)
571 if (key_type != DO_DELETE && *iter ==
'=')
611 if ((
buf->str[0] ==
'0' &&
buf->str[1] ==
'x') || (
buf->str[0] ==
'&' &&
buf->str[1] ==
'H'))
629 if ((
count & 1) != 0)
632 for (curIndex = 0; curIndex <
count; curIndex++)
654 else if(key_type == IS_VAL)
660 if (key_type != IS_VAL && key_type != DO_DELETE && *iter ==
'{' &&
iswspace(iter[1]))
670 if (!do_register && (key_type ==
NORMAL || key_type == FORCE_REMOVE))
675 if (hkey && key_type != IS_VAL)
686 if (hkey && key_type != IS_VAL)
698 static const struct {
747 if (
buf.str[1] ||
buf.str[0] !=
'{')
HRESULT do_process_key(LPCOLESTR *pstr, HKEY parent_key, strbuf *buf, BOOL do_register)
#define HRESULT_FROM_WIN32(x)
struct ATL::CRegObject::rep_list_str rep_list
LONG RegDeleteTreeX(HKEY parentKey, LPCWSTR subKeyName)
return static_cast< int >(global)
#define HKEY_CURRENT_USER
REFIID LPVOID DWORD_PTR dw
GLuint GLuint GLsizei count
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryExW(LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags)
HRESULT STDMETHODCALLTYPE RegisterWithString(LPCOLESTR data, BOOL doRegister)
HRESULT do_process_root_key(LPCOLESTR data, BOOL do_register)
LONG WINAPI RegDeleteKeyW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey)
HRESULT STDMETHODCALLTYPE StringUnregister(LPCOLESTR data)
#define INVALID_HANDLE_VALUE
DWORD WINAPI GetLastError(VOID)
_Check_return_ long __cdecl wcstol(_In_z_ const wchar_t *_Str, _Out_opt_ _Deref_post_z_ wchar_t **_EndPtr, _In_ int _Radix)
_Check_return_ unsigned long __cdecl wcstoul(_In_z_ const wchar_t *_Str, _Out_opt_ _Deref_post_z_ wchar_t **_EndPtr, _In_ int _Radix)
HRESULT STDMETHODCALLTYPE RegisterWithFile(LPCOLESTR fileName, BOOL doRegister)
#define HKEY_CURRENT_CONFIG
HRSRC WINAPI FindResourceW(HINSTANCE hModule, LPCWSTR name, LPCWSTR type)
HRESULT STDMETHODCALLTYPE RegisterWithResource(LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType, BOOL doRegister)
HRESULT AddReplacement([in] LPCOLESTR Key, [in] LPCOLESTR item)
int WINAPI lstrcmpiW(LPCWSTR lpString1, LPCWSTR lpString2)
HRESULT string_register(LPCOLESTR data, BOOL do_register)
GLenum GLuint GLenum GLsizei const GLchar * buf
LONG WINAPI RegCloseKey(HKEY hKey)
unsigned int HexToBin(OLECHAR a)
HRESULT STDMETHODCALLTYPE ClearReplacements()
HRESULT STDMETHODCALLTYPE ResourceRegisterSz(LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType)
LONG WINAPI RegOpenKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
_Check_return_ _CRTIMP int __cdecl _memicmp(_In_reads_bytes_opt_(_Size) const void *_Buf1, _In_reads_bytes_opt_(_Size) const void *_Buf2, _In_ size_t _Size)
HGLOBAL WINAPI LoadResource(HINSTANCE hModule, HRSRC hRsrc)
HRESULT do_preprocess(LPCOLESTR data, strbuf *buf)
HRESULT strbuf_write(LPCOLESTR str, strbuf *buf, int len)
LONG WINAPI RegSetValueExW(_In_ HKEY hKey, _In_ LPCWSTR lpValueName, _In_ DWORD Reserved, _In_ DWORD dwType, _In_ CONST BYTE *lpData, _In_ DWORD cbData)
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
static const struct @320 root_keys[]
_CONST_RETURN wchar_t *__cdecl wcschr(_In_z_ const wchar_t *_Str, wchar_t _Ch)
HRESULT get_word(LPCOLESTR *str, strbuf *buf)
HRESULT STDMETHODCALLTYPE ResourceUnregisterSz(LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType)
#define FILE_ATTRIBUTE_READONLY
#define STDMETHODCALLTYPE
DWORD WINAPI GetFileSize(HANDLE hFile, LPDWORD lpFileSizeHigh)
typedef void(__stdcall _ATL_TERMFUNC)(DWORD_PTR dw)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
HRESULT STDMETHODCALLTYPE QueryInterface(const IID &, void **)
#define memcpy(s1, s2, n)
LONG WINAPI RegCreateKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
HRESULT STDMETHODCALLTYPE ResourceUnregister(LPCOLESTR resFileName, UINT nID, LPCOLESTR szType)
ULONG STDMETHODCALLTYPE AddRef()
HRESULT STDMETHODCALLTYPE AddReplacement(LPCOLESTR key, LPCOLESTR item)
#define LOAD_LIBRARY_AS_DATAFILE
struct rep_list_str * next
HRESULT resource_register(LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType, BOOL do_register)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HRESULT STDMETHODCALLTYPE FileRegister(LPCOLESTR fileName)
HRESULT STDMETHODCALLTYPE StringRegister(LPCOLESTR data)
#define ReadFile(a, b, c, d, e)
DWORD WINAPI SizeofResource(HINSTANCE hModule, HRSRC hRsrc)
#define MultiByteToWideChar
HRESULT STDMETHODCALLTYPE ResourceRegister(LPCOLESTR resFileName, UINT nID, LPCOLESTR szType)
static DWORD LPDWORD reslen
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
HRESULT strbuf_init(strbuf *buf)
ULONG STDMETHODCALLTYPE Release()
HRESULT STDMETHODCALLTYPE FileUnregister(LPCOLESTR fileName)
#define HKEY_CLASSES_ROOT
#define MAKEINTRESOURCEW(i)
LONG WINAPI RegEnumKeyExW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_ LPWSTR lpName, _Inout_ LPDWORD lpcbName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPWSTR lpClass, _Inout_opt_ LPDWORD lpcbClass, _Out_opt_ PFILETIME lpftLastWriteTime)
#define HKEY_PERFORMANCE_DATA
HRESULT ClearReplacements()
GLboolean GLboolean GLboolean GLboolean a
HRESULT file_register(LPCOLESTR fileName, BOOL do_register)
#define HeapFree(x, y, z)
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static const WCHAR szType[]
#define HKEY_LOCAL_MACHINE
GLuint const GLchar * name