|
Hey There,
I am trying to run an .exe from my driver using ZwCreateFile. If it is a generic exe, like notepad.exe or calc.exe, it will work fine. If I try to execute one that is a "wrapper" exe, like a self-extracting zip file, or an exet for a .swf flash file that has a flash player embedded, it will not work. The self-extracting zip file will complain of a header corruption, and the .exe for flash will run the flash player but not load the .swf that is embedded in it. What are the differences in execution between these two types of exes that would preclude the "wrapper" exe from executing properly, while the "generic" exe executes fine.
-Jay
(patel at cs dot utk dot edu)
|
|
|
|
|
I tested ur code for TDI clients and it works for char buffers.
can it work for passing structure pointers like:
struct A{
char*pdata;
};
struct B{
struct A a;
}
I want to pass struct B across TDI driver. is it possible ? is there any memory mapping that happens ? How ?
I need to pass pointers data across network (IRP,URB) using TDI.. plz advise..
|
|
|
|
|
Hello Toby
I've read your article about device drivers, and it helped me a lot to understand how it goes. I'm looking for an example of a keyboard device driver, here is my idea, I want to build a Keyboard Device Driver to automate an application, in this application I have to press, lets say number 2 every 3 seconds.
Do you have any insight, any piece of code that may help me understand how will I make it? So far I've got no luck finding it on the internet.
Thanks in advance man.
Will I ever finish this Device Driver?
|
|
|
|
|
Hi Sir,
I was reading your great article about Driver Development Part I. And i was hoping to give me more tutorials about this interested subject. Or even complete the series .
Thanks in advance
Ahmed
Being the Best of Me
|
|
|
|
|
Hi Sir,
I want to restart my cable modem without using its power switch. Could you help me with this regard? Which is the easiest way?
a)any simple DOS command?
b) could we try using a telnet?
c) a simple c++ application?
|
|
|
|
|
Hi Toby,
Thanks for the great tutorials (still only half way through reading the first, though).
Just thought it may be quicker to ask: If you were writing a driver for a virtual game controller, where would you start? For a little more background, I want to process data coming from one or more real game controller, modify it the data coming from them and feed it back through a new game controller interface. It's the virtual controller that I'm suck on.
I assume that I would need to write a custom driver which can get data from a service based application, but I'm not sure how to proceed in terms of Windows recognising the driver as a valid games controller. Is this where HID drivers come in?
If you could point me in the right direction, I'd be grateful.
Thanks,
Nick
|
|
|
|
|
Hi
I am reading "Driver Development Part 1" document and it seems that I found a mistake, but I am not sure.
Driver Development Part 1 -> page 6 (Direct I/O)-> The paragraph before the last paragraph:
The way buffered I/O works is that it provides ......
I think it should be:
The way direct I/O works is that it provides ......
Am I right?
|
|
|
|
|
I'm a Vietnamese student, i know you through very great articles on code project.And my problem is creating a protecting module for my software to anti debug, anti read-write memory on it. I've seen many protect software use vxd and sys driver to hook the kernel API such as: WriteProcessMemory, ReadProcessMemory,... They also check the layout of the code to detect hooked/pacthed, monitor the entire memory range...I know what they do, but don't know how they do that. Can you give me a tutorial or an articles about prevent program form cheating, hook/patch, debug.
The most popular is GameQuard and it use uses a kernel driver by the name of nppt9x.vxd (Windows9x) and npptnt2.sys (Windows NT).
Thank you.
|
|
|
|
|
do you have any plans for updating this sample driver for windows 7 wddm? if not, any advice on where to find such a beast? please and thank you.
|
|
|
|
|
Thank you so very much for your driver tutorial!
|
|
|
|
|
Thank you for your Drivers article series.
It is very useful.
Dileepa Rnajan Dharmasiri (C++ Developer)
+94719140210
https://sites.google.com/site/drdileepaproject/
drdileepa@gmail.com
|
|
|
|
|
Hi. Thank you for your articles on drivers. I have a question. I need to gain access to video frame buffer (at least read only mode) in kernel mode. So I figured that I need to send IOCTL_VIDEO_MAP_VIDEO_MEMORY with the help of EngDeviceIoControl function (am I correct?). The problem is that I need a device handle for EngDeviceIoControl call (msdn says so). How do I get this handle?
|
|
|
|
|
Amazing debug series,thanks.
|
|
|
|
|
Hi (and a big thanks for your article on driver development), I have a question regarding drivers:
It seems to me, that "theoretically" it should be possible to interface two different computers using a driver which works via Ethernet. Such that you connect the two computer using their respective Ethernet ports, and then that driver you have developed would carry out anything you want between them. (Transport some data or something) Am I right?
And Is this possible to make it such that the two computer would work not by sending IP packets? So that you make them talk with each other by a custom alternative protocol of your own. (Send your CUSTOM packets through Ethernet. So that you still have the Eth headers on top, but no IP header. Instead your own CUSTOM thing inside.) ?
And finally, can one develop a driver to work on top of the normal proprietary video driver it uses, to filter what goes to his VGA, such that we can delegate some of the job onto some other VGA? (It's like homebrewing some sort of SLI or something) ? (If we could, we could for example, use a Raspberry Pi to accelerate our GPU computations by letting the Raspberry Pi do some of the jobs. Of course, this would not be efficient, may even make it slower because of overhead, but its so damn cool!)
Thank You,
Iman Hosseini
ihosseini@ce.sharif.edu
Iman Hosseini – Physics, Math, Computer Science, And Else…[^]
|
|
|
|
|
Yes, essentially a NULL-Modem. You can write whatever protocol you want, there are implementations of contained networks that use their own proprietary low level protocol.
However, an easier solution and perhaps faster solution in both speed and implementation would be to use USB 3.0 direct Host to Host connection.
8bc7c0ec02c0e404c0cc0680f7018827ebee
|
|
|
|