Click here to Skip to main content
15,886,110 members
Everything / Driver

Driver

driver

Great Reads

by Nagaraj Krishnamurthy
This article goes into the details of how to write a Linux Device Driver for a pseudo Ethernet device simulated on a Qemu platform.
by Alexander Eremeev
The Windows kernel-hacking library and development framework written on C++17
by udhaya2code
While using Microsoft Text Driver to read CSV data to DataSet in C# in your 64 bit machine
by grilialex
COFILOS SD Card Driver

Latest Articles

by honey the codewitch
Explore the inner workings of a highly capable IoT display driver for the ESP32
by Apriorit Inc, Artem K.
A clear overview on how you can establish communication between a device and its driver
by Apriorit Inc, Sergii Kusii
And its modules during runtime
by Apriorit Inc, ruksovdev
A detailed description of an FPGA-specific framework called ISE Design Suite, and the main steps you need to take in order to create a VGA driver using FPGA

All Articles

Sort by Score

Driver 

1 Apr 2016 by Nagaraj Krishnamurthy
This article goes into the details of how to write a Linux Device Driver for a pseudo Ethernet device simulated on a Qemu platform.
1 Nov 2018 by Alexander Eremeev
The Windows kernel-hacking library and development framework written on C++17
4 Feb 2012 by udhaya2code
While using Microsoft Text Driver to read CSV data to DataSet in C# in your 64 bit machine
4 Apr 2017 by grilialex
COFILOS SD Card Driver
18 Feb 2019 by Apriorit Inc, ruksovdev
A detailed description of an FPGA-specific framework called ISE Design Suite, and the main steps you need to take in order to create a VGA driver using FPGA
4 Mar 2019 by Apriorit Inc, Artem K.
A clear overview on how you can establish communication between a device and its driver
9 Apr 2012 by nv3
Difficult to answer without knowing what level of access your users have. If a user has administrator right there is in my opinion no way of totally hiding a file from him. That would be counter-productive, because as an administrator I am expected to have access to all files on the...
29 Jul 2012 by Volynsky Alex
Writing Windows VxDs and Device Drivers, Second Edition (Paperback) by Karen Hazzahhttp://www.tower.com/writing-windows-vxds-device-drivers-karen-hazzah-paperback/wapi/109010721[^]Developing Windows NT Device Drivers: A Programmer's Handbook by Edward N. Dekker & Joseph M....
4 Aug 2013 by User 59241
The principle is exactly the same as creating delays in user mode. Sleep() has very limited value and you can use Google to find out why. Ultimately you need waitable timers.(1) Create a kernel timer via...
5 Jan 2012 by Pranit Kothari
Hi All,I am C++/VC++ programmer. I wanted to start working on non-hardware related (forgive me if I am using wrong terminology) related device driver. From few days I just went on searching for information on Google but didn't find relevant information. My question is, I wanted to make...
3 Apr 2012 by User 59241
What you are talking about is asynchronous data processing.To implement this you need to use ReadFile in asynchronous (OVERLAPPED) mode.1. Create an event.2. Create an OVERLAPPED structure containing a handle to this event3. Pass this to your ReadFile function4. In a separate...
26 Feb 2014 by lukeer
Hi experts,the installation of my Windows Forms application wreaks havoc on the USB subsystem. Any USB device plugged in the machine won't function unless it has already been plugged into that very USB port at a time before my software was installed.Has anyone had such behaviour before?...
16 Aug 2015 by markkuk
There is only one kernel address space that's mapped into the top parts of the virtual address spaces of all processes. There's simply no such thing as "corresponding process's kernel address space" or "particular kernel address space".
1 Oct 2015 by Patrice T
Teamviewer is simple for user because the programming team is skilled and have made a complicated program that hide complexity to users.So TeamViewer is not simple at all.Your question show that you lack of necessary skill to be able to do a clone of it.To make a TeamViewer clone, you...
26 Jan 2019 by OriginalGriff
now org is (incomplete type is not allowed) C - just like C++ - is case sensitive, so original is not the same as Original. Try: struct Orginal { PDRIVER_OBJECT driver_object; // NULL PDRIVER_UNLOAD unload; // NULL PDRIVER_DISPATCH major_functions[IRP_MJ_MAXIMUM_FUNCTION + 1]; //{ NULL };...
6 May 2021 by honey the codewitch
Explore the inner workings of a highly capable IoT display driver for the ESP32
1 Oct 2010 by E.F. Nijboer
This article could help you out.Using Window Messages to Implement Global System Hooks in C#[^]Good luck!
5 May 2011 by barneyman
The fundamental difference is the compiler used, and the size of an int - 32bits vs 64bits64bit operating systems (win7, xp64) need 64bit drivers to access devices, similarly a 32bit OS needs 32bit drivers - they generally operate in kernel space, which is why they need to be native to the...
22 May 2011 by ShilpiP
Use GetLastError() to check the error message.->[^]1) Is m_hWnd is LPCSTR type?2) Is m_infname is the full path of file name?
23 May 2011 by Stefan_Lang
As SP 24 suggested, you should check the error code using GetLastError(). Judging by what you said it could be ERROR_IN_WOW64. See the MSDN documentation on UpdateDriverForPlugAndPlayDevicesERROR_IN_WOW64: The calling application is a 32-bit application attempting to execute in a 64-bit...
4 Jun 2011 by markfilan
I am trying to install a unsigned driver on win7.the function of the driver is to communicate with usbhid.sys and the device was describe as a hid device。the problem is when I plug the device.only usbhid.sys was installed and functioned。the driver i wrote is not working, i tried lots of...
5 Jan 2012 by Richard MacCutchan
The functions you mention are not handled by the device drivers, but at a higher level by the file system. I guess you would need to write a filter to manage this - take a look at some of these links[^] for more information.
21 Mar 2012 by Sergey Alexandrovich Kryukov
I would advise to start...
9 Apr 2012 by Liyl_ct
In fact,I did a bus hook driver for capturing IRP. And then I want to send the captured IRP from my driver to user mode application. RtlCopyMemory(outBuf,&MyIrp,sizeof(IRP)); //driver code, //and I used DeviceIoControl in the application.So I...
10 Apr 2012 by Tox1k
Here's an interesting solution in c# from Iteration at NullCoders.com.using System;using System.Windows.Forms;using System.IO; private void GhostFolder(string FolderPath) { try { //Creates a New DirInfo Instance ...
20 Apr 2012 by Pranit Kothari
Hi All,I am C++/MFC/Qt/Win32 developer. I wanted to move towards device driver programming. Recently I have purchased Windows 7 Device Driver by Ronald D. Reeves. And then, when I looked at reviews at Amazon, I got discouraged. Can you suggest how should I proceed towards device driver...
22 Apr 2012 by Pranit Kothari
http://stackoverflow.com/questions/10275160/how-to-become-device-driver-developer[^]
30 Apr 2012 by Sergey Alexandrovich Kryukov
Theoretically speaking, I can imaging starting with Linux Kernel programming before getting basic (or better yet, quite advanced) Linux programming in application circle, but… only if I try really hard. And probably only under tight supervision and a lot of help from someone who is a real...
24 May 2012 by rasmiranjanbabu
Hello friends,I use CODE::BLOCKS in Windows vista.I would like to write a program on USB, that, when a pen drive or something is connected to the USB port my program should warn me that something is connected.I would like to write the same in C or C++ language.Please provide me some...
1 Jul 2012 by Albert Holguin
If you're working at a driver level, why not do a C-style fopen() and see if the file exists in that manner? If it doesn't, the fopen() will fail and return NULL.
3 Jul 2012 by Iranian MM
These are list your partitions :code : parted -landcode : fdisk -lare the same.andcode : cat /proc/partitionshave less information about partitions than fdisk -l and parted -l.code : lsusbdisplaying information about USB buses in the system and the devices connected to...
28 Jul 2012 by Hawkfuture
In my case, I started driver programming with "Programming the Microsoft Windows Driver Model" by Walter Oney. Windows DDK/WDK documents are also helpful.
29 Jul 2012 by «_Superman_»
The latest framework for writing device drivers for Windows is the Windows Driver Foundation (WDF).Microsoft recommends you use WDF. It is a wrapper around the Windows Driver Model (WDM) and eases driver development drastically. Many difficult tasks like power management and plug and play...
21 Oct 2012 by User 6344851
I decided to go the clean but hard way.First I read Rajeev Nagar's book "Windows NT File System Internals : A Developer's Guide" (and a few other books related to windows debuging and driver developement), then I had a closer look at the "dokan" project and TryeCrypt, which are both open...
24 Oct 2012 by Sergey Alexandrovich Kryukov
No. Who told you they are independent? They are isolated, and isolated at the level of hardware, the CPU which has four rings of access, but Windows uses just two. And nothing in user mode can call a kernel directly. Pay attention that the control is inverted: the user sends the input through...
15 Jan 2013 by david pretham
We want to develop windows device drivers for USB devices(dongles) with NDIS,MODEM,SERIAL interfaces.We need to create use cases where we need to develop show some application communicating with drivers.Apart from WDK and samples.where can we get the development devices for...
1 Nov 2013 by leftbackfielder
hello everyone, I am so sorry that my English is not very well.i will try to describe my question. I write a NT driver that is a keyboard filter. Sometimes, on some computers(not mine), can't be stop. when I use "nsSCM::Stop /NOUNLOAD "MyFilter"" to stop the driver, and then,"query...
27 Feb 2014 by S Houghtelin
You may find this useful, I did when I needed to do silent install for our USB connected device.Driver Package Installer (DPInst)[^]I suggested reading through the documentation though. But it works.Good luck.
27 Feb 2014 by lukeer
Stupid me!To write my changes to the registry, I use this method [DllImport("advapi32.dll", SetLastError = true)] static extern uint RegSetValueEx( int hKey, [MarshalAs(UnmanagedType.LPStr)] String lpValueName, int...
20 Aug 2014 by OriginalGriff
So try the manufacturers website.Do you think we sit here with a huge stack of drivers waiting for people to lose them?
13 Jan 2015 by CHill60
This MS article should be a good starting point http://msdn.microsoft.com/en-us/library/windows/hardware/ff554690(v=vs.85).aspx[^]or this http://www.osronline.com/article.cfm?article=20[^]
15 Jan 2015 by Stan Huang
There may be lots of causes for such bug. In my case, it happened several times and I worked out it by re-building the driver in the development environment where the underlying image was built. That is, the drivers must be built at the same development environment as the kernel image. A little...
16 Jan 2015 by Richard MacCutchan
How about looking at the documentation[^].
20 Feb 2015 by E.F. Nijboer
Try calling something like this:RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 132 path-to-inf\infname.infCheck this link for more info:https://msdn.microsoft.com/en-us/library/windows/hardware/ff557251%28v=vs.85%29.aspx[^]Good luck!
18 Jan 2017 by Sergey Podobry
How-to guide about using KmTest for writing kernel-mode unit tests
6 Feb 2017 by Jochen Arndt
This is obviously wrong and a fine example why casting can be unsafe:for(int i = 0; i
2 May 2018 by Jochen Arndt
Your filter is working well. But the photo application is using it's own cache from where images are loaded even when the source does not exist anymore (or access is blocked by your filter).
14 May 2018 by Jochen Arndt
The posted code makes no sense and should not even compile because you are using REPLY_MESSAGE_STRUCT variables before they have been declared at both sides. The size calculation is also wrong because you are adding the size of the whole reply structure instead that of the components: ULONG...
6 Jun 2018 by KarstenK
You must completly read the documentation and implement it in that manner. Read the how to Build a v4 Printer Driver in Visual Studio to find a basic sample.
26 Jan 2019 by Rick York
Your attempt had a seperate instruction so it was not the right syntax for initialization. Try this :struct orginal org = { NULL, NULL, NULL, NULL, false, 0 };
27 Jan 2019 by CPallini
It depends on very nature of the HashBuckets variable. What is it, exactly? You didn't provide any insight about. I suggest you to NOT obfuscate C code behind macros. Wtite clean C code instead of trying to mimic the C++ counterpart.
1 Mar 2019 by Apriorit Inc, Sergii Kusii
20 Oct 2019 by RickZeeland
See: Using Dirids - Windows drivers | Microsoft Docs[^]
3 May 2021 by OriginalGriff
It's possible, yes - but it's going to be really, really difficult. You'll need to start here: RedMon - Redirection Port Monitor[^] (or find something similar) and then "decode" the printer output (as it isn't sent to the printer in the form of...
7 Oct 2021 by User 9916080
This maybe what you are looking for. From Google: Epson TM-T88III Drivers[^]
1 Sep 2022 by Randor
I don't think the QA comments supports XML so I'll put it down here. As far as I can tell your Print Capabilities needs something like this: Standard
1 Oct 2010 by Lee sang muk
hello my english skill not goodi want answersplzi will hooking on winapi function sendmessage() or sendmessagetimeout()on kernel levelbut i don't knowwhat hooking function kernel for hooking sendmessage()give me the answers plz
9 Oct 2010 by putidu2006
i want to know how to record keyboard use winio functionfor example:getportval function to read keyboard eventand print to screen please give me a example
13 Oct 2010 by pratik04dabhi
I wrote a code to block an application used the MSDN code along with some glue code to get the code running. But it does not block the application. The filter is addressed at FWPM_LAYER_ALE_AUTH_CONNECT_V4 layer.But it does not block the application.How do i block an application from...
11 Nov 2010 by simeone18
Hey guys.I just have a question about windows driver development. I completed a windows driver for vista, win7(32bits & 64bits), but only use administrator can load the driver correct, using normal account, windows will block it to c:\windows\system32\driver folder, and can't add item to...
12 Nov 2010 by twmonster
Hi,I need to develop a GPUZ-like utility to dump the graphics unit (discrete and UMA graphics) detail parameters like GPU-Z and GpuCapsViewer. I have did exhaust search and study with no lock. Google, MSDN, BIOS/SMBIOS does not talk about this topic. Looks like I'm stuck here. Can anybody...
12 Nov 2010 by Richard MacCutchan
How did you not find these[^]?
19 Nov 2010 by yuriyb_ua
Hi all,Is it possible to retrieve disk's serial number which included to the physical RAIDX with using hardware controller?Any ideas are welcome.Thanks in advance.
21 Nov 2010 by GPUToaster™
Try this article...might be useful.[^]
13 Dec 2010 by DisneyCHZ
I wrote a virtual USB bus driver in Windows, after it enumerate the USBSTOR driver, in the usb bulk or interrupt transfer phase, the USBSTOR driver will send some IRPs with MDL pointer. It means that using direct I/O method (but strangely, the "Method" in the IRP is "Neither"). When I use the...
16 Dec 2010 by DisneyCHZ
I know the reason now. Before getting the virtual address here, I did a wrong thing. I lower the IRQL, this is a fatal error.
3 Jan 2011 by Shivkumar.b.t
Hi,I am developing a USB 802.11 Wireless Miniport network driver for NDIS version 5.1 on Windows-XP for our device. Our driver is expected to support wireless WMM classification by looking at the TID (traffic ID) field in 802.1p/DSCP tag of the packets given by NDIS. When there are two...
25 Jan 2011 by Indivara
Did you try the SDK here? Doesn't that allow you to do what you say?http://www.datecs.bg/support.php?cat=4[^]
27 Mar 2011 by ahmed 88
hi all.first sorry for my bad English .second i am new in driver programming and i want to ask about can i start exe program [user mode application ] from kernel mode and it will run in user mode ?all i want just to do some thing from kernel mode just like that when i press double click...
30 Mar 2011 by ahmed 88
Please, i need help.My graduation project is an antivirus & my part is related to File System Filter Driver.We decided that to scan the file as soon as doubled click on it or single click on it.My question is when i doubled click on the file or just make refresh in the directory contains...
31 Mar 2011 by alinanstoica
Hy! Class for direct print commands:Public Class DATECS Const strANS As String = "______,_,__;" Private LDN As Short 'Logical Device Number Private strLine As String Private BillCtr As Integer Dim noNbDec As New System.Globalization.NumberFormatInfo ...
31 Mar 2011 by alinanstoica
Hi!We're welcome! I really had a hard time to work this out also..I figured out why discount wasn't working. So the Discount function works like this (I've tested it): 'adding products'S,1,______,_,__;ProductName;18.00;1;1;4;1;0;0;'subtotal 'T,1,______,_,__,4;;;;;'Discount...
20 Apr 2011 by Emma1
Try new version of fiscal printers based on FisBox with ARM Cortex M3 CPU and 4GB memory.I think, there is right way to future of fiscal storage.See also receipt example.www.FisBox.eu
5 May 2011 by markfilan
Anyone who know this? I search the microsoft, It only explain briefly, I see that the windows 7 64bits driver needs a signature。what is that means?
7 May 2011 by CO Jim
I've got an application that receives very heavy network traffic. To work properly, the NIC must have its "RX Descriptors" buffer size increased above the Windows/NIC rather conservative default. I can change it manually for each system through the Device Manager (Network Adapters -> ->...
9 May 2011 by Kurt Degiorgio
Look into the INetCFG interface http://msdn.microsoft.com/en-us/library/ff547694.aspx[^]if that doesn't do the trick i think your only other option is to try and change this setting from kernel mode. (through a driver) Also i do not believe this is a good approach since the changes...
9 May 2011 by CO Jim
Great - thank you Kurt! I'll take a look at this link and see if that will do the trick.I understand and appreciate your concern, but these boxes are actually stripped down OEM "embedded" controllers running on dedicated custom hardware integrated into a larger system. They are headless,...
12 May 2011 by Albert Holguin
The DDK expects some environment variables to be set, see this:http://mcdermottcybersecurity.com/articles/64-bit-device-driver-development[^]Now, you can use the building tools that the DDK uses which already set these variables for you or you can just set them yourself by whatever means...
17 May 2011 by henujava
I am making an application of capture video,the frame format of my camera is NTSC.My programm only can capture PAL video.What i can do to modify the frame format of my camera,I need use functions in driver.But,i don't know what i can do for it.Please help me in this regard.Thanks...
19 May 2011 by markfilan
i compile the driver in 64 bits computer successfully ,but when install that driver i found out that the it install is window.old .which is a directory win xp did;t have ,and the function i used ti get the path is :GetSystemDirectory()but the result it returned is windows.old. is there angthing...
23 May 2011 by markfilan
I'm trying to install a driver which i wrote ,but during installation, the install failed errors always incurred, i debugged and found out that this function is where the errors showed.here is the code :if (!UpdateDriverForPlugAndPlayDevices(0, // No Window Handle ...
22 May 2011 by ShilpiP
->[^]1) Did you check error by using GetLastError() value ?? What is the error??2) Is m_hwid is LPCSTR type and m_infname is the full path of inf file.
26 May 2011 by markfilan
I worked several days on this ,but couldn't find a way solve it,the program just stoped at this function, i used getLastError()which found out that he return error is " ERROR_NO_MORE_ITEMS",which is really odd ,because i checked the value ,there are no mistakes. who give me some direction how...
4 Jun 2011 by Kim Togo
Is the driver working on a Windows Vista or 7 32 bit ?There are some common pitfalls on 64 bit systems.20 issues of porting C++ code on the 64-bit platform[^]Common Visual C++ 64-bit Migration Issues[^]
6 Jun 2011 by Member 7984120
Hi, guys!I need to replace some user process to other process in kernel mode of Windows. For example, user try to execute calc.exe, so I need to replace it to notepad.exe. I think I need to hook ZwCreateProcess/ZwCreateProcessEx/ZwCreateUserProcess and change parameter ImageName. Does it...
6 Jun 2011 by cariolihome
You can enable SetupAPI logging as described in Setting the Event Level for a Text Log to figure out what happened due driver setup
13 Jun 2011 by TRK3
1. IN and OUT are usually define as nothing:#define IN#define OUT(there is no keyword in C that distinguishes input and output parameters).2. Try adding /P to your compiler command line ("Generate Preprocessed File" option in Visual Studio Properties page under C/C++,...
26 Jun 2011 by Harmanjeet Singh
I am new to Device Driver Development. I am using Windows 7. Can anyone tell...What is a callback object?Difference between Free Build Environment & Checked build Environment?When we use UMDF and when KMDF?What are function drivers and filter drivers, and difference between them?...
24 Jun 2011 by OlegKrivtsov
2) Checked Build Environment allows to compile your driver with various built-in checks (asserts). This allows you to better debug your driver, however it works slower and takes more space on disk.When you have debugged your driver, you should compile it in Free Build Environment. This...
28 Jun 2011 by markfilan
i now wrote a driver,but i encounter a really troublesome problem , when i installed the driver on other computer is always failed ,and i debug the program found out that the install software didn't have the right to write or do any changes in the drivers folder ,is there anyone who now how to...
28 Jun 2011 by Vivek Krishnamurthy
Take a look at the following article, Delete Undeletable Folders under Vista or Windows 7[^]. It explains how to gain access to the files / folder which are otherwize not accessable as in your case.From the article=========================The main idea behind the program is to fix the...
29 Jun 2011 by nk.dushila
Hello Friends!! I'm new to WDK. I am developing a Virtual Network Adapter for a System which has no Internet Connection. I named this AMS NDIS. With AMS NDIS, A system will capable to access Internet with the help of USB(Blackberry phone in my case). What i'm...
2 Jul 2011 by shawn12341234
I'm new to this and just got done reading the MSDN documentation, and your rule is dynamic which means that when you process ends the rules that you added are removed. If you are doing this in a locked down environment you could create a service that when started adds the rules you want and when...
8 Jul 2011 by markfilan
I Wrote a driver for WIN7 64bits computer ,now the driver can be installed on the computer successfully ,but there is a bug. After installed the driver, the driver should run immediately on the compter.but it wasn;t. after i replug the device the driver started working ,anyone know how to soolve...
7 Jul 2011 by Christian Graus
If it works in the end, then it sounds like an issue with Windows 7 in general. Try installing some other drivers, if they work right away, then you have an issue in your code. But, if that's the case, no-one can resolve the issue in your code without seeing some of it.
12 Jul 2011 by nk.dushila
Hello Friends I'm new to Windows Driver Kit. I am using Windows Driver Kit Version 7.1.0 and I'm developing a virtual network adapter. With this adapter i want to get requests from web-browser and send them to usb device(my blackberry handset).For this i'm using...
21 Jul 2011 by saschanv
Hello, First of all, I am a "noob" in programming so just to clear things out from the start, I don't have an enormous programming experience.I can program pretty basic stuff on VB but I am willing to start a new project which requires Webcam access and can record a video from it in a...
21 Jul 2011 by S Houghtelin
You can start here and then proceed through the next few pages to build an application similar to what you are asking for.http://www.visiblevisual.com/index.php/General-VB-.NET/list-of-webcams.html[^]This would also be a good candidate for a google search using search parameters such as...
28 Jul 2011 by nk.dushila
Hi Friends I have a new Project on "Virtual Network Adapter". We decided to develop it with "Windows Device Drivers Kit". I have knowledge about Network and i have read some documentations and a Book "Developing Drivers with the Microsoft Windows Driver...
28 Jul 2011 by nk.dushila
Hi Chathura Actually i'm facing the same problem. In my driver i have to connect my Network card with my usb device. So i have some knowledge about USB Devices. if i have this problem than i will first goto the USB's PIDandVID number. i'll recognize those PID&VID which are...