mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have problem.
When I am trying to uninstall my driver whole system stucks. System is still
running but it just seems to wait something. Uninstall window stays open and
mouse and keyboard are not in use, but debugger shows that there is still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the mouclass.sys.

This all is only happening if I supporting IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source codes
of DDK samples? But how to install it because I dont have right .inf file
for that? I tried to add mouclass.sys installation to my driver INF (same
way like in msmouse.inf), but after restarting the original mouclass.sys is
in system32/drivers folder

Thanks!


Jussi Rytilahti

To replace mouclass.sys you need to disable SFP. See OSROnline for more on
disabling this, they have a utility to do it.

It sounds like you are not completing a request correctly, or at least
propagating the results of a request correctly. I doubt it is the system
driver.

Pete

Kernel Drivers
Windows Filesystem and Device Driver Consulting
www.KernelDrivers.com
(303)546-0300

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 5:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have problem.

When I am trying to uninstall my driver whole system stucks. System is still

running but it just seems to wait something. Uninstall window stays open and

mouse and keyboard are not in use, but debugger shows that there is still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the mouclass.sys.

This all is only happening if I supporting IOCTL_MOUSE_QUERY_ATTRIBUTES. If

I dont support that uninstall works fine, but when in support it (same way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source codes
of DDK samples? But how to install it because I dont have right .inf file
for that? I tried to add mouclass.sys installation to my driver INF (same
way like in msmouse.inf), but after restarting the original mouclass.sys is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

I assume your driver is below mouclass. Are you completing all the
IOCTLs sent to your driver? Does your driver expose a way for a user
mode app to talk to it?

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 4:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have
problem.
When I am trying to uninstall my driver whole system stucks. System is
still
running but it just seems to wait something. Uninstall window stays open
and
mouse and keyboard are not in use, but debugger shows that there is
still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the
mouclass.sys.

This all is only happening if I supporting
IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same
way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following
PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source
codes
of DDK samples? But how to install it because I dont have right .inf
file
for that? I tried to add mouclass.sys installation to my driver INF
(same
way like in msmouse.inf), but after restarting the original mouclass.sys
is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

The easiest way to replace a system binary during debugging is to use the
.kdfiles facility of the kernel debugger. Download WinDbg & friends, and
read the docs on .kdfiles. It’s one of the best features *ever* implemented
in a system debugger.

– arlie

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 7:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have problem.

When I am trying to uninstall my driver whole system stucks. System is still
running but it just seems to wait something. Uninstall window stays open and
mouse and keyboard are not in use, but debugger shows that there is still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the mouclass.sys.

This all is only happening if I supporting IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source codes
of DDK samples? But how to install it because I dont have right .inf file
for that? I tried to add mouclass.sys installation to my driver INF (same
way like in msmouse.inf), but after restarting the original mouclass.sys is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hi,

The driver is basiclly only reading device specific pointer data from serial
port. Then driver handles this data and moves cursor (help of mouclass?)
etc. Driver does not have any application above it. Its only takes
calibrating values from registery/file. Those values are modified by
Calibrating application. Strange in this case is that if I dont support
IOCTL_MOUSE_QUERY_ATTRIBUTES everything goes just fine. If I support it then
I only get one PNP IRP and then system stucks. And this happend only when
trying to uninstall driver. Not for example during the shutdown.

~Jussi~

“Doron Holan” kirjoitti viestissä:xxxxx@ntdev…
I assume your driver is below mouclass. Are you completing all the
IOCTLs sent to your driver? Does your driver expose a way for a user
mode app to talk to it?

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 4:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have
problem.
When I am trying to uninstall my driver whole system stucks. System is
still
running but it just seems to wait something. Uninstall window stays open
and
mouse and keyboard are not in use, but debugger shows that there is
still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the
mouclass.sys.

This all is only happening if I supporting
IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same
way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following
PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source
codes
of DDK samples? But how to install it because I dont have right .inf
file
for that? I tried to add mouclass.sys installation to my driver INF
(same
way like in msmouse.inf), but after restarting the original mouclass.sys
is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

This is probably b/c you have made the handle that the raw input thread opens for the mouse unclosable b/c it has pending I/O that never completes. Do you complete the IOCTL_MOUSE_QUERY_ATTRIBUTES?

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 9:35 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] mouclass

Hi,

The driver is basiclly only reading device specific pointer data from serial
port. Then driver handles this data and moves cursor (help of mouclass?)
etc. Driver does not have any application above it. Its only takes
calibrating values from registery/file. Those values are modified by
Calibrating application. Strange in this case is that if I dont support
IOCTL_MOUSE_QUERY_ATTRIBUTES everything goes just fine. If I support it then
I only get one PNP IRP and then system stucks. And this happend only when
trying to uninstall driver. Not for example during the shutdown.

~Jussi~

“Doron Holan” kirjoitti viestiss?:xxxxx@ntdev…
I assume your driver is below mouclass. Are you completing all the
IOCTLs sent to your driver? Does your driver expose a way for a user
mode app to talk to it?

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 4:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have
problem.
When I am trying to uninstall my driver whole system stucks. System is
still
running but it just seems to wait something. Uninstall window stays open
and
mouse and keyboard are not in use, but debugger shows that there is
still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the
mouclass.sys.

This all is only happening if I supporting
IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same
way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following
PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source
codes
of DDK samples? But how to install it because I dont have right .inf
file
for that? I tried to add mouclass.sys installation to my driver INF
(same
way like in msmouse.inf), but after restarting the original mouclass.sys
is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Hi,

This is how I handle IOCTL:

case IOCTL_MOUSE_QUERY_ATTRIBUTES:
if (irpStack->Parameters.DeviceIoControl.OutputBufferLength <
sizeof(MOUSE_ATTRIBUTES)) {
DbgPrint(“STATUS_BUFFER_TOO_SMALL\n”);
status = STATUS_BUFFER_TOO_SMALL;
}
else {
//
// Copy the attributes from the DeviceExtension to the
// buffer.
//
*(PMOUSE_ATTRIBUTES) Irp->AssociatedIrp.SystemBuffer =
deviceExtension->MouseAttributes;
Irp->IoStatus.Information = sizeof(MOUSE_ATTRIBUTES);
status = STATUS_SUCCESS;
}
break;

I have copied this from Mouser DDK-sample. If I make this part to a comment
then uninstall works…

~Jussi~

“Doron Holan” kirjoitti viestissä:xxxxx@ntdev…
This is probably b/c you have made the handle that the raw input thread
opens for the mouse unclosable b/c it has pending I/O that never completes.
Do you complete the IOCTL_MOUSE_QUERY_ATTRIBUTES?

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 9:35 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] mouclass

Hi,

The driver is basiclly only reading device specific pointer data from serial
port. Then driver handles this data and moves cursor (help of mouclass?)
etc. Driver does not have any application above it. Its only takes
calibrating values from registery/file. Those values are modified by
Calibrating application. Strange in this case is that if I dont support
IOCTL_MOUSE_QUERY_ATTRIBUTES everything goes just fine. If I support it then
I only get one PNP IRP and then system stucks. And this happend only when
trying to uninstall driver. Not for example during the shutdown.

~Jussi~

“Doron Holan” kirjoitti viestissä:xxxxx@ntdev…
I assume your driver is below mouclass. Are you completing all the
IOCTLs sent to your driver? Does your driver expose a way for a user
mode app to talk to it?

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 4:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have
problem.
When I am trying to uninstall my driver whole system stucks. System is
still
running but it just seems to wait something. Uninstall window stays open
and
mouse and keyboard are not in use, but debugger shows that there is
still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the
mouclass.sys.

This all is only happening if I supporting
IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same
way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following
PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source
codes
of DDK samples? But how to install it because I dont have right .inf
file
for that? I tried to add mouclass.sys installation to my driver INF
(same
way like in msmouse.inf), but after restarting the original mouclass.sys
is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Have you run verifier on your driver? Maybe you just did not include it but
are you passing down or completing the Irp in question below? Either an
IoCompleteRequest() or IoCallDriver()?

Pete

Kernel Drivers
Windows Filesystem and Device Driver Consulting
www.KernelDrivers.com
(303)546-0300

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Thursday, March 02, 2006 12:48 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] mouclass

Hi,

This is how I handle IOCTL:

case IOCTL_MOUSE_QUERY_ATTRIBUTES:
if (irpStack->Parameters.DeviceIoControl.OutputBufferLength <
sizeof(MOUSE_ATTRIBUTES)) {
DbgPrint(“STATUS_BUFFER_TOO_SMALL\n”);
status = STATUS_BUFFER_TOO_SMALL;
}
else {
//
// Copy the attributes from the DeviceExtension to the
// buffer.
//
*(PMOUSE_ATTRIBUTES) Irp->AssociatedIrp.SystemBuffer =
deviceExtension->MouseAttributes;
Irp->IoStatus.Information = sizeof(MOUSE_ATTRIBUTES);
status = STATUS_SUCCESS;
}
break;

I have copied this from Mouser DDK-sample. If I make this part to a comment
then uninstall works…

~Jussi~

“Doron Holan” kirjoitti viestiss?:xxxxx@ntdev…
This is probably b/c you have made the handle that the raw input thread
opens for the mouse unclosable b/c it has pending I/O that never completes.
Do you complete the IOCTL_MOUSE_QUERY_ATTRIBUTES?

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 9:35 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] mouclass

Hi,

The driver is basiclly only reading device specific pointer data from serial
port. Then driver handles this data and moves cursor (help of mouclass?)
etc. Driver does not have any application above it. Its only takes
calibrating values from registery/file. Those values are modified by
Calibrating application. Strange in this case is that if I dont support
IOCTL_MOUSE_QUERY_ATTRIBUTES everything goes just fine. If I support it then
I only get one PNP IRP and then system stucks. And this happend only when
trying to uninstall driver. Not for example during the shutdown.

~Jussi~

“Doron Holan” kirjoitti viestiss?:xxxxx@ntdev…
I assume your driver is below mouclass. Are you completing all the
IOCTLs sent to your driver? Does your driver expose a way for a user
mode app to talk to it?

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 4:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have
problem.
When I am trying to uninstall my driver whole system stucks. System is
still
running but it just seems to wait something. Uninstall window stays open
and
mouse and keyboard are not in use, but debugger shows that there is
still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the
mouclass.sys.

This all is only happening if I supporting
IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same
way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following
PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source
codes
of DDK samples? But how to install it because I dont have right .inf
file
for that? I tried to add mouclass.sys installation to my driver INF
(same
way like in msmouse.inf), but after restarting the original mouclass.sys
is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hi,

and thanks.

It has been proven once again; when you do something long enough you will
come blind to your own mistakes…(Or something like that)

I did not complete that IRP…

thanks again

~Jussi~

“Peter Scott” kirjoitti viestissä:xxxxx@ntdev…

Have you run verifier on your driver? Maybe you just did not include it but
are you passing down or completing the Irp in question below? Either an
IoCompleteRequest() or IoCallDriver()?

Pete

Kernel Drivers
Windows Filesystem and Device Driver Consulting
www.KernelDrivers.com
(303)546-0300

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Thursday, March 02, 2006 12:48 AM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] mouclass

Hi,

This is how I handle IOCTL:

case IOCTL_MOUSE_QUERY_ATTRIBUTES:
if (irpStack->Parameters.DeviceIoControl.OutputBufferLength <
sizeof(MOUSE_ATTRIBUTES)) {
DbgPrint(“STATUS_BUFFER_TOO_SMALL\n”);
status = STATUS_BUFFER_TOO_SMALL;
}
else {
//
// Copy the attributes from the DeviceExtension to the
// buffer.
//
*(PMOUSE_ATTRIBUTES) Irp->AssociatedIrp.SystemBuffer =
deviceExtension->MouseAttributes;
Irp->IoStatus.Information = sizeof(MOUSE_ATTRIBUTES);
status = STATUS_SUCCESS;
}
break;

I have copied this from Mouser DDK-sample. If I make this part to a comment
then uninstall works…

~Jussi~

“Doron Holan” kirjoitti viestissä:xxxxx@ntdev…
This is probably b/c you have made the handle that the raw input thread
opens for the mouse unclosable b/c it has pending I/O that never completes.
Do you complete the IOCTL_MOUSE_QUERY_ATTRIBUTES?

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 9:35 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] mouclass

Hi,

The driver is basiclly only reading device specific pointer data from serial
port. Then driver handles this data and moves cursor (help of mouclass?)
etc. Driver does not have any application above it. Its only takes
calibrating values from registery/file. Those values are modified by
Calibrating application. Strange in this case is that if I dont support
IOCTL_MOUSE_QUERY_ATTRIBUTES everything goes just fine. If I support it then
I only get one PNP IRP and then system stucks. And this happend only when
trying to uninstall driver. Not for example during the shutdown.

~Jussi~

“Doron Holan” kirjoitti viestissä:xxxxx@ntdev…
I assume your driver is below mouclass. Are you completing all the
IOCTLs sent to your driver? Does your driver expose a way for a user
mode app to talk to it?

d

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jussi Rytilahti
Sent: Wednesday, March 01, 2006 4:55 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] mouclass

Hi,

I am writing pointing device driver which uses mouclass. Now I have
problem.
When I am trying to uninstall my driver whole system stucks. System is
still
running but it just seems to wait something. Uninstall window stays open
and
mouse and keyboard are not in use, but debugger shows that there is
still
some action in system now and then. Reason for that is not in my driver
because it has finished all its functions so I think it is the
mouclass.sys.

This all is only happening if I supporting
IOCTL_MOUSE_QUERY_ATTRIBUTES. If
I dont support that uninstall works fine, but when in support it (same
way
like in MOUSER sample of ddk) uninstalling does not work any more.

If I dont support IOCTL_MOUSE_QUERY_ATTRIBUTES I will receive following
PNP
IRPs:

IRP_MN_QUERY_DEVICE_RELATIONS
and
IRP_MN_QUERY_REMOVE_DEVICE
and
IRP_MN_CANCEL_REMOVE_DEVICE

And system ask “Restart?” and everything goes fine

If I dont support I will receive only following PNP IRP:

IRP_QUERY_DEVICE_RELATIONS

And after driver has returned from thit IRP everything stucks…

Should I build and install debug version of mouclass by using source
codes
of DDK samples? But how to install it because I dont have right .inf
file
for that? I tried to add mouclass.sys installation to my driver INF
(same
way like in msmouse.inf), but after restarting the original mouclass.sys
is
in system32/drivers folder

Thanks!


Jussi Rytilahti


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer