USB driver for Bulk Devices
I am using the USB driver for bulk devices given by
Microsoft that comes along with NTDDK. The name is
BulkUSB.sys.
Question 1. Does that support multiple devices
Question2.
I plug in a bulk transfer device. The device is detected
by windows. When I plug out the device, the plug and play
manager pops up notifying of the unsafe removal.
In another case I plug in two or more of such devices.
And when I plug out or try to do a safe removal from the
plug and play manager, windows crashes.. or I'm shown a
blue screen.
Is there any fix for the driver. Or Is there any
modification that needs to be done in the driver sample.
pls help. Tag: About Driver pack Tag: 38504
How to expose new device nodes
Hi All
I have to write a usbccgp.sys like driver ie which
exposes new device nodes for a composite usb device ie we
have to assign a separate PDO to each function of a
composite device.
How do I proceed ?
Thanks in advance
Marlene Tag: About Driver pack Tag: 38503
Check Irp->PendingReturned in IoComplete routine
In IoComplete routine, sometimes it check Irp->PendingReturned
and call IoMarkIrpPending if the flag is set.
Is there any rule for this?
According to DDK document, it says....
=================================================================
Any driver that sets an IoCompletion routine in an IRP and then passes
the IRP down to a lower driver should check the IRP->PendingReturned
flag in the IoCompletion routine. If the flag is set, the IoCompletion
routine
must call IoMarkIrpPending with the IRP. Note, however, that a driver that
passes down the IRP and then waits on an event should not mark the IRP
pending.
=================================================================
However, bulk usb sample code in DDK.
In IoComplete routine of set device power up, FinishDevPoUpIrp, it checks
Irp->PendingReturned and call IoMarkIrpPending if flag is set.
In IoComplete routine of set device power down, FinishDevPoDnIrp, it doesn't
check this flag. Why???
Does it have something to do with IoCompete's return value?
Best Regards
Jackal Huang Tag: About Driver pack Tag: 38501
SMBIOS
Hi,
How do i access SMBIOS interfaces from Windows APIs.I
want to access both the read and write APIs of SMBIOS so
that i can do I/O operations on the BIOS "on the fly" from
an application.Can somebody help me on this.
Thanks in Advance,
Shyam. Tag: About Driver pack Tag: 38500
Multi Processor
1. Does Windows see Hyper Threading as computer with
multi processor?
2. Are there any waysthat u can detect if the computer
has multi processor?
Ken Tag: About Driver pack Tag: 38498
FakeModem sample
Hello,
Does anyone have any experience with the FakeModem sample?
I wanted to start experimenting with a modem driver and I thought I would try compiling and playing with the FakeModem example found in C:\WINDDK\2600.1106\src\network\modem\fakemodem. I made no changes to the code, just compiled and installed. I then fired up HyperTerminal--and nothing. Not a thing.
Are there any other modem samples somewhere that I could look at?
Thanks
Jim Tag: About Driver pack Tag: 38483
Firmware files location
My driver need to write the hardware firmware files every time it starts.
The files are a bit big ~100K uncompressed and ~60K compressed.
Where should my INF file store these files?
We prefer not to couple the firmware files with the driver since the driver
might manage different versions of the firmware.
Yariv. Tag: About Driver pack Tag: 38479
ai, no download?
I was under the impression that the DDK could be downloaded somewhere?
Am I right? Can I write a driver just for the fun of it? Tag: About Driver pack Tag: 38477
one question about IoGetDeviceObjectPointer
dear all:
Is ObjectName SymbolicName? In higher level driver,how can I get the ObjectName of the lower driver?
thanks a lot 1 Tag: About Driver pack Tag: 38476
VIA VT8237 SATA drivers and Win server 2003 64
I have tried to install the new OS Windows server 2003 trial 64 on my pc
based on a GA-K8VNXP MB with VIA VT8237 south bridge chipset and two SATA
HDD .
During the installation the drivers for SATA RAID controller are requested
(on a floppy disk). I cannot find such drivers. Does anybody knows where
these drivers can be found?
Thank you.
Alessandro from Italy
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.556 / Virus Database: 348 - Release Date: 26/12/2003 Tag: About Driver pack Tag: 38475
Driver install without windows ?
Excuse the dumb question but how would I install drivers for my cd-rom
without using windows ? Some kind of dos command I'm guessing. I have
this p3 presario with no OS installed and need to install my cd-rom in
order to install windows ( I have the drivers, but no way to input them)
Thanks
BErt Tag: About Driver pack Tag: 38468
monitor driver
I'm,trying to change my color settings. The problem seems
to be with the driver. How can I locate the proper driver
for my monitor Tag: About Driver pack Tag: 38465
GDI_DRIVER Driver compilation with VS7.1 IDE
Hi,
Introduction:
**********
I am writing a display mirror driver, I am trying to use the VS7.1 (.NET)
IDE to compile the driver, conversion to an .vsproj solution is done by the
'Source to DSP converter' app provided with 'SoftIce driver suit'.
The Problem:
**********
The mirror is build of to files: the miniport driver and the display driver,
no problems has occurred converting compiling and using the miniport driver,
in contrast, conversion of the display driver failed: the 'Source to DSP
converter' doesn't support GDI_DRIVER conversions, SO..., I tried to do some
tricks: I have changed the TARGETTYPE of the GDI_DRIVER to DRIVER and then
used the 'Source to DSP converter' with the new source file, the result was
a new .vsproj compiling a .sys driver I have changed the name of the driver
to be .dll and removed the 'DriverEntry' DLL entry point from the project
configuration, still, using the new driver causes an 'Unhandled kernel mode
exception', using the display driver compiled by the 'source' makefile works
fine and doesn't reproduce this problem, what may cause the problem? what
went wrong during the 'Source to DSP converter' conversion? what special
configurations are required for a GDI driver?
Should there be any specific entry point to a GDI_DRIVER?
Thanks in advance,
Nadav, Tag: About Driver pack Tag: 38463
PNP Manager
I have developed a failover driver for a fibre channel
medium changer device on Windows 2000 that is tightly
dependent on the PNP Manager. When I pull the cable out
of my hardware, one of my Win/2K systems immediately
rescans the bus without any intervention on my part,
notifies Device Manager of a hardware change, and sends
IRP_MN_SURPISE_REMOVAL to my driver.
I have another Windows system on which the rescan does
not automatically take place. On that system I have to
use device manager to manually "Scan for hardware
changes" before the surprise removal notification will
happen.
In order for this driver to work, the scan needs to
happen automatically. How do I get this to happen? Does
it depend on Windows or on the fibre channel adapter card
and its driver? Tag: About Driver pack Tag: 38462
Hi ,want some tips about the report descriptor of a HID device,thankyou
Hi,now the HID device can be write ,but not read ,and app is
following:
Result = ReadFile (ReadHandle,
InputReport,
Capabilities.InputReportByteLength,
&NumberOfBytesRead,
(LPOVERLAPPED) &HIDOverlapped);
cout<<"ReadFile: "<<GetLastError()<<endl ;
GetLastError's return is always TIMEOUT.I think that it is something
wrong in the firmware,but I cannot find them out ,hope some tips ,the
following is the report descriptor:
PS: Createfile and Writefile are normal.
DSCR_DEVICE equ 1;; Descriptor type: Device
DSCR_CONFIG equ 2;; Descriptor type: Configuration
DSCR_STRING equ 3;; Descriptor type: String
DSCR_INTRFC equ 4;; Descriptor type: Interface
DSCR_ENDPNT equ 5;; Descriptor type: Endpoint
ET_CONTROL equ 0;; Endpoint type: Control
ET_ISO equ 1;; Endpoint type: Isochronous
ET_BULK equ 2;; Endpoint type: Bulk
ET_INT equ 3;; Endpoint type: Interrupt
public DeviceDscr, ConfigDscr, StringDscr, UserDscr, HIDDscr,
ReportDscr, ReportDscrEnd
DSCR SEGMENT CODE
;;-----------------------------------------------------------------------------
;; Global Variables
;;-----------------------------------------------------------------------------
;; Note: This segment must be located in on-part memory.
rseg DSCR;; locatethedescriptortableanywherebelow 8K
DeviceDscr:db deviceDscrEnd-DeviceDscr;; Descriptor length
db DSCR_DEVICE ;; Decriptor type
dw 1001H ;; Specification Version (BCD)
db 00H ;; Device class
db 00H ;; Device sub-class
db 00H ;; Device sub-sub-class
db 40H ;; Maximum packet size
dw 0B404H ;; Vendor ID
dw 0255H ;; Product ID
dw 0100H ;; Product version ID
db 1 ;; Manufacturer string index
db 2 ;; Product string index
db 0 ;; Serial numberstring index
db 1 ;; Number of configurations
deviceDscrEnd:
ConfigDscr:db ConfigDscrEnd-ConfigDscr;; Descriptor length
db DSCR_CONFIG ;; Descriptor type
db StringDscr-ConfigDscr;;Configuration+EndPoints length
(LSB)
db (StringDscr-ConfigDscr)/256;;Configuration +
EndPointslength(MSB)
db 1 ;; Number of interfaces
db 1 ;; Interface number
db 0 ;; Configuration string
db 10000000b;; Attributes (b7 - buspwr, b6 - selfpwr, b5 -
rwu)
db 0FAH ;; Power requirement (div 2 ma)
ConfigDscrEnd:
IntrfcDscr:
db IntrfcDscrEnd-IntrfcDscr;; Descriptor length
db DSCR_INTRFC ;; Descriptor type
db 0 ;; Zero-based index of this interface
db 0 ;; Alternate setting
db 2 ;; Number of end points
db 03H ;; Interface class (HID)
db 00H ;; Interface sub class
db 00H ;; Interface sub sub class
db 05H ;; Interface descriptor string index
IntrfcDscrEnd:
HIDDscr:
db 09h ;; length
db 21h ;; type: HID
dw 1001h ;; release: HID class rev 1.1
db 00h ;; country code (USA)
db 01h;; number of HID class descriptors tofollow
db 22h ;; report descriptor type (HID)
db (ReportDscrEnd-ReportDscr);;lengthofHID descriptor
db 00h
HIDDscrEnd:
Ep1InDscr:
db Ep1InDscrEnd-Ep1InDscr;; Descriptor length
db DSCR_ENDPNT ;; Descriptor type
db 81H ;; Endpoint number, and direction
db ET_INT ;; Endpoint type
db 40H ;; Maximum packet size (LSB)
db 00H ;; Max packet size (MSB)
db 1 ;; Polling interval (ms)
Ep1InDscrEnd:
Ep2OutDscr:
db Ep2OutDscrEnd-Ep2OutDscr;; Descriptor length
db DSCR_ENDPNT ;; Descriptor type
db 02H;; Endpoint number, and direction
db ET_INT ;; Endpoint type
db 40H ;; Maximum packet size (LSB)
db 00H ;; Max packet size (MSB)
db 1 ;; Polling interval (ms)
Ep2OutDscrEnd:
ReportDscr:
db 06h, 0A0h, 0FFh ;; Usage Page (FFA0H = vendor defined)
db 09h, 01h ;; Usage (vendor defined)
db 0A1h, 01h ;; Collection (Application)
;; The input report
db 09h, 01h ;; Usage (vendor defined)
db 15h, 00h ;; Logical minimum (0)
db 25h, 0FFh ;; Logical maximum (255)
db 75h, 08h ;; Report size (8 bits)
db 95h, 40h ;; Report count (64 fields)
db 81h, 02h;; Input (Data, variable, absolute)
;; The output report
db 09h, 02h ;; Usage (vendor defined)
db 75h, 08h ;; Report size (8 bits)
db 95h, 40h ;; Report count (64 fields)
db 91h, 02h;; Output (Data, Variable, Absolute)
;; The feature report
db 09h, 03h;; Usage Page (vendor defined)
db 75h, 08h ;; Report size (8 bits)
db 95h, 05h ;; Report count (5 fields)
db 0B1h, 02h;; Output (Data, variable, absolute)
db 0C0h ;; End Collection
ReportDscrEnd: Tag: About Driver pack Tag: 38457
Hi ,want some tips about the report descriptor of a HID device,thankyou
Hi,now the HID device can be write ,but not read ,and app is
following:
Result = ReadFile (ReadHandle,
InputReport,
Capabilities.InputReportByteLength,
&NumberOfBytesRead,
(LPOVERLAPPED) &HIDOverlapped);
cout<<"ReadFile: "<<GetLastError()<<endl ;
GetLastError's return is always TIMEOUT.I think that it is something
wrong in the firmware,but I cannot find them out ,hope some tips ,the
following is the report descriptor:
PS: Createfile and Writefile are normal.
DSCR_DEVICE equ 1;; Descriptor type: Device
DSCR_CONFIG equ 2;; Descriptor type: Configuration
DSCR_STRING equ 3;; Descriptor type: String
DSCR_INTRFC equ 4;; Descriptor type: Interface
DSCR_ENDPNT equ 5;; Descriptor type: Endpoint
ET_CONTROL equ 0;; Endpoint type: Control
ET_ISO equ 1;; Endpoint type: Isochronous
ET_BULK equ 2;; Endpoint type: Bulk
ET_INT equ 3;; Endpoint type: Interrupt
public DeviceDscr, ConfigDscr, StringDscr, UserDscr, HIDDscr,
ReportDscr, ReportDscrEnd
DSCR SEGMENT CODE
;;-----------------------------------------------------------------------------
;; Global Variables
;;-----------------------------------------------------------------------------
;; Note: This segment must be located in on-part memory.
rseg DSCR;; locatethedescriptortableanywherebelow 8K
DeviceDscr:db deviceDscrEnd-DeviceDscr;; Descriptor length
db DSCR_DEVICE ;; Decriptor type
dw 1001H ;; Specification Version (BCD)
db 00H ;; Device class
db 00H ;; Device sub-class
db 00H ;; Device sub-sub-class
db 40H ;; Maximum packet size
dw 0B404H ;; Vendor ID
dw 0255H ;; Product ID
dw 0100H ;; Product version ID
db 1 ;; Manufacturer string index
db 2 ;; Product string index
db 0 ;; Serial numberstring index
db 1 ;; Number of configurations
deviceDscrEnd:
ConfigDscr:db ConfigDscrEnd-ConfigDscr;; Descriptor length
db DSCR_CONFIG ;; Descriptor type
db StringDscr-ConfigDscr;;Configuration+EndPoints length
(LSB)
db (StringDscr-ConfigDscr)/256;;Configuration +
EndPointslength(MSB)
db 1 ;; Number of interfaces
db 1 ;; Interface number
db 0 ;; Configuration string
db 10000000b;; Attributes (b7 - buspwr, b6 - selfpwr, b5 -
rwu)
db 0FAH ;; Power requirement (div 2 ma)
ConfigDscrEnd:
IntrfcDscr:
db IntrfcDscrEnd-IntrfcDscr;; Descriptor length
db DSCR_INTRFC ;; Descriptor type
db 0 ;; Zero-based index of this interface
db 0 ;; Alternate setting
db 2 ;; Number of end points
db 03H ;; Interface class (HID)
db 00H ;; Interface sub class
db 00H ;; Interface sub sub class
db 05H ;; Interface descriptor string index
IntrfcDscrEnd:
HIDDscr:
db 09h ;; length
db 21h ;; type: HID
dw 1001h ;; release: HID class rev 1.1
db 00h ;; country code (USA)
db 01h;; number of HID class descriptors tofollow
db 22h ;; report descriptor type (HID)
db (ReportDscrEnd-ReportDscr);;lengthofHID descriptor
db 00h
HIDDscrEnd:
Ep1InDscr:
db Ep1InDscrEnd-Ep1InDscr;; Descriptor length
db DSCR_ENDPNT ;; Descriptor type
db 81H ;; Endpoint number, and direction
db ET_INT ;; Endpoint type
db 40H ;; Maximum packet size (LSB)
db 00H ;; Max packet size (MSB)
db 1 ;; Polling interval (ms)
Ep1InDscrEnd:
Ep2OutDscr:
db Ep2OutDscrEnd-Ep2OutDscr;; Descriptor length
db DSCR_ENDPNT ;; Descriptor type
db 02H;; Endpoint number, and direction
db ET_INT ;; Endpoint type
db 40H ;; Maximum packet size (LSB)
db 00H ;; Max packet size (MSB)
db 1 ;; Polling interval (ms)
Ep2OutDscrEnd:
ReportDscr:
db 06h, 0A0h, 0FFh ;; Usage Page (FFA0H = vendor defined)
db 09h, 01h ;; Usage (vendor defined)
db 0A1h, 01h ;; Collection (Application)
;; The input report
db 09h, 01h ;; Usage (vendor defined)
db 15h, 00h ;; Logical minimum (0)
db 25h, 0FFh ;; Logical maximum (255)
db 75h, 08h ;; Report size (8 bits)
db 95h, 40h ;; Report count (64 fields)
db 81h, 02h;; Input (Data, variable, absolute)
;; The output report
db 09h, 02h ;; Usage (vendor defined)
db 75h, 08h ;; Report size (8 bits)
db 95h, 40h ;; Report count (64 fields)
db 91h, 02h;; Output (Data, Variable, Absolute)
;; The feature report
db 09h, 03h;; Usage Page (vendor defined)
db 75h, 08h ;; Report size (8 bits)
db 95h, 05h ;; Report count (5 fields)
db 0B1h, 02h;; Output (Data, variable, absolute)
db 0C0h ;; End Collection
ReportDscrEnd: Tag: About Driver pack Tag: 38456
usb with ohci?..any simple tutorials?..code?
Howdy all,
well I was wondering if anyone had come across some really simple...but
good tutorials on the ohci specification with code...and how to use it with
a usb device...very low level stuff...for example mapping to the registers
in memory ...testing for bits...and with simple code examples that would
explain why......not working through the os though...a kernel driver
possible...like that is done in linux :)
Thanx for any help :)
Ben Tag: About Driver pack Tag: 38453
CMOS sensor - USB Trust 120 Spacec@m Webcam
Hello.
Can someone tell me the name/model of the CMOS sensor in
the above webcam? Or an hint on how to retrieve it?
I don't have datasheets. Trust and Google don't help.
The name is not written on the hardware.
I analyzed the drivers for windows
(40 MB of zipped shit for just a driver..hu..): nothing
The only information is the it has 28 pins: **nothing** more.
Any idea would be much appreciated.
Thanks in advance. Tag: About Driver pack Tag: 38441
HCT 11.2 - TestImports Problem
Can someone help me understand what this error means:
ERROR: 71: Public Imports Test failed to run, TestImports function call
failed.
This is from a run of HCT with an NDIS IM driver. What's odd is the NDISTEST
1c_KernelCalls passes (I assume that TestImports checks for invalid kernel
calls from an NDIS driver).
Also, the driver is not binary compatible (it's only used for XP). Would
that cause this problem. Tag: About Driver pack Tag: 38439
HCT 11.2 - TestDrivers failure
Can someone help me understand what this error means:
ERROR: 71: Signability Test failed to run, TestDrivers function call failed.
This is from a run of HCT with an NDIS IM driver. Also, the driver is not
binary compatible (it's only used for XP). Would that cause this problem. Tag: About Driver pack Tag: 38438
Service Name Issues With CheckInf
I get the following error with checkinf from Windows 2003 DDK:
Line 77: ERROR: (E22.1.1014) Service Net6IM already using binary
$WinDir$\system32\drivers\net6im50.sys.
This is odd since I am using the same service for both W2K and XP
installations. However, I've added a target OS version in the Manufacturer
section and am using separate NDI's for the OSs that the inf is used on.
Is this a WHQL requirement that different services must be used on different
OSs or is this a problem with the chkinf tool? Tag: About Driver pack Tag: 38437
AVSTREAM and Power Management
Hi,
Is there any pointer on how to implement Power management in a Avstream minidriver
I have a video capture device that causes the machine to hang when it tries to resume from Standby. The device is USB2.0 compliant Tag: About Driver pack Tag: 38431
ExtEscape directly to video miniport
Is it possible to do a createdc on a video miniport driver(.sys) and send it
escapes, or do i have to connect to the display driver(.dll) and send it
escapes?
Thanks a million
Brian Tag: About Driver pack Tag: 38429
FYI: Recently Published KBs
FIX: Drivers That Have Images That Are Larger Than 16 Megabytes May Corrupt
Memory When Loaded
http://support.microsoft.com/default.aspx?scid=kb;EN-US;827484
How to call video miniport driver functions from a display driver
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q832517
FIX: A USB Device Appears with a Yellow Exclamation Mark (Code 31) in
Windows Device Manager
http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q822368
Accelerated Graphics Port (AGP) memory allocation
http://support.microsoft.com/default.aspx?scid=kb;EN-US;819637
Multimedia device does not shut down correctly if you unplug the device
during streaming
http://support.microsoft.com/default.aspx?scid=kb;EN-US;816650
Composite USB devices whose interfaces are not sequentially numbered do not
work on Windows XP
http://support.microsoft.com/default.aspx?scid=kb;EN-US;814560
Change in how self-directed loopback packets are processed for Windows XP
http://support.microsoft.com/default.aspx?scid=kb;EN-US;813542
FIX: Selective Suspend Does Not Work on Video Capture Devices That Use the
Stream Class Driver
http://support.microsoft.com/default.aspx?scid=kb;EN-US;813348
BUG: The 1394 host controller properties dialog box incorrectly shows the
Power Management tab
http://support.microsoft.com/default.aspx?scid=kb;EN-US;328902
How to identify identical 16-bit PC cards that are inserted in different
slots
http://support.microsoft.com/default.aspx?scid=kb;EN-US;323610
BUG: Known issues with intermediate (IM) driver samples
http://support.microsoft.com/default.aspx?scid=kb;EN-US;323458
You cannot use Control Panel to calibrate a joystick that has no buttons
http://support.microsoft.com/default.aspx?scid=kb;EN-US;318919
How to use the DDKSynth audio sample on Windows 98 and on Windows Millennium
Edition
http://support.microsoft.com/default.aspx?scid=kb;EN-US;318772
PRB: Video Driver Installation Is Unsuccessful When You Click the Update
Driver Button in Device Manager
http://support.microsoft.com/default.aspx?scid=kb;EN-US;314283
Windows 98 Smartcard drivers must call the SmartcardCreateLink function
http://support.microsoft.com/default.aspx?scid=kb;EN-US;300600
Smart card power down behavior on Windows 2000 and earlier operating systems
http://support.microsoft.com/default.aspx?scid=kb;EN-US;297854
--
-Eliyas
This posting is provided "AS IS" with no warranties, and confers no rights.
http://www.microsoft.com/whdc/hwdev/driver/kb-drv.mspx Tag: About Driver pack Tag: 38423
Audio synchronization
I need to synchronize audio with another output device.
Can I do this with an interrupt driven heartbeat generated
by the output device. The synchronization only needs to
be visually accurate, in other words I'm not concerned
about microseconds, but I would like to be accurate to 100
milliseconds.
My initial thought is to have my interrupt routine begin a
100ms segment of audio. The next interrupt would stop the
previous segment (if the audio is behind) and then play
the next segment. My "interrupt routine" would probably
be a thread at the application level waiting for my device
to interrupt. I don't think I would need to place this in
my device's DPC.
I've been reading up on the Wavform Audio Interface, is
this the correct area? There must be some support for
this built into the interface to facilitate the usage of a
scroll bar to scan through an audio file. My questions
are, am I looking in the right place and a corrollary, how
flexible is the interface? I don't want to waste research
time going down a false path.
Brian Tag: About Driver pack Tag: 38421
Picture transfer protocol
Folks,
I would like to acquire images and change camera settings
under program control, using a Nikon Coolpix camera
connected via USB, and the Nikon SDK (which I have). I
gather this requires PTP and WIA, but am so far entirely
ignorant of these technologies. I'd really appreciate it
if someone would give me a pointer to documentation that
could get me started. (The information I've obtained by
searching msdn seems pretty disorganized so far.)
Thanks much,
Matthew Fleming
mgf@mcw.edu Tag: About Driver pack Tag: 38415
INF files help
Ok, in my device driver install inf, I would either like to luanch an
application or force a reboot or let the user know to reboot. Does anyone
know of a way to accomplish this?
Thanks
Brian Tag: About Driver pack Tag: 38413
ZwCreateFile failing
Hi,
I have a routine which open the file handle for me. It
works fine as long as no one touches the file from
Explorer. But once someone opens the file from explorer
the driver create file always fails with status LOCK
CONFLICT. Here is the file open code.
Any clues.
-Praveen
RtlInitUnicodeString(&fileName, L"\\??\\C:\\MyDrvTest");
InitializeObjectAttributes(&objectAttributes,
(PUNICODE_STRING)&fileName,
OBJ_CASE_INSENSITIVE|OBJ_KERNEL_HANDLE ,
NULL,
NULL);
status=ZwCreateFile(&fileHandle,
GENERIC_READ|GENERIC_WRITE|SYNCHRONIZE,
&objectAttributes,
&IoStatus,
0,
FILE_ATTRIBUTE_SYSTEM,
FILE_SHARE_READ|FILE_SHARE_WRITE,
FILE_OPEN_IF,
FILE_SYNCHRONOUS_IO_NONALERT|FILE_NO_INTERMEDIATE_
BUFFERING,
NULL,
0); Tag: About Driver pack Tag: 38412
Difference between IoBuildPartialMdl and IoAllocateMdl
Which is the difference between the function
IoBuildPartialMdl and IoAllocateMdl?
Apparement they allocate all two MDL;
I do not see any difference in operation,
why in IoBuildPartialMdl there is like parameter " IN
PVOID VirtualAddress "??
Nothing understood, the address is already in sourcemdl-
>startva!
Will be used to you it for dedoubler an address virtual?
apparament not
How can you one read the true pointer MDL corresponding at
address memory indicated?
because when I modify a property of a variable pointer
MDL, the address memory corresponding to this MDL remains
similar Tag: About Driver pack Tag: 38407
Error USBD_STATUS_ISO_NOT_ACCESSED_BY_HW
Hello:
What is the meaning and cause of usb packet error
USBD_STATUS_ISO_NOT_ACCESSED_BY_HW (code 0xC0020000)
returned by urb->UrbIsochronousTransfer.IsoPacket
[PacketNumber].Status? I am getting this error
occasionally (a few percent of all packets) when
streaming bidirectional (1 stream out, 1 stream in,
simultaneously using 2 alternating urbs for outgoing and
2 for incoming) high speed usb 2.0 isochronous data to a
custom hardware device. I am using 16 microframe urbs
and the error always occurs on microframes 1, 2, and
sometimes 3 of the 16 that are being transferred. All
microframes before and after this complete normally. It
affects both read and write urbs. OS is WinXp SP1 with
USB patch. Usb.h states that "for some reason the
controller did not access the TD asocated with this
packet" as explanation for this error.
Thanks Doug Tag: About Driver pack Tag: 38405
I refuse to believe this....
When installing a printer driver, Add-Printer etc etc, it prompts me for a
printer name just before finishing the installation.
I have two printer models, but would like to use the same printer name..
without having to manually enter it.
Is there really no way that I in my INF file can provide a default printer
name ?
TIA
Lars
;
; Copyright (c) 2002-2003 I/F-Com
;
; Sets up basic information on the driver
;
[Version]
Signature="$Windows NT$"
Provider=%MANUFACTURER%
ClassGUID={4D36E979-E325-11CE-BFC1-08002BE10318}
Class=Printer
CatalogFile=ifcom.cat
DriverVer=10/05/2003,1.3.0.10
; sets up destination folders
;
[DestinationDirs]
DRIVERPATH=66000
PROCESSPATH=66001
BIDIRPATH=66002
; set manufacturer
;
[Manufacturer]
%MANUFACTURER%
; set available printers
;
[I/F-Com]
"Ifcom Thermal Printer" = SETUP_DRIVER, IFCOM_Driver
"Ifcom Thermal Printer (bidir)" = SETUP_DRIVER_BIDIR, IFCOM_Driver_Bidir
; driver setup section
;
[SETUP_DRIVER]
CopyFiles=DRIVERPATH,PROCESSPATH
DataSection=DATA_SECTION
[SETUP_DRIVER_BIDIR]
CopyFiles=DRIVERPATH,PROCESSPATH,BIDIRPATH
DataSection=DATA_SECTION_BIDIR
[SourceDisksNames]
1=%DISKLOCATION%
[SourceDisksFiles]
ifc_drv.dll=1
ifc_ui.dll=1
ifc_lm.dll=1
basics.ini=1
boards.ini=1
help.ini=1
ifc_drv.ini=1
printers.ini=1
installer.exe=1
properties.exe=1
updater.exe=1
diagnostics.exe=1
; actual copying of files
;
[DRIVERPATH]
ifc_drv.dll,,,0x00000002
ifc_ui.dll,,,0x00000002
ifc_drv.ini,,,0x00000002
basics.ini,,,0x00000002
boards.ini
help.ini
printers.ini
installer.exe
properties.exe
updater.exe
diagnostics.exe
[PROCESSPATH]
[BIDIRPATH]
ifc_lm.dll
; driver setup
;
[DATA_SECTION]
DriverFile=ifc_drv.dll
DataFile=ifc_drv.ini
ConfigFile=ifc_ui.dll
HelpFile=help.ini
[DATA_SECTION_BIDIR]
DriverFile=ifc_drv.dll
DataFile=ifc_drv.ini
ConfigFile=ifc_ui.dll
HelpFile=help.ini
LanguageMonitor=%LANGUAGEMONITOR%,ifc_lm.dll
; strings
;
[Strings]
MANUFACTURER="I/F-Com"
DISKLOCATION="Current Location"
LANGUAGEMONITOR="Ifcom Language Monitor" Tag: About Driver pack Tag: 38403
BUG: Known issues with intermediate (IM) driver samples
FYI:
Microsoft Knowledge Base Article - 323458
BUG: Known issues with intermediate (IM) driver samples
http://support.microsoft.com?id=323458
Stephan Tag: About Driver pack Tag: 38399
compilation problem
i am not able to get .sys for ndisuio.
code gets compile without any problem on win2k checkbuild.
----------
C:\WINDDK\2600~1.110\src\network\ndis\ndisuio\sys>build
BUILD: Adding /Y to COPYCMD so xcopy ops won't hang.
BUILD: Object root set to: ==> objchk_w2K_x86
BUILD: Compile and Link for i386
BUILD: Loading C:\WINDDK\2600~1.110\build.dat...
BUILD: Computing Include file dependencies:
BUILD: Examining c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys
direc
tory for files to compile.
c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys - 7 source
files (
4,981 lines)
BUILD: Saving C:\WINDDK\2600~1.110\build.dat...
BUILD: Compiling c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys
direc
tory
Compiling - objchk_w2k_x86\i386 for all platforms
Compiling - objchk_w2k_x86\i386 for all platforms
Compiling - objchk_w2k_x86\i386 for all platforms
BUILD: Linking c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys
directo
ry
Compiling - objchk_w2k_x86\i386 for all platforms
Compiling - objchk_w2k_x86\i386 for all platforms
Compiling - objchk_w2k_x86\i386 for all platforms
BUILD: Done
3 files compiled
-------------------------------------------------------------------
build log shows
-----------------
BUILD: Computing Include file dependencies:
BUILD: Examining c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys
directory for files to compile.
Compiling c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys
directory ********************
'nmake.exe /c BUILDMSG=Stop. -i NTTEST= UMTEST= NOLINK=1 NOPASS0=1 386=1'
jvc /nologo /cp
C:\WINDDK\2600~1.110\public\sdk\classes\afc.zip;C:\WINDDK\2600~1.110\public\
sdk\classes\classes.zip;C:\WINDDK\2600~1.110\src\network\Copyofndis\ndisuio\
sys; /g /w4 /d objchk_w2K_x86\i386
'jvc' is not recognized as an internal or external command,
operable program or batch file.
jvc /nologo /cp
C:\WINDDK\2600~1.110\public\sdk\classes\afc.zip;C:\WINDDK\2600~1.110\public\
sdk\classes\classes.zip;C:\WINDDK\2600~1.110\src\network\Copyofndis\ndisuio\
sys; /g /w4 /d objchk_w2K_x86\i386
'jvc' is not recognized as an internal or external command,
operable program or batch file.
jvc /nologo /cp
C:\WINDDK\2600~1.110\public\sdk\classes\afc.zip;C:\WINDDK\2600~1.110\public\
sdk\classes\classes.zip;C:\WINDDK\2600~1.110\src\network\Copyofndis\ndisuio\
sys; /g /w4 /d objchk_w2K_x86\i386
'jvc' is not recognized as an internal or external command,
operable program or batch file.
Linking c:\winddk\2600~1.110\src\network\copy of ndis\ndisuio\sys directory
********************
'nmake.exe /c BUILDMSG=Stop. -i LINKONLY=1 NOPASS0=1 NTTEST= UMTEST= 386=1'
jvc /nologo /cp
C:\WINDDK\2600~1.110\public\sdk\classes\afc.zip;C:\WINDDK\2600~1.110\public\
sdk\classes\classes.zip;C:\WINDDK\2600~1.110\src\network\Copyofndis\ndisuio\
sys; /g /w4 /d objchk_w2K_x86\i386
'jvc' is not recognized as an internal or external command,
operable program or batch file.
jvc /nologo /cp
C:\WINDDK\2600~1.110\public\sdk\classes\afc.zip;C:\WINDDK\2600~1.110\public\
sdk\classes\classes.zip;C:\WINDDK\2600~1.110\src\network\Copyofndis\ndisuio\
sys; /g /w4 /d objchk_w2K_x86\i386
'jvc' is not recognized as an internal or external command,
operable program or batch file.
jvc /nologo /cp
C:\WINDDK\2600~1.110\public\sdk\classes\afc.zip;C:\WINDDK\2600~1.110\public\
sdk\classes\classes.zip;C:\WINDDK\2600~1.110\src\network\Copyofndis\ndisuio\
sys; /g /w4 /d objchk_w2K_x86\i386
'jvc' is not recognized as an internal or external command,
operable program or batch file.
--------------------
i have changed some options in SOURCES files, i removed "-DNDIS51=1", as i
was compiling for 5.0. and also in bind i removed 80211 headers.
any idea why it is so. Tag: About Driver pack Tag: 38395
CreateFile failure
Hi all,
i have been trying to get handle of my protocol driver from usermode but not
able to get. attaching the code. van you tell me where can be the error.
Device name is "Proto".
CHAR ProtoDevice[] = "\\\\.\\\\Proto";
CHAR * pProtoDevice = &ProtoDevice[0];
HANDLE
GetHandle(
CHAR *pDeviceName
)
{
DWORD DesiredAccess;
DWORD ShareMode;
LPSECURITY_ATTRIBUTES lpSecurityAttributes = NULL;
DWORD CreationDistribution;
DWORD FlagsAndAttributes;
HANDLE TemplateFile;
HANDLE Handle;
DWORD BytesReturned;
DesiredAccess = GENERIC_READ|GENERIC_WRITE;
ShareMode = 0;
CreationDistribution = OPEN_EXISTING;
FlagsAndAttributes = FILE_ATTRIBUTE_NORMAL;
TemplateFile = (HANDLE)INVALID_HANDLE_VALUE;
Handle = CreateFile(
pDeviceName,
DesiredAccess,
ShareMode,
lpSecurityAttributes,
CreationDistribution,
FlagsAndAttributes,
TemplateFile
);
if( Handle == INVALID_HANDLE_VALUE )
{
Handle = CreateFile(
"\\\\.\\Global\\Proto",
DesiredAccess,
ShareMode,
lpSecurityAttributes,
CreationDistribution,
FlagsAndAttributes,
TemplateFile
);
}
return (Handle);
}
any idea how to make it work.
regards,
Puneet Tag: About Driver pack Tag: 38391
Device Object NULL in completion routine
Hi,
In my FSD filter, I am building up my own IRP to send to the
lower driver so that I can get some info (QueryDirectory)
about a directory. The problem is that when my completion
routine is called, it contains proper data, but the device object
I get is NULL (is this normal?). Also my stack location seems to be wrong
since it no longer contains the parameters (minor/major functions say),
that I setup.
Any clues?
TIA,
--
-Farooque Khan
http://farooque.150m.com Tag: About Driver pack Tag: 38390
Class GUID issue
Hi
I write a new driver for 2k/xp,this device is not in system-supplied device
setup class.
so , I create my class name and GUID myself in inf file.
I use ClassInsatll32 section,so,It is ok when install my driver to OS. And
driver can work normal.
But the inf file is tested by HCT11.2's infcheck,It have a error that "class
### is unrecognized".
Please tell me, if i miss some phase.
Best Regards,
Alex Tag: About Driver pack Tag: 38385
contraints for pagespersheet and booklet
Hello
how do u contraint print proc provided features ( N-UP and Booklet )
in Unidrv .
pagespersheet is not a standard feature in Unidrv ( not a *Feature )
is this correct.
thanks
-Naveen Tag: About Driver pack Tag: 38377
API to rollback driver?
Does anyone know of a way to invoke the "Roll Back
Driver" functionality of Windows XP programmatically?
I've searched the MSDN docs and the web to no avail...
Anyhow, I'd like to invoke a rollback during an uninstall
of a "custom" driver, so that we can revert to the
default driver when uninstalling ours.
Thanks in advance,
Lee Tag: About Driver pack Tag: 38376
Maximum StrMini Driver Size??
I am developing a stream class mini driver based on usbcamd. Today I ran
into an extremely odd BSOD that I initially thought was related to some
memory management code that I had added. It turns out that the problem is
that I added code. I have reached the state where the following will take
the driver from functional to non-functional.
int i
for(i=0;i<1;++i){}
I can add this, or equally useless code in a variety of different functions
(none of which are called) and cause this error. The BSOD message is about
a page fault in the non-paged area caused by ks.sys. It occurs when I
attempt to render the capture pin on the filter. The driver can be loaded
and unloaded as many times as one likes without error.
I am wondering if this can be related to SRB_PAGING_OUT_DRIVER? I noticed
that the INF file (intelcam) I copied does set PageOutWhenUnopened registry
setting. Is it possible that enabling this can cause this error or is there
some other possibility?
This is running on XP Pro SP1.
Regards,
Tom Udale Tag: About Driver pack Tag: 38374
Sound Capture
Hi, I have a problem.... actually it is a thing to do on my list, and I
wondering if anyone can give me a hint or two on where to look for tackling
it.
Well, all I need to do is to intercept and capture sound (wav or raw doesn't
matter) that only a certain application generates opposed to whole system
(all apps.).
The app. uses none of the fancy directx stuff, just plain win32 APIs (MCI I
think)
Any thought on how should I begin looking for this solution?
Thanks in Advance,
Paul Tag: About Driver pack Tag: 38373
Win2k printer minidrivers running on NT 4?
Is it possible to run Win2k printer minidrivers
(Unidrv-based) on NT4? I'm told that SP6 installs Unidrv -
is it compatible?
Thanks,
Aaron Tag: About Driver pack Tag: 38371
Device Extension for NDIS miniport driver
I am writing a NDIS miniport driver. From DDK
documentation, I was told to use NdisRegisterDevice
instead of IoCreateDevice to create a device object.
However, the same documentation also says that the device
extension for an object created with NdisMRegisterDevice
is reserved for use by NDIS and cannot be used by the
driver. I want to modify the device extension to store any
state status and information. How can I do that?
Thanks,
Billy. Tag: About Driver pack Tag: 38370
Win2000 startup w/o VGA
Can an embedded Win2000 system be started without VGA,
keyboard and mouse hardware? NT4.0 used to choke when VGA
was absent. Thanks. Tag: About Driver pack Tag: 38369
SetupCopyOEMInf - avoiding prompts during install
I have a new driver install and an old driver install that use different
source media locations. I have been using SPOST_PATH for the
OEMSourceMediaType when I call SetupCopyOEMInf. This is leading to setup
problems because the old INF is selected by SetupAPI during install. This
INF points to an installation directory that does not exist and the user is
prompted for the correct location of required files.
I think the root of this problem is that the PNF has to old source media
information. Should I call SetupCopyOEMInf with SP_COPY_REPLACEONLY copy
style to update the old PNF if it exists and then call it again with the
SP_COPY_NOOVERWRITE copy style to copy it sure the PNF has the current
source path info (if needed)?
I'm installing an IM driver on 2000/XP.
Thanks,
Shawn Tag: About Driver pack Tag: 38364
Hardware ID in win 2000 and UpdateDriverForPNP
My .inf has an entry for that says _01
%xyz.DeviceDesc%=xyz.Device,USB\VID_xxx&PID_yyy
I am trying to install the driver for the device for the case where
the device is plugged in but the Add New hardware wizard was cancelled
by the user.
Now, if I pass the HWID "USB\\VID_xxx&PID_yyy", updateDriverfor..
fails with 20B (no_such_device) I think.
Then if I change it to "USB\\VID_xxx&PID_yyy&Rev_0001" (which I know
from the registry whenever I install this successfully in the nice ol'
plug device after software installation way) AND also change it in
.INF, my updatedriver.. succeeds and device is shown working properly
with the correct name in device manager.
So my question is, what is that Rev.. thing? is it like a hardware
revision? if so, I would not know every possible revision number in
advance and would like to keep it generic for the device? How do I
achieve that? What is the correct entry in .INF and correct HardwareID
to be passed to the function updatedriver..
Thanks for your time. Tag: About Driver pack Tag: 38363
Installing devices
Could you give me any example how to programmatically
install devices. It should work properly at 9x, 2000/XP
platforms.
I've tried "working" samples from ddk's, but they were not
worked properly.
Thank you. Tag: About Driver pack Tag: 38360
I want to know how to pack the printer driver.
My driver include following files:
Win9x/XXX.INF,XXX.DRV
Win2K/XXX.INF,XXX.GPD,XXX.DLL
Thanks.