CreateRemoteThread() API is not working on Vista
-
I have a service(S_SRV) running under system account. I want service(S_SRV) to post a message to another exe(U_EXE) running on the same machine under user account. I have to find the WindowHandle of (U_EXE). I have found ProcessHandle(hProcess) and ProcessID of U_EXE and set the other required data and used the following API for remote processing. **::CreateRemoteThread(hProcess, NULL, 0,(LPTHREAD_START_ROUTINE) pLoadLib , pLibName, 0, NULL);**before that i had already allocate and write to memory in remote process(hProcess)using VirtualAllocEx and WriteProcessMemory(..) Everything is working fine except CreateRemoteThread(..) API on Vista . GetLastError() API return error code (8) "Not enough storage is available to process this command. " And It is only Vista Specific problem on all Other OSs it is working fine. please let me know if anybody has an idea Naveen
-
I have a service(S_SRV) running under system account. I want service(S_SRV) to post a message to another exe(U_EXE) running on the same machine under user account. I have to find the WindowHandle of (U_EXE). I have found ProcessHandle(hProcess) and ProcessID of U_EXE and set the other required data and used the following API for remote processing. **::CreateRemoteThread(hProcess, NULL, 0,(LPTHREAD_START_ROUTINE) pLoadLib , pLibName, 0, NULL);**before that i had already allocate and write to memory in remote process(hProcess)using VirtualAllocEx and WriteProcessMemory(..) Everything is working fine except CreateRemoteThread(..) API on Vista . GetLastError() API return error code (8) "Not enough storage is available to process this command. " And It is only Vista Specific problem on all Other OSs it is working fine. please let me know if anybody has an idea Naveen
Services are isolated in session 0 in Vista, while the interactive user's processes are in other sessions. This may be the cause of the error.
--Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | PimpFish | CP SearchBar v3.0 | C++ Forum FAQ Ford, what's this fish doing in my ear?
-
Services are isolated in session 0 in Vista, while the interactive user's processes are in other sessions. This may be the cause of the error.
--Mike-- Visual C++ MVP :cool: LINKS~! Ericahist | PimpFish | CP SearchBar v3.0 | C++ Forum FAQ Ford, what's this fish doing in my ear?
-
I have a service(S_SRV) running under system account. I want service(S_SRV) to post a message to another exe(U_EXE) running on the same machine under user account. I have to find the WindowHandle of (U_EXE). I have found ProcessHandle(hProcess) and ProcessID of U_EXE and set the other required data and used the following API for remote processing. **::CreateRemoteThread(hProcess, NULL, 0,(LPTHREAD_START_ROUTINE) pLoadLib , pLibName, 0, NULL);**before that i had already allocate and write to memory in remote process(hProcess)using VirtualAllocEx and WriteProcessMemory(..) Everything is working fine except CreateRemoteThread(..) API on Vista . GetLastError() API return error code (8) "Not enough storage is available to process this command. " And It is only Vista Specific problem on all Other OSs it is working fine. please let me know if anybody has an idea Naveen
There are significant kernel enhancements. Check out http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/kernel-en.doc[^]
Vasudevan Deepak Kumar Personal Homepage Tech Gossips