Nice article from Codeguru site. It explains how to hide an EXE (file and process) in NTFS. Also a Spy-safe password edit control.
CodeGuru: Keyboard Spy: Implementation and Counter Measures
7/18/2005
A Tour of the Win32 Portable Executable File Format
Here are some articles I found regarding PE file format. This knowledge can be useful in API hooking when we need to modify the import address table.
Article here.
Inside Windows: An In-Depth Look into the Win32 Portable Executable File Format- Part 1
Inside Windows: An In-Depth Look into the Win32 Portable Executable File Format, Part 2
This is a great web site. Windows programming in Assembly!!! Look for PE view tool.
WJR Programming Etc.
Article here.
Inside Windows: An In-Depth Look into the Win32 Portable Executable File Format- Part 1
Inside Windows: An In-Depth Look into the Win32 Portable Executable File Format, Part 2
This is a great web site. Windows programming in Assembly!!! Look for PE view tool.
WJR Programming Etc.
7/10/2005
Auto Testing Browser Control Applications
I always wondered how to send messages to UI elements inside a Browser control.
Article
Article
7/09/2005
7/07/2005
Setting a Thread Name (Unmanaged)
Cool article from Microsoft site.
Setting a Thread Name (Unmanaged)
Setting a Thread Name (Unmanaged)
7/06/2005
Difference between Mutex and Semaphore
This seems to pop up every now and then during interviews. So here is a nice Power Point presentation on the topic.
Link here
Just to confuse you, here are more description:A user-mode semaphore gates access to resources, allowing some maximum number of threads, as specified when the semaphore object was created, to access the resources protected by the semaphore.
Each user-mode semaphore also has an associated current count, representing how many additional threads can acquire the semaphore. When the current count is zero, a thread attempting to acquire the semaphore waits until the count is incremented when another thread releases that semaphore. Every user-mode semaphore object is implemented through the use of a kernel-mode semaphore object.
A kernel-mode semaphore is an instance of a kernel-defined dispatcher object type.
Any semaphore object has either of two uses:
A counting semaphore gates access to a resource by allowing some number of threads up to a specified limit to access the resource while the semaphore is set to the Signaled state (semaphore count is nonzero).
A binary semaphore gates access to a single resource, if and only if the limit is set to one and it is not possible for the semaphore to be over-Signaled (set to the Signaled state when it is already in the Signaled state). A binary semaphore gates exclusive access to a resource.
However, using a semaphore with a limit of one to gate access is not the same thing as using a mutex: semaphores have no ownership, deadlocks are possible, and the owner's priority is unaffected.
Link here
Just to confuse you, here are more description:A user-mode semaphore gates access to resources, allowing some maximum number of threads, as specified when the semaphore object was created, to access the resources protected by the semaphore.
Each user-mode semaphore also has an associated current count, representing how many additional threads can acquire the semaphore. When the current count is zero, a thread attempting to acquire the semaphore waits until the count is incremented when another thread releases that semaphore. Every user-mode semaphore object is implemented through the use of a kernel-mode semaphore object.
A kernel-mode semaphore is an instance of a kernel-defined dispatcher object type.
Any semaphore object has either of two uses:
A counting semaphore gates access to a resource by allowing some number of threads up to a specified limit to access the resource while the semaphore is set to the Signaled state (semaphore count is nonzero).
A binary semaphore gates access to a single resource, if and only if the limit is set to one and it is not possible for the semaphore to be over-Signaled (set to the Signaled state when it is already in the Signaled state). A binary semaphore gates exclusive access to a resource.
However, using a semaphore with a limit of one to gate access is not the same thing as using a mutex: semaphores have no ownership, deadlocks are possible, and the owner's priority is unaffected.
7/05/2005
7/01/2005
Design Patterns
I got frustrated being asked about different design patterns so here is web site explaining this subject.
Design Patterns
Design Patterns
Subscribe to:
Posts (Atom)
Useful netsh commands
To see blocked ports on your system: netsh interface ipv4 show excludedportrange protocol=tcp For more info visit: https://ardalis.com/atte...