Loading ...
Sorry, an error occurred while loading the content.

RE: [discussion-pcausa] How to build Ndisuio.dll on Windows CE, help

Expand Messages
  • Thomas F. Divine
    There is no doubt that the development environment for developing drivers for Windows CE is confusing and difficult to master. The Windows CE 4.X development
    Message 1 of 3 , Jan 11, 2004
    View Source
    • 0 Attachment
      There is no doubt that the development environment for developing drivers
      for Windows CE is confusing and difficult to master. The Windows CE 4.X
      development environment is much improved over the Windows CE 3.0
      environment, but is still not easy to use.

      The approach that I used worked adequately for Pocket PC 2002 (WINCE 3.0)
      and Pocket PC 2003 (WINCE 4.X). The key thing that I found was that it is
      NOT NECESSARY to use Platform Builder to build a NDIS protocol driver for
      these platforms (although some header and import libraries from PB may be
      needed). PCAUSA's Windows CE drivers (http://www.rawether.net/embedded) are
      actually built using eMbedded Visual C++ with the companion Pocket PC SDK
      installed.

      The starting point for building a NDIS protocol driver under eMbedded Visual
      C++ is to create a WCE Dynamic-Link Library project for the appropriate
      processor (e.g. ARMV4 for Pocket PC 2003). You will add your NDIS protocol
      driver code to this project. The DLL built under this project will be the
      NDIS protocol driver.

      Certainly, when you attempt to build this project you may find missing
      include files and missing exports. You must resolve these by first looking
      for the files in the Pocket PC SDK tree and second in the companion PB tree.

      You may also have to tinker a little with Project Settings.

      For Pocket PC 2003 you may actually be able to install and debug your NDIS
      protocol driver on WCE emulator.

      For Pocket PC 2003 Microsoft does include a WCE 4.X version of NDISUIO in
      PB. However, I never used it so I cannot help. I hope that you already have
      found that Windows CE does not use the same I/O model as "Big Windows" (at
      least from the driver's perspective). Under Windows CE there is no notion of
      an "IRP" whatsoever. Driver code associated with Device I/O on Windows CE
      will be COMPLETELY different from "Big Windows".

      There may be other forums that are better suited to getting Windows CE
      development advice.

      The information above should help you and save you from some of the grief I
      encountered. I probably won't provide much more help (i.e., the details) on
      this topic because I spent a fair amount of money (purchase of WCE hardware
      reference platforms) and time (WCE debugging is horrible) and hope to
      eventually recoup this investment through sales. (Sorry...).

      Good luck to you!

      Regards,

      Thomas F. Divine



      > -----Original Message-----
      > From: huiyouzhu [mailto:huiyouzhu@...]
      > Sent: Sunday, January 11, 2004 11:52 AM
      > To: discussion-pcausa@yahoogroups.com
      > Subject: [discussion-pcausa] How to build Ndisuio.dll on
      > Windows CE, help
      >
      >
      > I try to build/generate a Ndis protocol driver, similar to Ndisuio,
      > through Wince4.2 Platform builder, but it only generate .lib and .pdb
      > files. No .dll could be generated. It seems that the platform builder
      > makes the driver into the CEPC image
      >
      > The driver is going to use for PacketPC so a .dll format for NdisUIO
      > is mandatory. Help.
      >
      >
    • Huiyou Zhu
      Hi Thomas, Thanks for the information, which definitely will help me bypass not necessary work. I will let you know the progress. Thanks again. Huiyou Zhu ...
      Message 2 of 3 , Jan 11, 2004
      View Source
      • 0 Attachment
        Hi Thomas,

        Thanks for the information, which definitely will help
        me bypass not necessary work. I will let you know the
        progress.

        Thanks again.

        Huiyou Zhu


        --- "Thomas F. Divine" <tdivine@...> wrote:
        > There is no doubt that the development environment
        > for developing drivers
        > for Windows CE is confusing and difficult to master.
        > The Windows CE 4.X
        > development environment is much improved over the
        > Windows CE 3.0
        > environment, but is still not easy to use.
        >
        > The approach that I used worked adequately for
        > Pocket PC 2002 (WINCE 3.0)
        > and Pocket PC 2003 (WINCE 4.X). The key thing that I
        > found was that it is
        > NOT NECESSARY to use Platform Builder to build a
        > NDIS protocol driver for
        > these platforms (although some header and import
        > libraries from PB may be
        > needed). PCAUSA's Windows CE drivers
        > (http://www.rawether.net/embedded) are
        > actually built using eMbedded Visual C++ with the
        > companion Pocket PC SDK
        > installed.
        >
        > The starting point for building a NDIS protocol
        > driver under eMbedded Visual
        > C++ is to create a WCE Dynamic-Link Library project
        > for the appropriate
        > processor (e.g. ARMV4 for Pocket PC 2003). You will
        > add your NDIS protocol
        > driver code to this project. The DLL built under
        > this project will be the
        > NDIS protocol driver.
        >
        > Certainly, when you attempt to build this project
        > you may find missing
        > include files and missing exports. You must resolve
        > these by first looking
        > for the files in the Pocket PC SDK tree and second
        > in the companion PB tree.
        >
        > You may also have to tinker a little with Project
        > Settings.
        >
        > For Pocket PC 2003 you may actually be able to
        > install and debug your NDIS
        > protocol driver on WCE emulator.
        >
        > For Pocket PC 2003 Microsoft does include a WCE 4.X
        > version of NDISUIO in
        > PB. However, I never used it so I cannot help. I
        > hope that you already have
        > found that Windows CE does not use the same I/O
        > model as "Big Windows" (at
        > least from the driver's perspective). Under Windows
        > CE there is no notion of
        > an "IRP" whatsoever. Driver code associated with
        > Device I/O on Windows CE
        > will be COMPLETELY different from "Big Windows".
        >
        > There may be other forums that are better suited to
        > getting Windows CE
        > development advice.
        >
        > The information above should help you and save you
        > from some of the grief I
        > encountered. I probably won't provide much more help
        > (i.e., the details) on
        > this topic because I spent a fair amount of money
        > (purchase of WCE hardware
        > reference platforms) and time (WCE debugging is
        > horrible) and hope to
        > eventually recoup this investment through sales.
        > (Sorry...).
        >
        > Good luck to you!
        >
        > Regards,
        >
        > Thomas F. Divine
        >
        >
        >
        > > -----Original Message-----
        > > From: huiyouzhu [mailto:huiyouzhu@...]
        > > Sent: Sunday, January 11, 2004 11:52 AM
        > > To: discussion-pcausa@yahoogroups.com
        > > Subject: [discussion-pcausa] How to build
        > Ndisuio.dll on
        > > Windows CE, help
        > >
        > >
        > > I try to build/generate a Ndis protocol driver,
        > similar to Ndisuio,
        > > through Wince4.2 Platform builder, but it only
        > generate .lib and .pdb
        > > files. No .dll could be generated. It seems that
        > the platform builder
        > > makes the driver into the CEPC image
        > >
        > > The driver is going to use for PacketPC so a .dll
        > format for NdisUIO
        > > is mandatory. Help.
        > >
        > >
        >
        >
        >
        > ----------------------
        >
        > Copyright � 1999-2004 Printing Communications
        > Assoc., Inc. (PCAUSA)
        >
        >
        > Yahoo! Groups Links
        >
        > To visit your group on the web, go to:
        > http://groups.yahoo.com/group/discussion-pcausa/
        >
        > To unsubscribe from this group, send an email to:
        > discussion-pcausa-unsubscribe@yahoogroups.com
        >
        > Your use of Yahoo! Groups is subject to:
        > http://docs.yahoo.com/info/terms/
        >
        >


        __________________________________
        Do you Yahoo!?
        Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
        http://hotjobs.sweepstakes.yahoo.com/signingbonus
      Your message has been successfully submitted and would be delivered to recipients shortly.