https://git.reactos.org/?p=reactos.git;a=commitdiff;h=af7defb5566c715a6a0a63...
commit af7defb5566c715a6a0a63835e79cd4a31fd6965 Author: Katayama Hirofumi MZ katayama.hirofumi.mz@gmail.com AuthorDate: Sun Nov 26 21:30:00 2023 +0900 Commit: Katayama Hirofumi MZ katayama.hirofumi.mz@gmail.com CommitDate: Sun Nov 26 21:30:00 2023 +0900
[KERNEL32] Implement SetComPlusPackageInstallStatus --- dll/win32/kernel32/client/appcache.c | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-)
diff --git a/dll/win32/kernel32/client/appcache.c b/dll/win32/kernel32/client/appcache.c index 81ffaefc3b8..0b2ebec1afe 100644 --- a/dll/win32/kernel32/client/appcache.c +++ b/dll/win32/kernel32/client/appcache.c @@ -415,14 +415,32 @@ GetComPlusPackageInstallStatus(VOID) }
/* - * @unimplemented + * @implemented */ BOOL WINAPI -SetComPlusPackageInstallStatus(LPVOID lpInfo) +SetComPlusPackageInstallStatus(IN ULONG ComPlusPackage) { - STUB; - return FALSE; + NTSTATUS Status; + + DPRINT("(0x%X)\n", ComPlusPackage); + + if (ComPlusPackage & ~1) + { + DPRINT1("0x%lX\n", ComPlusPackage); + BaseSetLastNTError(STATUS_INVALID_PARAMETER); + return FALSE; + } + + Status = NtSetSystemInformation(SystemComPlusPackage, &ComPlusPackage, sizeof(ComPlusPackage)); + if (!NT_SUCCESS(Status)) + { + DPRINT1("0x%lX\n", Status); + BaseSetLastNTError(Status); + return FALSE; + } + + return TRUE; }
/*