Re: KernelIoControl error 50



Whooo hooo hooo!

> From the link above I modify oalioctl.cpp in C:\WINCE600\PUBLIC\COMMON
> \OAK\OALIOCTL,

You should NEVER modify public code, always clone it first! You didn't read Bruce's post completely, he says:

"So to add more IOCTLs, we need to *clone* the code and change the switch statement."

See Bruce's blog for some more info on cloning and maybe this one clarifies things too: http://guruce.com/blogpost/whattobuildwhen


Good luck,

Michel Verhagen, eMVP
Check out my blog: http://GuruCE.com/blog

GuruCE
Microsoft Embedded Partner
http://GuruCE.com
Consultancy, training and development services.

vlatko.petkoski@xxxxxxxxxxx wrote:
Hi. I'm using windowsCE 6.0 and x86 platform.

I'm writing IST for parallel port. I'm using MSDN example for IST.
http://msdn.microsoft.com/en-us/library/ms836807.aspx.

Problem!!!
When I call KernelIoControl it fails with error code 50
(ERROR_NOT_SUPPORTED).
KernelIoControl( IOCTL_HAL_TRANSLATE_IRQ,
&dwIrq,
sizeof( dwIrq ),
&g_dwSysInt,
sizeof( g_dwSysInt ),
NULL );

http://geekswithblogs.net/BruceEitman/archive/2008/07/01/windows-ce-6.0-user-mode-kerneliocontrol.aspx
From the link above I modify oalioctl.cpp in C:\WINCE600\PUBLIC\COMMON
\OAK\OALIOCTL,
add IOCTL_HALL_REQUEST_SYSINTR and after that I build new OSDesign
image.
I start my application and KernelIoControl() failed again with error
code 50 (ERROR_NOT_SUPPORTED).
What I'm doing wrong?
My problem is to translate IRQ from parallel port to SYSINTR value.
Is there another way or should I use this way?
Please give me some example how to exactly call KernelIoControl().
Thanks in advance.
Regards Vlatko.




.