implemented CreateActCtxA, FindActCtxSectionStringA Modified: trunk/reactos/lib/kernel32/kernel32.xml Added: trunk/reactos/lib/kernel32/misc/ActCtx.c Modified: trunk/reactos/lib/kernel32/misc/stubs.c _____
Modified: trunk/reactos/lib/kernel32/kernel32.xml --- trunk/reactos/lib/kernel32/kernel32.xml 2005-11-21 20:59:32 UTC (rev 19423) +++ trunk/reactos/lib/kernel32/kernel32.xml 2005-11-21 21:09:30 UTC (rev 19424) @@ -52,6 +52,7 @@
<file>virtual.c</file> </directory> <directory name="misc"> + <file>actctx.c</file> <file>atom.c</file> <file>chartype.c</file> <file>comm.c</file> _____
Added: trunk/reactos/lib/kernel32/misc/ActCtx.c --- trunk/reactos/lib/kernel32/misc/ActCtx.c 2005-11-21 20:59:32 UTC (rev 19423) +++ trunk/reactos/lib/kernel32/misc/ActCtx.c 2005-11-21 21:09:30 UTC (rev 19424) @@ -0,0 +1,96 @@
+#include <k32.h> + +#define NDEBUG +#include "../include/debug.h" + +/* + * @implemented + */ +BOOL +STDCALL +FindActCtxSectionStringA( + DWORD dwFlags, + const GUID *lpExtensionGuid, + ULONG ulSectionId, + LPCSTR lpStringToFind, + PACTCTX_SECTION_KEYED_DATA ReturnedData + ) +{ + BOOL bRetVal; + LPWSTR lpStringToFindW; + + /* Convert lpStringToFind */ + if (lpStringToFind) + { + BasepAnsiStringToHeapUnicodeString(lpStringToFind, + (LPWSTR*) &lpStringToFindW); + } + + /* Call the Unicode function */ + bRetVal = FindActCtxSectionStringA(dwFlags, + lpExtensionGuid, + ulSectionId, + lpStringToFind, + ReturnedData); + + /* Clean up */ + RtlFreeHeap(GetProcessHeap(), 0, (LPWSTR*) lpStringToFindW); + + return bRetVal; +} + + +/* + * @implemented + */ +HANDLE +STDCALL +CreateActCtxA( + PCACTCTXA pActCtx + ) +{ + ACTCTXW pActCtxW; + HANDLE hRetVal; + + ZeroMemory(&pActCtxW, sizeof(pActCtxW)); + pActCtxW.cbSize = sizeof(pActCtxW); + pActCtxW.dwFlags = pActCtx->dwFlags; + pActCtxW.wProcessorArchitecture = pActCtx->wProcessorArchitecture; + pActCtxW.dwFlags = pActCtx->wProcessorArchitecture; + + pActCtxW.hModule = pActCtx->hModule; + + /* Convert ActCtx Strings */ + if (pActCtx->lpAssemblyDirectory) + { + BasepAnsiStringToHeapUnicodeString(pActCtx->lpSource, + (LPWSTR*) &pActCtxW.lpSource); + } + + if (pActCtx->lpAssemblyDirectory) + { + BasepAnsiStringToHeapUnicodeString(pActCtx->lpAssemblyDirectory, + (LPWSTR*) &pActCtxW.lpAssemblyDirectory); + } + if (pActCtx->lpResourceName) + { + BasepAnsiStringToHeapUnicodeString(pActCtx->lpResourceName, + (LPWSTR*) &pActCtxW.lpResourceName); + } + if (pActCtx->lpApplicationName) + { + BasepAnsiStringToHeapUnicodeString(pActCtx->lpApplicationName, + (LPWSTR*) &pActCtxW.lpApplicationName); + } + + /* Call the Unicode function */ + hRetVal = CreateActCtxW(&pActCtxW); + + /* Clean up */ + RtlFreeHeap(GetProcessHeap(), 0, (LPWSTR*) pActCtxW.lpSource); + RtlFreeHeap(GetProcessHeap(), 0, (LPWSTR*) pActCtxW.lpAssemblyDirectory); + RtlFreeHeap(GetProcessHeap(), 0, (LPWSTR*) pActCtxW.lpResourceName); + RtlFreeHeap(GetProcessHeap(), 0, (LPWSTR*) pActCtxW.lpApplicationName); + + return hRetVal; +} Property changes on: trunk/reactos/lib/kernel32/misc/ActCtx.c ___________________________________________________________________ Name: svn:eol-style + native _____
Modified: trunk/reactos/lib/kernel32/misc/stubs.c --- trunk/reactos/lib/kernel32/misc/stubs.c 2005-11-21 20:59:32 UTC (rev 19423) +++ trunk/reactos/lib/kernel32/misc/stubs.c 2005-11-21 21:09:30 UTC (rev 19424) @@ -453,31 +453,17 @@
return 0; }
- /* * @unimplemented */ HANDLE STDCALL -CreateActCtxA( - PCACTCTXA pActCtx - ) -{ - STUB; - return 0; -} - -/* - * @unimplemented - */ -HANDLE -STDCALL CreateActCtxW( PCACTCTXW pActCtx ) { STUB; - return 0; + return INVALID_HANDLE_VALUE; }
/* @@ -1050,7 +1036,7 @@ ) { STUB; - return 0; + return FALSE; }
/* @@ -1270,23 +1256,6 @@ /* * @unimplemented */ -BOOL -STDCALL -FindActCtxSectionStringA( - DWORD dwFlags, - const GUID *lpExtensionGuid, - ULONG ulSectionId, - LPCSTR lpStringToFind, - PACTCTX_SECTION_KEYED_DATA ReturnedData - ) -{ - STUB; - return 0; -} - -/* - * @unimplemented - */ HANDLE STDCALL FindFirstVolumeA(