I have three disk: disk0, disk1, disk2. Evtdeviceadd routine will be called 3 times for each of device. Now I want to catch read IRP and when it is from disk1 then I want to change the target from disk1 to disk2. So how Would I differentiate that the request I got it from disk1. For that if I am able to get device property then I can get to know or any other solution?
How to get the property of a device if I have wdfdevice and wdftarget in kmdf based filter driver?
632 Views Asked by ankit At
1
There are 1 best solutions below
Related Questions in WINDOWS
- Get Maximum Log Size
- Debugging Windows Services while starting
- Possible consequences of duplicate ProgId for different classes
- How to chain BCryptEncrypt and BCryptDecrypt calls using AES in GCM mode?
- mingw-64 conflicting declarations when cross-compiling
- I run an EXE program from a Windows Service but I can't see form C#?
- Why is PowerShell "not recognized" when installing Chocolatey?
- How to check if Windows device is phone or tablet/pc?
- How to add directories to Cygwin gcc default search path
- Can't install anything with pip2 on Windows 7 due to UnicodeDecodeError
- Active directory and linux nslcd binding without extending the AD schema
- How To Prevent Over Scrolling in Scroll Viewer Windows Phone 8.1
- Unicode error from pip install
- Where is the 'EnablePinning' property in the ribbon framework's recent items?
- How can I implement the same models and data across ASP.NET and Windows Apps
Related Questions in FILTER
- Angular Show All When No Filter Is Supplied
- Git > diffs filtered, show only certain changed classes/files
- Apply gaussian filter on text
- FFT Filtering of signal
- Rails WiceGrid with multiples attributes in the same column
- How to check if element of an array is in another array?
- filter from listbox regex
- Limit items on external list using BCS Filter
- Wordpress: custom content shows before $content
- How to filter keys of an object with lodash?
- Lowpass filter non working
- Transparent Activity in Android
- Firebase: combine filtering with ordering in swift
- Angular Filtering
- VBA Excel custom text filter by more than two texts
Related Questions in DISK
- Detect volume mount and get its path
- Implementing Tree Structure in disk memory
- Trying to read from file within existing for loop
- Java file IO slows down with large consecutive writes
- Is it true that PE files map directly into memory?
- Low level page manager in C/C++
- I use freebsd11 but iops is very very poor ('fio' tools)
- How can I find the total disk size of the device my app is running on?
- Copying docker image folder between partition with rsync
- Invalid Directory Item Count (It should be 3*673 instead of 3*674) while MacBook partition using Disk Utility
- Redshift disk space vs number of nodes
- Diskpart UniqueID - C# how to get that id
- seek for an useful and free utility to clean my OSX
- Access the RAW disk using C/C++
- Azure: Unable to attach my data disk to VM
Related Questions in DRIVERS
- Nexus 5 Usb Drivers Stopped Working after Automatic Update
- Drivers for LG G pad F 8.0 to develop on Android Studio
- List Driver related files and their versions
- Steps involved in any file read/write operation in linux
- Neo4j java multiple session
- How to learn network Ethernet device driver programming?
- Automatic Closing of Web Browser in Selenium
- Can I install a Vulkan driver on my 3rd gen Intel Ivy Bridge integrated GPU on Ubuntu 16.04?
- Serial driver limitations on iMX processor
- mmap invalid argument for uio0 device
- Install Matrox MGA g200e drivers on Linux Ubuntu 14.04
- How do you get the name of a service in kernel mode? (Windows)
- Driver Start Type Property
- Security implication of non-free drivers
- Samsung Duos S2 is not connecting with Eclipse
Related Questions in KMDF
- Universal Drivers will run inside Universal Apps in Windows 10?
- How to properly register a completion routine for an internal device control request for a lower filter disk driver?
- How to configure Visual Studio 2015 to develop device driver application(KMDF)?
- Minispy driver - user mode call
- VS2013 doesn't have windows driver template
- ASM code in KMDF driver
- KMDF on Windows Server
- How to get the property of a device if I have wdfdevice and wdftarget in kmdf based filter driver?
- Windows KMDF driver, Informing application of a change via a notification, is it possible
- Guides for adding 64-bit support to a KMDF driver
- KMDF build types
- VS cannot find ntddk.h, wdf.h or fwpmk.h
- How can a Windows filter driver send IOCTL_HID_SET_FEATURE request to hidusb/HID minidriver?
- How do I check whether my WDM/KMDF driver uses the retpoline fix?
- workaround to skip driver signing in 64bit windows
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
When you add these disks, in your device add routine create an extension structure and allocate a context WDF_OBJECT_ATTRIBUTES_INIT_CONTEXT_TYPE(&objectAttribs, XX_EXTENSION); WdfObjectAllocateContext( Device, &objectAttribs, NULL);
differentiate them by having an identifier in that structure.
You would be able to access the queue object in your request callback. From the queue object get the device object and from that your extension structure and hence the identifier.