assembly routine return values in which regs??
Folks,
For IA32 assembly code, the return values from routine will be stored in ECX
& EAX registers.....
For AMD64 assembly code, will the return values be stored in RCX & RAX
registers?
Also, (in AMD64) if the routine just need to return single byte, then would
it just need to store it in AL register (& word means AX, DWORD means EAX and
so on)??
--
++Sathya Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76854
unidrv plugins and dialog boxes
I have been having difficulty trying to determine where it is possible
to display a dialog box from a unidrv plug-in. From what I read in
the documentation it appears as though both UI and rendering plugins
run in the application's context, before anything is sent to the
spooler. If this is indeed the case I would assume that it would be
possible to display a dialog box to capture document specific
properties during EnablePDEV processing in a rendering plug-in. This
would allow me to capture things like fax #s for each document by
displaying a dialog to the user who started the job. I further assume
that the dialog box would appear in a particular user's termnal
services window.
Are my assumptions correct or am I completely out to lunch? If I am
out to lunch what would be the easiest way to capture fax #s for each
individual document in a terminal services environment? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76853
MONITOR_INFO_2
What are the values pEnvironment member of MONITOR_INFO_2 can take today?
The below is from the documentation, which I beleive is old. What about 64
bit systems(itanium and
AMD)?
pEnvironment
Pointer to a null-terminated string that specifies the environment for
which the monitor was written (for example, Windows NT x86, Windows NT
R4000, Windows NT Alpha_AXP, or Windows 4.0).
--
Vipin Aravind
http://www.explorewindows.com Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76852
Word crashes with my printer driver, but no other programs do.
Hi,
I'm developing a printer driver UI based on the MSPLOTUI sample from
the DDK.
It works great from all applications except Word, which craches. It
seems that Word is calling some functions on the driver that the other
programs don't. Can anyone give me a list of the printer driver
functions that Word calls, and the order they are called?
/Erik Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76851
Large Transfer Lengths With SCSI Pass-Through?
Is it possible to make transfer larger then 64KB via SCSI Pass-Through?
If so how is the best way to go about it?
If this is SCSI HBA dependent how can you tell the maximum transfer length
size allowed?
I looking to test up to 16MB transfers. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76849
Write a WDM driver
Hi,
I wanted to write a Mouse filter driver which will intercept the mouse
click and trigger the user applications like those in the logitech ,
but not their own.. i wanted to invoke my own applicatoins.
I have tried to write the mouse driver but got stuck..
I am stuck at this point as what approach I should take? If I should
take the HID class help or what ... ?
I have fair understanding of the WDM but not done any fillter
drivers...
I want to the driver on the machines and configure the mouse to open my
application intercepting the mouse clicks..
I would really appreciate if anybody gives me the proper direction on
designing the driver..
thanks.
--
Abhijit. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76848
installing a driver using devcon
hello,
i have a weird behavior i don't understand -
i'm using devcon in order to install a software driver. when i put the
sys and inf file in any folder (even hidden) everything is ok, but when
i put them in the c:\windows\inf file there is a pop up asking for the
sys file (and when i direct it to the inf folder it installs it).
why is that? how do i solve that?
thank you, Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76847
Causes of USBD_STATUS_ISO_NOT_ACCESSED_BY_HW
Greetings,
I realize in my previous post "NEC B1 HC chokes with full BW USB2 ISO IN
stream" my primary question was hidden in a flurry of details.
Can I be doing something in my USB camera driver to cause the
USBD_STATUS_ISO_NOT_ACCESSED_BY_HW error I am seeing with the NEC host
controller? The only thing I have heard of that causes this error is
URB starvation. That is clearly not the trouble. I am queuing 10 URBs
of 32 packets each. Also, the driver works perfeftly under the VIA
controller. Is there some subtle error I might be causing that effects
the NEC controller but not the VIA one, or is there simply a bug in the
NEC controller?
Best regards,
Tom Udale Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76846
WDF Driver Install problem
Hi, I'm developing a WDF driver for a PCI device. I have written a simple
driver and the INF. The INF file seems ok when used with CHKINF. When i
install it on the target system (XP checked build 2600) everything looks ok
but at the end it simply says the drivers are not installed. Looking in
WinDBG reveals the following when the driver installs:
InstallDev error = 643
Anyone have any suggestions? Have tried to find information on the error
but am having trouble finding anything.
Thanks in advance. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76844
PC as USB device
Is it possible that I can design an application running on my PC behave
as an USB device to another USB host(running on a SH7727 board)? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76840
DDK PCIDRV + NDISEDGE cannot be loaded in Vista B2.
I built the winddk samples of pcidrv and ndisedge in longhorn x86 build
environment of winddk, and used the netdrv.inf to install them in Vista Beta2.
ndisedge.sys is loaded as the upper filter driver of pcidrv, and the
DriverEntry() is called. However, the MPInitialize() never been called,
instead, MPUnload() in ndisedge.sys is called and the filter driver is
unloaded. pcidrv.sys itself is working Ok.
Anyone has suggestion what I did wrong ? build or install ?
or the ndisedge.sys itself has problem ?
Thanks in advance.
-Gary Li Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76831
Q) What's better way.(Using DriverStudio from Compuware or Win DDK sample source code)
Subject : What's better way.(Using DriverStudio from Compuware or Win DDK
sample source code)
Hello every one,
I have a DriverStudio that has a feature to generate a Driver source code
automatically.
Is it better way to adapt a source code from DriverStudio not from Win DDK
sample source code?
Please share your experience or your suggestion.
Detail experience will be more appreciate.
Thank you.
// Daum Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76829
help! driver
driver for:
Scanner TRUST IMAGERY 4800 EASY
for WINDOWS XP
porta parallela
grazie
Mark Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76822
NTFS writing
I have a device that supports writing in 64K blocks only. To write say
4096, I need to read 64K, update 4096, then write 64K. This causes
significant performance degradation with NTFS. Is there any way, like
reporting certain geometry or whatever, to make NTFS send bigger write
chunks to the device whenever possible, especially when updating MFT?
Thanks! Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76820
NEC B1 HC chokes with full BW USB2 ISO IN stream
Greetings,
I have tracked down a bug that looks for all the world like it is caused
by the NEC B1 HC on the Adaptec USB2 PCI interface card I have. The
host is a MP Athlon system running XP SP1 with the Adaptec card using
the NEC B1 EHCI controller and a separate VIA EHCI controller on the
mobo. Both controllers are using the Microsoft usbehci.sys driver
version 5.1.2600.1243.
When running a full bandwidth ISO stream from a USB camera (3072
bytes/microframe), the NEC controller chokes with
USBD_STATUS_ISO_NOT_ACCESSED_BY_HW (c0020000). It does it horribly when
running on a MP boot. If I run on a UP boot of the same machine (same
HC driver), it is still there but not as bad. Now if I switch the
camera over to the VIA controller, everything else I think exactly the
same, the error goes away entirely. It is gone on both the MP and UP
boots.
Before I checked the VIA HC, I thought it was the camera being too slow
and not responding to the IN token in enough time. But after seeing the
difference with the VIA HC, I looked a little more carefully and saw on
my bus analyzer that indeed the IN token is never sent. So it is
clearly on the host end. It is always the third transaction in the
microframe that fails; after two successful transactions.
I was really surprised that a HC would fail like that. I looked online
to see if there were any known troubles with that particular HC, but I
did not see anything. Anyone have any ideas??
Best regards,
Tom Udale Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76819
Device IO / Detect Drive Type
HI
My application needs to directly modify an attached Flash Device. (own
FS on it)
I am using physicaldive[nn] to open and
DeviceIO(IOCTL_DISK_GET_DRIVE_GEOMETRY_EX) to detect the size of the
card. (using the member "DiskSize")
Is there a way to detect the drive's "type" in more detail ? I already
have the information that it is a "removable" one, but I'd like to make
100% sure that it is a FLASH type. Are there any documened calls to
retrieve more information about a given drive ?
Or can I wrap an ATA Info command in an ordinary DeviceIO call ?
TIA
w.b. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76811
IRQL in TDI filter dispatch functions
Hi
I'm developing a TDI filter driver.
a. According to the MSDN, IoCallDriver() can be called at IRQL <=
DISPATCH_LEVEL. Therefore, should I assume that it is possible for all
dispatch routines in my TDI filter to run at IRQL = DISPATCH_LEVEL?
(According to MSDN this rule is right for all kinds of filter drivers?)
b. My completion routines are being invoked in an arbitrary thread
context and probably at high IRQ. Is this also right for a TDI filter?
c. When code can run at IRQL => DISPATCH_LEVEL, all the allocations on
the STACK also need to be none paged? (Do I need to use paged_code
macro or something like that?)
Thanks. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76810
Windows CE USB Driver
Hello togehter!
I want to develop an USB driver for an PDA with Windows CE, has anybody
Tutorials/samples or experiences with this. I'm grateful for every help.
thx chris Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76808
manual install driver for pnp device
I need to run a batch or a exe from inno setup(something like
installshield) to install drivers for a Pnp usb device with FTD2XX
drivers from FTDI.
Now from a batch i call:
C:\WINDOWS\System32\rundll32.exe setupapi,InstallHinfSection
DefaultInstall 132 .\ftd2xx.inf
and i can successfully see the install dialog appear, all the drivers
files are copyied in the right places, oemxx.ing is created, but when i
plug in the device the same dialog appear and i need to reinstall
drivers again in order to make it work.
I noticed that after the batch, in
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\
there is no Vid_0403&Pid_6001 key as expected
So how can i full manually install this device without interaction with
the user?
Hi Andrea Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76807
Communication via USB
I am developing virtual console for a hardware board. it is supposed to
work as a LCD for a target board. This would enable boards without LCD
support to display on the desktop.The design is ready. Now shall I use
TCP/IP for communication or the USB port.The advantage with USB
approach is that every board has it whereas TCP/IP may not be
implemented on every board. How should I start? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76804
serial port pci card generic driver wanted
Hello
I have installed this card one year ago without any problem
yesterday I formatted my hard disk
when starting windows xp home, my pci card, with 2 serial ports is not
recognised (generic, standard)
I can't find my driver, if I had one
can any one help to find this driver ?
thank you in advance
Philippe (France) Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76802
How to get started with creating a virtual filesystem?
I would like to create a new virtual volume with a virtual filesystem,
something that is visible as a drive, can be given a letter, and browsed in
"explorer" etc., but where all requests to access files are handled by me,
preferably delegated to a service in user space.
What kind of component do I actually need to write, at a minimum?
If I understand well, I would need to somehow create a fake volume and tell
Windows (I/O manager?) about it, register my own filesystem and make Windows
forward all requests to this fake volume to my filesystem instance, with
which I would interact via ioctl. Is that correct? Could it be simpler?
Is there a way to get there even faster with WDF? How about UMDF, does it
have support for this sort of functionality? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76789
writing to the event viewer
hello,
i'm trying to write messages from my network driver in the event viewer
using NdisWriteErrorLogEntry.
in the driver i have the code:
NdisWriteErrorLogEntry(Adapter->AdapterHandle,
NDIS_STATUS_MEDIA_DISCONNECT,
1,0x001b);
i also wrote a resource only dll with the entry 0x001c and an error
string.
i've modified the inf file to use that dll - the inf file copies it and
in the AddEventLog.reg i've added it.
but still, when i look in the event viewer i see a discription that
says: "The description...cannot be found...use the
/AIXSOURCE=flag....." but in the data i see my error code number.
what am i doing wrong? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76786
Device Object
Hello
I got a function now that is executed on the following line:
DriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = FilterDispatchIo;
NTSTATUS
FilterDispatchIo(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
)
In this function the DeviceObject is a ControlDeviceObject or a the
main DeviceObject.
When it's a DeviceObject is passed through to another function that's
passing the IRP to the lower driver.
If it's a ControlDeviceObject it's going to look if something is send
from the user application.
In this check im looking if my own made IOCTL is send or not, if so i
want to add an mousepackage.
The problem is i need to main device to send the package to but at this
moment i get the ControlDeviceObject all the time.
I also tryed to save the address of the Main DeviceObject and use it
when i needed to enter the package, but i think that isn;t even
possible since maybe it has something to do with the Passing through of
the IRP and the completion of it(what maybe would explain the error)?
I tryed alot of things now and i im stuck now, can anyone help me on
the right way in getting the Main Device Object so i can add my own
package?
btw the error that i got all the time was
DRIVER_IRQL_NOT_LESS_OR_EQUAL.
PCONTROL_DEVICE_EXTENSION deviceExtension;
ULONG dwDataWritten = 0;
KIRQL prevIrql;
MOUSE_INPUT_DATA data[2];
ULONG inputConsumed;
if(DeviceObject != ControlDeviceObject)
{
return FilterPass(DeviceObject, Irp);
}
deviceExtension = ControlDeviceObject->DeviceExtension;
if(!deviceExtension->Deleted) {
status = STATUS_SUCCESS;
irpStack = IoGetCurrentIrpStackLocation (Irp);
switch (irpStack->MajorFunction) {
case IRP_MJ_DEVICE_CONTROL:
switch (irpStack->Parameters.DeviceIoControl.IoControlCode) {
case IOCTL_MY_OWN_IOCTL:
status = Ioctl_BufferedIo(Irp, irpStack, &dwDataWritten);
if (status == STATUS_SUCCESS)
{
inputConsumed = 0;
data[0].UnitId = 0;
data[0].Flags = MOUSE_MOVE_ABSOLUTE;
data[0].Buttons = 0;
data[0].RawButtons = 0;
data[0].LastX = 0;
data[0].LastY = 0;
data[0].ExtraInformation = 0;
data[1].UnitId = 0;
data[1].Flags = MOUSE_MOVE_ABSOLUTE;
data[1].Buttons = 0;
data[1].RawButtons = 0;
data[1].LastX = 0;
data[1].LastY = 0;
data[1].ExtraInformation = 0;
KeRaiseIrql(DISPATCH_LEVEL, &prevIrql);
(*(PSERVICE_CALLBACK_ROUTINE)
deviceExtension->UpperConnectData.ClassService)(
deviceExtension->UpperConnectData.ClassDeviceObject,
&data[0],
&data[1],
&inputConsumed);
KeLowerIrql(prevIrql);
}
break;
default:
status = STATUS_INVALID_PARAMETER;
break;
}
default:
break;
}
} else {
status = STATUS_DEVICE_REMOVED;
}
Irp->IoStatus.Status = status;
Irp->IoStatus.Information = dwDataWritten;
IoCompleteRequest (Irp, IO_NO_INCREMENT);
return status;
} Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76773
Monitoring WWAN OIDs Through NDIS IM Driver
Is there a way for an IM driver to monitor WWAN OIDs? My IM
driver binds to NDISWAN but is only able to see WAN OIDs and indications.
Thanks! Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76768
Monitoring TAPI OIDs Through NDIS IM Driver
Is there a way for an IM driver to monitor TAPI OIDs/indications? My IM
driver binds to NDISWAN but is only able to see WAN OIDs and indications.
Thanks! Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76767
drivers for embedded graphics
Hello.
Anyone know anything about embedded VIA UniChrome chips?
I want to run NT4 server on a CLE266 board with embedded UniChrome 3D. I
don't care about 3D or video accelleration, but I do want something more
than 640x480x4 resolution. VIA doesn't have an NT driver for the CLE266
board, but I did find an NT driver for an M400 board with embedded UniChrome
Pro. Could that driver be used to set display resolution? (A VIA tech
suspected 'no' but was not certain.)
Barring that, how difficult would it be to develop an NT driver that
provided no chip-specific functionality besides mode change?
thanks,
nf Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76766
Max contiguous memory buffer size
Hi!
I have a Windows 2003 Server x86 64bit running on system with 16Gb memory.
How much contiguous memory can I allocate for device DMA buffer? Device is
the PCI-x adapter with 64bit address bus. I want to get 4Gb DMA buffer. Are
there any reccomendations to tune operationg system for getting maximum size
DMA buffer?
Thanks! Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76762
EngMapFile
I have a mirror display driver that uses a memory-mapped file to push screen
updates to an application that reads the updates from the file and sends them
to a server for distribution. The user-level application creates the file
and passes the name to the driver. The Driver uses EngMapFile to open it.
Sometimes it fails and the application retries using a smaller size until it
succeeds or reaches a minimum size and fails.
I am guessing that EngMapFile fails because it uses non-paged system memory
to back the memory-mapped file and since this is a limited resource there may
not always be enough available for the full size of the file. Can someone
verify this for me? The documentation for EngMapFile is very minimal.
Thanks,
Bill Wyatt,
Sonexis, Inc.
Tewksbury, Massachusetts. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76751
WPP tracing produces empty .etl file
<apology>
First, let me apologise if you are reading this twice.
I posted this originally to the win32.programmer.kernel newsgroup before I
spotted this one ! I thought this one might be more relevant.
</apology>
I'm attempting to use WPP tracing in my XP kernel driver.
I've followed all the instructions at osronline and in MSDN, but I'm always
getting an empty .etl file.
I've added the WPP_DEBUG macros and I can see the messages being dumped to
DebugView. Does anyone have any idea what I might be doing wrong ?
Here is my tracelog -start call
tracelog -start wavedrvlog -guid wave_wpp.ctl -flags 0x1 -f wavedrv.etl
wave_cpp.ctl contains :
d8580821-5d64-541f-aac8-c8dbaf80ea62 wavedrv
And, finally, my WPP_DEFINE_CONTROL_GUID
WPP_DEFINE_CONTROL_GUID(wavedrv,(E2E85950,7BFF,4ab7,8A0C,A1AD7AC8C1D5), \
WPP_DEFINE_BIT(WAVEDRV_DBG_ALL) )
I am concerned that tracepdb produces 2 .tmf files that do not match my
GUID. Is this normal ? I do get a .tmc file which has the correct GUID.
When I run tracefmt, it says it is using default.tmf and finished with Exit
Status 38. I can't find any information regarding this exit status ! What
does it mean ? Why is it using the default.tmf instead of my tracepdb
versions ?
For completeness, here is my tracefmt call
tracefmt -o wavedrv.txt -f wavedrv.etl -p c:\tmf
("c:\tmf" does contain my .tmf files)
After sorting my build problems out the other day, this has started to
frustrate me even more. Am I missing something obvious ??
- WinDDK 3790
- W2k3 Checked Build Environment
Thanks for ANY help/advice you can offer
Cheers
Ged Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76750
Direct I/O
Hello !
I've an old software (for win95 & 98) who accessing the serial port com for
communicate with automatism... But this software is accessing directly to the
port com (with IN & OUT C) . With win95 & 98 it's ok, but with nt2000 and xp
not.
How can i write a driver for intercept I/O from my application and write to
serial port com ?
Thank you Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76747
Windows Server 2003 - Removing Reliance On USB/HID
I have just recovered a Win2K3 install from an IBM XSeries onto an HP
Proliant ML370 G3.
Although the XSeries uses PS/2 keyboard/mouse I cannot log into the Proliant
unless I use USB devices.
This is not usually a problem, but I have 6 of these servers and only 1 USB
keyboard/mouse.
I could go out and purchase extra kit but I would like to try removing the
reliance on USD/HID.
Any ideas?
D. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76746
Issue while attempting to retrieve the file object's path name associated with process section
Hi All,
We encountered a issue while attempting to retrieve the file object's
path name associated with process section object after renaming the
folder that contains the executable image.
File System: NTFS
OS: seems like all x32 NT based (2000, XP, 2003 & their SP)
Steps to reproduce:
1. Create a new folder named "1" on disk (for example, C:)
2. Copy any executable file (e.g., "test.exe") to the created folder.
3. Execute this application.
4. Exit from this application (e.g., "test.exe").
5. Rename folder "1" to another name (for example, "2").
6. Execute the application located in this folder ("2\test.exe") that
was executed at step 3.
What did we get?
The new process is successfully running, however we can't get the
correct path name for the section object associated with this process,
and also we got the incorrect path name in the
PsSetLoadImageNotifyRoutine callback routine (see below example #4).
As a result of querying the path name of process section we got:
\Device\HardDiskXXX\1\test.exe
Instead of expected:
\Device\HardDiskXXX\2\test.exe
We tried the different methods of getting the path name for the
section object associated with the process. All methods, except the
reading PEB give the incorrect path name:(
Example #1.
PSECTION pSection;
....
get section for process executable image
....
PFILE_OBJECT pSectionFile =
pSection->Segment->ControlArea->FilePointer;
ObQueryNameString(pSectionFile, ......);
Example #2.
Use IoQueryFileInformation for file object associated with process
section object
or
use ObOpenObjectByName AND ZwQueryInformationFile for this file object
Example #3.
Direct scan file object fields and get file path name.
Example #4.
VOID
NTAPI
_PsSetLoadImageNotifyRoutine(
IN PUNICODE_STRING FullImageName,
IN HANDLE ProcessId,
IN PIMAGE_INFO ImageInfo)
{
KdPrint(("Load image: %ws\n", FullImageName->Buffer));
}
EXTERN_C
NTSTATUS
DriverEntry(
IN PDRIVER_OBJECT pDriverObject,
IN PUNICODE_STRING pRegistryPath)
{
return PsSetLoadImageNotifyRoutine(&_PsSetLoadImageNotifyRoutine);
}
Basing on PDB information (ntoskrnl.exe) the unexported function
MmGetFileNameForSection that is called
before executing load-image callback routine got the invalid path name
also.
What can Microsoft developers say on this matter?
Best regards,
Andrey Alekseev
Development Team
ISV System Safety Ltd.
http://www.syssafety.com Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76745
Read Data from USB
Hi all,
I have a problem in reading the data packets from USB.
I have got the USB from the Vendor(IXXAT) , and implemented the code to
return handle for USB using CreateFile().
it is returning the Handle and Device path correctly but the BytesRead
variable in ReadFile function is always zero. Can any one help me?
I think i have almost reached the endpoint in reading the data.
Thanks in advance
samaya Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76744
a dumb HID question
Why is the HID API still not part of the Platform SDK?
The hid*.h files are only contained in the DDK. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76742
Unable to delete .sys file
Hi All.
I had posted this issue some times back. Can any one help me on this?
This is the story:
My driver is working fine as expected. But I am not able to delete the
driver (.sys file) from drivers folder
or overwrite it with another version , even after unloading the driver
successfully !!!. Each time our custemers have to reboot the machine to
do it !! Windows says,someuser mapped section is left, so I don't have the
permission to delete it. I can delete the driver if I haven't run
any user application on top of it. My driver code always runs and uses
NonPaged memory pools. Driver is running on Windows XP
machine with all driver verifier options enabled (of course without low
memory simulation).
It doesn't report any errors while I unload the driver. I could not see
any resources left after unloading the driver (used Winobj, winmsd,
process explorer etc.). And I haven't run Event Viewer.
Can anyone suggest, how the application program can prevent deleting a
driver file? Application interacts with the driver only through
IOCTLs. It does not know .sys's name.
Thanking You,
Mohamed Biju Koothrat Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76741
Cursor size
Dear All
I do not know how to support 64x64 size cursor for display driver in
wince5.0, and need add some code or variable to BSP? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76739
USB 2.0 High Bandwidth Iso
I am having an issue with a USB 2.0 high-bandwidth iso endpoint. It isn't
behaving the way I expect.
The descriptor for the endpoint has the maximum bandwidth -- wMaxPacketsize
of 0x1400, meaning 1024 bytes with 3 transfers per microframe. I had
assumed that I would use this like any other isochronous endpoint, by
sending it a series of 1024-byte packets, so that each microframe would
consume 3 such packets.
However, that does not seem to be what the host controller driver expects.
I was VERY surprised to find that USBD_PIPE_INFORMATION.MaximumPacketSize
was 3072, not 1024. Further, if I send it a series of 1024-byte packets, I
get USBD_STATUS_INVALID_PARAMETER. It looks as though USBD will only
schedule one URB per microframe.
So why is this a problem? Well, let's say our data is coming in chunks of
2600 bytes, which means 1024 plus 1024 plus 552. We are using an FX2. Our
data rate is lower than the maximum bandwidth. When the FX2 gets an IN
token but its FIFO is empty, it does not reply. When that happens, I will
get a packet with 1024+1024 bytes plus an error, followed by a packet with
552+1024+1024, but those bytes are all packed together. I can't identify
the packet boundaries.
So, is it a fact that USBD will only schedule one URB per microframe? Or
have I missed something?
--
- Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76734
DIFxApp and unsigned driver
I'm trying to use DIFxpp.msi to install an unsigned driver of non-WHQL
(custom) class. I set the flag in MsiDriverTable to 8, and included the
driver files to the corresponding component. But when the installer runs,
only INF file is copied to DRIVERSTORE folder, not the SYS file, causing the
setup to issue a prompt for SYS file. What could cause that? Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76733
lib file for AudioEngineBaseAPO.h
Hi,
I'm trying to link a APO DLL using the February CTP SDK, and is having
linking errors to link functions defined in AudioEngineBase.h. Does anyone
know which lib file I need to link to? Thanks
KS Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76731
Any white paper or samples on KSPROPSETID_Jack implementation?
I'm trying to add Jack description to my audio device so that Vista will be
able to display it on the speaker endpoint. Unfortunately, only manage to
find the macros and definitions(portcls.h) in the WDK 5308, but not a single
sample or doc on it.
Thanks!
Kenny. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76730
IOCTL_INTERNAL_MOUSE_CONNECT
Hello
I already got a working IOCTL that gives me the info i need from my
user application.
And now i want that every time i send my own IOCTL with an x and y
values for the mouse to execute the mouse_callbackfunctie and insert a
self made package with the x and y from my IOCTL..
Does it take much time to replace the IOCTL_INTERNAL_MOUSE_CONNECT
(located under IRP_MJ_INTERNAL_DEVICE_CONTROL) that triggers the
Mouse_Callbackfunction with a own made IOCTL?
I get my IOCTL with help of an control device and in that control
device i get my data with help of the Home made IOCTL.
I hope it's possible to answer. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76727
IR communication using non standard protocol
Hi,
I have an electronic device that communicates with my PC (running
Windows XP) using infrared communication.
The protocol it uses is like this:
For instance to get a buffer status the PC can send B\r to the device,
and the device will respond with something like B\r00\rOK\r if the
buffer is empty. In other words you send the command to the device and
it responds with the command, the answer to the request, and "OK".
Currently I use an infrared transmitter connected to one of the COM
ports in the PC to communicate with the device. In C sharp I have
written a program that communicates directly with the COM port the
device is connected to: I open the COM port, sends a command to the
device, and waits for a response.
It works okay but now I also want to use an IR transmitter connected to
an USB port! Virtual com ports and IR is not a possible solution in
Windows 2000/XP!
Is there an IR communication class that makes it possible to write a
program that uses the IR interface there is in Windows 2000/XP to
communicate with any IR device - regardless of how it is connected to
the PC (as long as it just has a driver)?
I know there is something like this for (win)socket programming but
will that be possible to use in this case/ with the protocol I
described?
Best regards,
Kim Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76722
STATUS_INVALID_DEVICE_REQUEST from IoGetDeviceObjectPointer
Hi,
I'm trying to get a pdo pointer to send IRP_MN_READ_CONFIG requests to. For
most devices this works fine but for some devices I get
STATUS_INVALID_DEVICE_REQUEST. Any idea why?
Thanks
Hua-Ying Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76717
How to modify volume/partition/drive name in code
When a partition is created from disk management untility, a volume name can
be created for it.
How can the volume/partition/drive name for a removable storage device like
RAMDISK be modified in the code ? Where the information is stored (I could
not find it in registry, is it stored in the disk device ?
Thanks
-Gary Li Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76716
hid minidriver w2k freeze when setup
Hi List,
I have an issue, when I setup my HID minidriver under windows 2k,
installation process freeze, while everything are OK under windows XP.
During setup, after standard IRPs (i.e. start, hid_get_*, etc)
minidriver receive a couple of IRP_MN_QUERY_ID ('BusRelations' and
'BusQueryHardwareIDs'), the number of collection it expose (in my case
4).
Then it receive 2 IOCTL_HID_READ_REPORT for ping pong IRPs.
At this time "new hardware" wizard ask me to click on "finish"
button... So do I
With Win2k, minidriver get 2 new IRP_MN_QUERY_ID and freeze.
In device manager first collection appear this an exclamation mark.
At this point I must reboot to unlock.
Does something could be wrong in IRP_MN_QUERY_ID handling ?
minidriver reply a string like "Vid_1234&Pid_5678" to those IRPs, is
that correct ?
Or there is something else to do ?
note: in IOCTL_HID_READ_REPORT handler, I call IoMarkIrpPending() to
the received IRPs and return STATUS_PENDING... Is that correct ?
Regards
--
Benoit Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76710
AddPrinterDriverEx with APD_COPY_ALL_FILES to upgrade a driver ?
Hello all,
I need to be able to update a printer driver when files may be in use.
Can someone confirm that when calling AddPRinterDriverEx with the Option
APD_COPY_ALL_FILES, Windows take care of drivers files in use and mark them
to be moved on reboot ?
TIA. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76709
BluetoothFindFirstDevice help ! 911
Hi guys,
I'm stucked with a bluetooth application.
Shortly , my visual c++ 2003 bluetooth code is intended to query for devices
nearby (example : my cellphone with bluetooh)
I'm using the below code; (my code compiles fine, but when I hit the line,
BtHandle = BluetoothFindFirstDevice(&search_param, &btDevInfo);
I debug and assume that it will wait for querying devices nearby but it
immediately switches to dissambler code;
I then toogle another breakpoint to another line below this line and resume
from debug , it comes to this line and
i see that "BtHandle" returns "unknown value" , as if it doesnot query any
devices, something wrong occurs here as much as i understand here.
Where am i doing wrong here ?
Someone please shed a light upon me due i'm stucked at this point.
I'm using built-in Widcomm stack in my Win2003 server. Does it matter for
this code to work on different stacks? (Microsoft,Widcomm,Toshiba,etc..)
Actually, the application i'm working on is intended to work on any machine
with bluetooth whatever bluetooth stack it has ?
Where do i have to start from ?
This is an urgent call, please some experienced guy, direct me in the right
order.
Thanks much and Regards
Tiger Developer
HBLUETOOTH_DEVICE_FIND BtHandle;
BLUETOOTH_DEVICE_INFO btDevInfo;
BLUETOOTH_DEVICE_SEARCH_PARAMS search_param;
memset(&search_param, 0, sizeof(search_param));
search_param.dwSize = sizeof(search_param);
search_param.fReturnAuthenticated = FALSE;
search_param.fReturnRemembered = FALSE;
search_param.fReturnUnknown = TRUE;
search_param.fReturnConnected = FALSE;
search_param.fIssueInquiry = TRUE;
search_param.cTimeoutMultiplier = 20;
search_param.hRadio = NULL;
memset(&btDevInfo, 0, sizeof(btDevInfo));
btDevInfo.dwSize = sizeof(btDevInfo);
device_count = 0;
BtHandle = BluetoothFindFirstDevice(&search_param, &btDevInfo);
if (BtHandle == 0)
{
last_error = GetLastError();
printf("\nNo devices found: %d", last_error);
BluetoothFindDeviceClose(BtHandle);
exit (0);
}
else
{
szAccept = 'y';
bContinue = TRUE;
while (bContinue)
{
device_count++;
wcstombs(szDeviceName, btDevInfo.szName, sizeof(szDeviceName));
printf("\nFound Device %d : %s", device_count, szDeviceName);
printf("\nDevice address %x", btDevInfo.Address.ullLong);
if (btDevInfo.fConnected)
printf("\n It is connected");
else
printf("\n Device is not connected");
if (btDevInfo.fRemembered)
printf("\n It is remembered");
else
printf("\n Device is not remembered");
printf("\nPress 'y' to accept or 'n' to not accept this device ");
szAccept = _getch();
if (szAccept == 'n')
{
memset(&btDevInfo, 0, sizeof(btDevInfo));
btDevInfo.dwSize = sizeof(btDevInfo);
bResult = BluetoothFindNextDevice(BtHandle, &btDevInfo);
if (bResult == FALSE)
{
last_error = GetLastError();
printf("\nBluetoothFindNextDevice returned error: %d", last_error);
BluetoothFindDeviceClose(BtHandle);
exit (0);
}
}
else
bContinue = FALSE;
}
} Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76707
how to block access to floppy ? Need help!
I want to block access to my floppy, and let administrator can access
it only.
At first, I have an idea that is to do a filter driver which could be
attached
to floppy driver. But I found it's so difficult to do that because I 'm
a novice to
ddk. Let alone what kinds of datas (ie. Irps) should I blocked.
Recently, I found something about how to block access to floppy in the
group.
The link is
http://groups.google.com/group/microsoft.public.win32.programmer.kernel/browse_thread/thread/06dc46a69fca7c9e?hl=zh-CN
I try do program as what Karan Mehra have said.
But I found it did not work! Is there maybe some wrong with my code
below?
p= _T("D:P");
hDevInfo=SetupDiGetClassDevs(&guid,NULL,NULL,DIGCF_PRESENT);
if(hDevInfo==INVALID_HANDLE_VALUE)
{
printf("wrong!");
return 1 ;
}
DWORD i, err;
SP_DEVINFO_DATA DeviceInfoData;
ZeroMemory(&DeviceInfoData, sizeof(SP_DEVINFO_DATA));
DeviceInfoData.cbSize = sizeof(SP_DEVINFO_DATA);
for (i = 0; SetupDiEnumDeviceInfo(hDevInfo, i, &DeviceInfoData);
++i)
{
if (!SetupDiSetDeviceRegistryProperty(hDevInfo,
&DeviceInfoData,
SPDRP_SECURITY_SDS,
(LPBYTE)p,
strlen(p)+1))
and set SPDRP_CHARACTERISTICS by using
SetupDiSetDeviceRegistryProperty as follow:
CharacterFlags = GetDeviceCharacterFlags(hDevInfo, &DeviceInfoData);
CharacterFlags |= FILE_DEVICE_SECURE_OPEN;
SetDeviceCharacterFlags(hDevInfo, &DeviceInfoData, CharacterFlags);
VOID
SetDeviceCharacterFlags(
IN HDEVINFO DeviceInfoSet,
IN PSP_DEVINFO_DATA DeviceInfoData,
IN DWORD CharacterFlags
)
{
if(!SetupDiSetDeviceRegistryProperty(DeviceInfoSet,
DeviceInfoData,
SPDRP_CHARACTERISTICS,
(PBYTE)&CharacterFlags,
sizeof(CharacterFlags)
))
{
printf("unavailble");
}
printf("it is ok!");
}
DWORD
GetDeviceCharacterFlags(
IN HDEVINFO DeviceInfoSet,
IN PSP_DEVINFO_DATA DeviceInfoData
)
{
DWORD CharacterFlags;
if(!SetupDiGetDeviceRegistryProperty(DeviceInfoSet,
DeviceInfoData,
SPDRP_CHARACTERISTICS,
NULL,
(PBYTE)&CharacterFlags,
NULL,
(unsigned long *)
sizeof(CharacterFlags)
))
{
printf("unsucess to get device property spdrp_characteristicse");
CharacterFlags = 0;
}
return CharacterFlags;
}
I could complie my program, and build exe file. but I found it did not
work!
Could you point out to me whether there are something I have not
noticed.
Or the idea is absolutely wrong to do that in winxp?
I' m very appreciated if you can reply to me soon, and thank you in
advance. Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76704
How to do defragment and analysis on disk?
Hi, all:
I need do defragment and anlysis on some disks, but I can not find WINDOWS
API to do this task in MSDN Library, how can I do it?
By the way, I found that the windows has provided WMI
interfaces(Win32_Volume) to do this task, but tihis is limited to Windows2003
system, I need do this task on any system, including: windows2000 and XP.
Thanks a lot! Tag: Mobo Procomp (BS61M ver.1.0 socket 370) Tag: 76703
Hi to all,
i'm searching for the win98 driver (video and sound on-board) of Procomp
(BS61M ver.1.0 socket 370), in subject.