Implementing KITL Entry Points in OalKitl.exe (Windows Embedded CE 6.0)


Once you have created OalKitl.exe, you must implement KITL entry points in Kernel\KernKitl.

  1. Export the OEMKitlStartup function.

    This function is called from the kernel when KITLIoctl(IOCTL_KITL_STARTUP, NULL, 0, NULL, 0, NULL) is invoked by the OAL.

    For statically-linked KITL, this function should not be called and is a no-op.

    BOOL OEMKitlStartup(void)
         return FALSE;
  2. Export the OEMKitlIoctl function.

    This function handles all KITL-related IOCTLs. For statically-linked KITL, this function is a no-op. The IOCTLs are handled by OEMIoControl as in previous versions of Windows Embedded CE.

  3. Run the build command and verify that OalKitl.exe builds without any errors.

  4. Add the following line in %_WINCEROOT%\Platform\<Hardware Platform Name>\<Platform>.bat:


    Setting this indicates that KITL has not been componentized. Without this flag, the Make Run-Time Image (MakeImg) process will attempt to include Kitl.dll in the final run-time image and will fail with a file not found error.

    As in previous versions of Windows Embedded CE, you can still set IMGNOKITL=1 to control whether Oal.exe or OalKitl.exe is included in the final run-time image.

Community Additions