2004-09-30 20:23:00 +00:00
|
|
|
/*
|
|
|
|
* ReactOS kernel
|
|
|
|
* Copyright (C) 2004 ReactOS Team
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*
|
2009-10-27 10:34:16 +00:00
|
|
|
* You should have received a copy of the GNU General Public License along
|
|
|
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
2004-09-30 20:23:00 +00:00
|
|
|
*/
|
2013-03-16 20:41:13 +00:00
|
|
|
/*
|
2004-01-09 19:52:01 +00:00
|
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
|
|
* PROJECT: ReactOS system libraries
|
2013-10-24 20:16:20 +00:00
|
|
|
* FILE: dll/win32/userenv/internal.h
|
2004-01-09 19:52:01 +00:00
|
|
|
* PURPOSE: internal stuff
|
|
|
|
* PROGRAMMER: Eric Kohl
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _INTERNAL_H
|
|
|
|
#define _INTERNAL_H
|
|
|
|
|
2004-03-13 20:49:07 +00:00
|
|
|
/* directory.c */
|
2004-01-15 14:59:06 +00:00
|
|
|
BOOL
|
2013-10-24 20:16:20 +00:00
|
|
|
CopyDirectory(LPCWSTR lpDestinationPath,
|
|
|
|
LPCWSTR lpSourcePath);
|
2004-01-13 12:34:09 +00:00
|
|
|
|
2004-05-07 11:18:53 +00:00
|
|
|
BOOL
|
2013-10-24 20:16:20 +00:00
|
|
|
CreateDirectoryPath(LPCWSTR lpPathName,
|
|
|
|
LPSECURITY_ATTRIBUTES lpSecurityAttributes);
|
2004-05-07 11:18:53 +00:00
|
|
|
|
|
|
|
BOOL
|
2013-10-24 20:16:20 +00:00
|
|
|
RemoveDirectoryPath(LPCWSTR lpPathName);
|
2004-05-07 11:18:53 +00:00
|
|
|
|
2004-03-13 20:49:07 +00:00
|
|
|
/* misc.c */
|
2004-07-11 22:35:07 +00:00
|
|
|
typedef struct _DYN_FUNCS
|
|
|
|
{
|
|
|
|
HMODULE hModule;
|
|
|
|
union
|
|
|
|
{
|
|
|
|
PVOID foo;
|
|
|
|
struct
|
|
|
|
{
|
2008-11-30 11:42:05 +00:00
|
|
|
HRESULT (WINAPI *CoInitialize)(LPVOID pvReserved);
|
|
|
|
HRESULT (WINAPI *CoCreateInstance)(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID riid, LPVOID * ppv);
|
|
|
|
HRESULT (WINAPI *CoUninitialize)(VOID);
|
2004-07-11 22:35:07 +00:00
|
|
|
};
|
|
|
|
} fn;
|
|
|
|
} DYN_FUNCS, *PDYN_FUNCS;
|
|
|
|
|
|
|
|
typedef struct _DYN_MODULE
|
|
|
|
{
|
|
|
|
LPWSTR Library; /* dll file name */
|
2004-07-12 10:33:04 +00:00
|
|
|
LPSTR Functions[]; /* function names */
|
2004-07-11 22:35:07 +00:00
|
|
|
} DYN_MODULE, *PDYN_MODULE;
|
|
|
|
|
|
|
|
extern DYN_MODULE DynOle32;
|
|
|
|
|
|
|
|
BOOL
|
2013-10-24 20:16:20 +00:00
|
|
|
LoadDynamicImports(PDYN_MODULE Module,
|
|
|
|
PDYN_FUNCS DynFuncs);
|
2004-07-11 22:35:07 +00:00
|
|
|
|
|
|
|
VOID
|
|
|
|
UnloadDynamicImports(PDYN_FUNCS DynFuncs);
|
|
|
|
|
2004-01-16 15:31:53 +00:00
|
|
|
LPWSTR
|
2013-10-24 20:16:20 +00:00
|
|
|
AppendBackslash(LPWSTR String);
|
2004-01-16 15:31:53 +00:00
|
|
|
|
2006-01-12 17:30:27 +00:00
|
|
|
PSECURITY_DESCRIPTOR
|
|
|
|
CreateDefaultSecurityDescriptor(VOID);
|
2006-01-11 22:40:31 +00:00
|
|
|
|
2004-03-13 20:49:07 +00:00
|
|
|
/* profile.c */
|
2004-01-16 15:31:53 +00:00
|
|
|
BOOL
|
2013-10-24 20:16:20 +00:00
|
|
|
AppendSystemPostfix(LPWSTR lpName,
|
|
|
|
DWORD dwMaxLength);
|
2004-01-16 15:31:53 +00:00
|
|
|
|
2004-03-13 20:49:07 +00:00
|
|
|
/* registry.c */
|
2004-01-16 15:31:53 +00:00
|
|
|
BOOL
|
2013-10-24 20:16:20 +00:00
|
|
|
CreateUserHive(LPCWSTR lpKeyName,
|
|
|
|
LPCWSTR lpProfilePath);
|
2004-10-03 09:27:22 +00:00
|
|
|
|
|
|
|
/* setup.c */
|
|
|
|
BOOL
|
|
|
|
UpdateUsersShellFolderSettings(LPCWSTR lpUserProfilePath,
|
2013-10-24 20:16:20 +00:00
|
|
|
HKEY hUserKey);
|
2004-01-16 15:31:53 +00:00
|
|
|
|
2016-07-31 13:46:23 +00:00
|
|
|
/* sid.c */
|
|
|
|
BOOL
|
|
|
|
GetUserSidStringFromToken(HANDLE hToken,
|
|
|
|
PUNICODE_STRING SidString);
|
|
|
|
|
2004-10-08 11:52:30 +00:00
|
|
|
/* userenv.c */
|
|
|
|
extern HINSTANCE hInstance;
|
|
|
|
|
2006-01-11 22:40:31 +00:00
|
|
|
/* gpolicy.c */
|
|
|
|
|
|
|
|
VOID
|
|
|
|
InitializeGPNotifications(VOID);
|
|
|
|
|
|
|
|
VOID
|
|
|
|
UninitializeGPNotifications(VOID);
|
|
|
|
|
2004-01-09 19:52:01 +00:00
|
|
|
#endif /* _INTERNAL_H */
|