Click here to Skip to main content
15,917,618 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
QuestionNeed Help in writing a Windows device driver Pin
C++myLife11-Nov-16 1:37
C++myLife11-Nov-16 1:37 
AnswerRe: Need Help in writing a Windows device driver Pin
Jochen Arndt11-Nov-16 2:17
professionalJochen Arndt11-Nov-16 2:17 
AnswerRe: Need Help in writing a Windows device driver Pin
Eddy Vluggen11-Nov-16 2:34
professionalEddy Vluggen11-Nov-16 2:34 
GeneralRe: Need Help in writing a Windows device driver Pin
C++myLife14-Nov-16 0:23
C++myLife14-Nov-16 0:23 
GeneralRe: Need Help in writing a Windows device driver Pin
Eddy Vluggen14-Nov-16 3:49
professionalEddy Vluggen14-Nov-16 3:49 
QuestionGaneric Class Define Pin
bestbear10-Nov-16 18:27
bestbear10-Nov-16 18:27 
AnswerRe: Ganeric Class Define Pin
leon de boer10-Nov-16 19:04
leon de boer10-Nov-16 19:04 
GeneralRe: Ganeric Class Define Pin
bestbear10-Nov-16 19:10
bestbear10-Nov-16 19:10 
GeneralRe: Ganeric Class Define Pin
leon de boer10-Nov-16 19:31
leon de boer10-Nov-16 19:31 
AnswerRe: Ganeric Class Define Pin
Stefan_Lang1-Dec-16 3:55
Stefan_Lang1-Dec-16 3:55 
QuestionSave the image from window buffer Pin
Onic77710-Nov-16 4:26
Onic77710-Nov-16 4:26 
AnswerRe: Save the image from window buffer Pin
leon de boer10-Nov-16 16:10
leon de boer10-Nov-16 16:10 
QuestionERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
ForNow10-Nov-16 2:41
ForNow10-Nov-16 2:41 
AnswerRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
Chris Losinger10-Nov-16 3:07
professionalChris Losinger10-Nov-16 3:07 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
ForNow10-Nov-16 3:29
ForNow10-Nov-16 3:29 
AnswerRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
Randor 10-Nov-16 4:32
professional Randor 10-Nov-16 4:32 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
ForNow10-Nov-16 4:40
ForNow10-Nov-16 4:40 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
Richard MacCutchan10-Nov-16 4:50
mveRichard MacCutchan10-Nov-16 4:50 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
ForNow10-Nov-16 5:02
ForNow10-Nov-16 5:02 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
leon de boer10-Nov-16 8:25
leon de boer10-Nov-16 8:25 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
ForNow10-Nov-16 8:50
ForNow10-Nov-16 8:50 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
Randor 10-Nov-16 5:06
professional Randor 10-Nov-16 5:06 
ForNow wrote:
It's the handle I guess the next step is to go to disassembly mode and see


Since you are such an expert at x86/x64 assembler perhaps you should utilize WinDbg:

Common WinDBG Commands Reference[^]

!handle	displays information about a handle or handles that one or all processes in the target system own.


0:000> !handle c0dedbad f
Handle 38
 Type Mutant
 Attributes 0
 GrantedAccess 0x1f0001:
 Delete,ReadControl,WriteDac,WriteOwner,Synch
 QueryState
 HandleCount 1
 PointerCount 96605
 Name <none>
 Object Specific Information
 Mutex is Owned
 Mutant Owner 11bc.1418


Here are some other ideas in case you don't know how to use WinDbg:

C++
//Windows 8.1 and below:
BOOL IsValidHandle(HANDLE h)
{
	DWORD dwFlags = 0;
	return GetHandleInformation(h,&dwFlags);
}


C++
//Windows 10 and above:
BOOL IsValidHandle(HANDLE h)
{
	return CompareObjectHandles(h,h);
}



use it like this to debug your code:

C++
if (IsValidHandle(h))
{
	DWORD dwResult = ::WaitForSingleObject(h, INFINITE);
	DWORD dwError = GetLastError();
}


Best Wishes,
-David Delaune
AnswerRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
Albert Holguin10-Nov-16 7:32
professionalAlbert Holguin10-Nov-16 7:32 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
ForNow10-Nov-16 7:50
ForNow10-Nov-16 7:50 
GeneralRe: ERROR_INVALID_HANDLE returned From WaitForSingleObject after CreateMutex Pin
Albert Holguin10-Nov-16 7:58
professionalAlbert Holguin10-Nov-16 7:58 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.