Discover how to develop a simple file system filter driver. The demo driver will print the names of opening files to debug output. The article requires basic windows driver and C/C++ knowledge. However it may be interesting to the people without windows driver experience.
Latest Device Driver Development Articles
Dynamic Enumeration Made Simpler in WDF
Discover WDF DDIs provided for dynamic enumeration.
DOS Info Block: A Definitive Guide
Tons of information about DOS registers and their functions.
System Call Optimization with the SYSENTER Instruction
Windows NT calls system services by using an "int 2e" software interrupt. The "int 2e" instruction uses both an interrupt gate and a code segment descriptor to find the interrupt service routine (KiSystemService) which services the "int 2e" software interrupt. Since the CPU will have to load one interrupt gate and one segment descriptor from memory in order to know what interrupt service routine to call, significant overhead is involved in making an "int 2e" system call. The SYSENTER instruction drastically reduces this overhead.
How Do Windows NT System Calls REALLY Work?
Learn about the exact mechanism that Windows NT uses when switching to kernel mode to execute a system service. The description is for an x86-compatible CPU running in protected mode. Other platforms supported by Windows NT will have a similar mechanism for switching to kernel mode.
RAMDISK Version 1.0 for Windows 2000/Windows XP
This code and sample are for a RAM disk driver (RAMDisk.sys), an Installer/Property sheet provider (RAMDisk.dll), and an installation file (RAMDisk.inf), which together form an installable RAM disk on Windows 2000 and Windows XP.
Latest Developer Videos
More...Latest CodeGuru Developer Columns
MFC Integration with the Windows Transactional File System (TxF)
The Transactional File System (TxF), which allows access to an NTFS file system to be conducted in a transacted manner through extensions to the Windows SDK API. MFC 10, has been extended to support TxF and related technologies. This support allows existing MFC applications to be easily extended to support kernel transactions.

Finger Printing is the New Tracking Cookie
Recently one way that developers have been looking to address the cookie abuse problem is via a method known as fingerprinting. Peter Shaw shows you how to generate a fingerprint in C# for use in your own projects.

Introduction to Threading and VB.NET
Hannes du Preez demonstrates how easy it is to work with threads in your VB.NET applications.
How to Create MapReduce Jobs for Hadoop Using C#
This article introduces you to Big Data, Apache Hadoop and MapReduce jobs. We will also learn how to create MapReduce jobs using C#.