wdm

WDM returns privilege error for WMI request

My application attempts to update data in my NDIS IM driver using the usual WMI Put/PutInstance calls. The PutInstance returns error WBEM_E_FAILED. The wmiprov.log shows the following: WDM call returned error: 1314 WDM specific return code: 1314 This error translates to "A required privilege is not held by the client." My applicatio...

DDK/WDM developing problem ... driver won't load on x64 windows platform

Hi there! I am a beginner at DDK/WDM driver developing field. I have a task which involves porting a virtual device driver from x86 to x64 (intel). I got the source code, I modified it a bit and compiled it succesfuly with DDK (build environments). But when I tried to load it on a ia64 Windows7 machine it didn't want to load. Then I tri...

How to set system time in a Windows WDM driver?

We are developing a GPS time sychronization hardware device. And we want write a Windows WDM driver for the device. To avoid the user level latency, we'd like set windows( XP/Vista/7) system time in the kernel driver level. Does anyone know how to achive that? Thanks Xu Jun ...

Driver proxy to avoid repeated code signing on Windows

Drivers on Windows should be signed and submitted to Microsoft for code signing and this is a requirement for 64 bit systems. The problem is that, when you have to update the driver, you have to submit it again, once for every release. Is possible to build some kind of proxy or shim driver so that I have to sign and submit it only once,...

Virtual drivers with Windows Driver Model - where to begin?

I've never written drivers before but I'm starting an open-source project that involves creating virtual MIDI ports that will send the MIDI data over a network. For this, I presume I would be creating some sort of virtual driver using WDM (unless it's possible with kernel hooks?) - but being a beginner to driver development I don't know...

How does a Windows Kernel mode Driver, access paged memory ?

1) A usermode process has its own "address context", which maps the user-mode virtual addresses to a unique collection of physical page frames. That is, the meaning of any particular virtual address changes from one moment to the next as the Windows XP scheduler switches threads. Part of work of "switching threads" is to change the page...

Two Spinlocks on same processor ?

Can two CPUs hold two "different" spin locks simultaneously at same time? So...does this mean: a sigle(uniprocessor) CPU cannot hold two "different" spinlocks at the same time? So...does this mean: the number of spinlocks on a single CPU cannot be > 1. PS:"different" implying spinlock associated with different memory resources. Doe...

Get DOS name from NT/Device Name

hi, i want to convert device path to dos path.. actually I want to get process name by process id,so i am using this code... PsLookupProcessByProcessId(processId,&pEProcess); ObOpenObjectByPointer(pEProcess, OBJ_KERNEL_HANDLE, NULL, 0, NULL, KernelMode, &hProcess); ObDereferenceObject (pEProcess); nts = ZwQueryInformationProcess (hProce...

DDK/WDM import wink32.lib into driver

Hi everyone! Recently I was trying to use W32pServiceTable in my driver. I did imported wink32.lib in SOURCES: TARGETNAME=exp TARGETTYPE=DRIVER TARGETLIB=$(DDK_LIB_PATH)\win32k.lib SOURCES=Experimental.cpp MSC_WARNING_LEVEL=/W3 And I declare in source file: extern PDWORD W32pServiceTable; But I am getting symbol unresolved. I read...