Re: Adding SDK

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



If you're building it as part of building the OS, you don't have to install
the SDK. I prefer sources projects myself and find them easy to edit to add
weird directories for other pieces that you need. However, for many
application types, building the application in Platform Builder is a bad
idea to me. Managed code projects, C# or VB.NET, I would never do that way.
Projects using MFC, ATL, or other large class libraries I would not do that
way. In fact, most projects I would not do this way. On our devices, ONLY
those things that absolutely have to be in nk.bin are in nk.bin. Everything
else is stored in a flash filesystem, on a storage card, or somewhere else,
where it can easily be debugged, updated, or moved.

If you want to build this application from Platform Builder, create your
Subproject and select suitable settings. In particular, I would NOT choose
Empty Project at this point. If your source code currently uses WinMain()
as its entry point, choose Hello, World application and, once the project
has been generated, replace the main .c file generated by the wizard with
yours. If your entry point is main(), choose Simple Windows CE application
and, again, after the project is generated, replace the main .c file with
your own.

Once you have the subproject in what looks like a buildable state,
right-click on it and choose Build. This should both compile and link the
project, and copy the target file <yourproject.exe> to the "flat release
directory", and do a makeimg operation to build the OS with the new file in
it. The project's BIB file, in the Parameter Files folder under the
subproject, should look for it there. My guess is that the Empty Project
option is not setting the build options correctly to copy the output of the
build of the project to the flat release folder or something of that sort.

Paul T.

"San" <San@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:002D2F42-1E52-4A70-AAEB-ED2997FD417E@xxxxxxxxxxxxxxxx
I was using Platform Builder for including project on OS image.
When you create a new project on PB it ask you for choosing between
Workspace or Source project.
I'll try in that way.
But after that I should download that application to my smdk2443
board...that's why I was trying to include it on OS image..for using DNW
USB
downloader.

"Paul G. Tobey [eMVP]" wrote:

"a workspace project" is a little shaky. What do you mean by that (it's
not
a standard term that I remember)? You want to do File | New | Project in
VS2005. In the dialog that's presented, you want to choose Visual C++ |
Smart Device and the type of project you want. The wizard will then show
another dialog. Select Platforms. You should see your new SDK platform
in
the list. Add it to the supported platforms. Choose Application
Settings
and make suitable entries for what you're trying to do. Click Finish.
This
will generate a stand-alone, application solution targeted at your
device.
No Platform Builder needed; don't have to build the OS to change your
application, no OS subproject, etc.

Paul T.

"San" <San@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:903966A6-7F82-435D-9663-6A72602FF6D3@xxxxxxxxxxxxxxxx
Ok...I've followed your initial instructions...

I've created the SDK adding libraries and inclide files folders to the
"Additional Files" tag.

I've built SDK and I've run the .msi file.

After this installation I've create a workspace project adding to it
the
.c
source file and other include files (.h) that are used only by this
application. In this case I don't have to add them to the sdk, do I?

I've tried to build the project and I obtain a simple error:

Cannot open include file: 'rfid_library.h': No such file or directory

This include file is called by the main function and it's one of the
include
files I had added to the sdk...

Any idea?

"Paul G. Tobey [eMVP]" wrote:

*If* you have built and installed your device's SDK, you *NEVER* have
to
edit the include folder for a new project. When you target the SDK,
Visual
Studio knows where to find its include files, libraries, etc. I'd say
that
you're breaking more and more things as you try to take a shortcut.
Follow
my original instructions and build and install the SDK...

Paul T.

"San" <San@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:84B6C243-6515-4A32-9861-D6FDD0535432@xxxxxxxxxxxxxxxx
Sorry...I've made a mistaje asking you in this way...I'd like to
explain
you
the procedure I've follow...

1. I've create a new workspace empty project
2. On settings menu I've added include files folders but I had a
problem
when I tried to add the additional library for linker. So I fonund a
post
on
netgroup that talked about the same problem and I tried to solved
this
fact
adding the following code to makefile:

CopySDK:
if not EXIST $(_PROJECTSDKROOT)\lib mkdir $(_PROJECTSDKROOT)\lib
if not EXIST $(_PROJECTSDKROOT)\lib\$(_CPUINDPATH) mkdir
$(_PROJECTSDKROOT)\lib\$(_CPUINDPATH)
xcopy /I /D /Q $(_PROJECTROOT)\rfid.lib
$(_PROJECTSDKROOT)\lib\$(_CPUINDPATH)


%%This line of code was the only line that there was before my
adding
code:
!INCLUDE $(_MAKEENVROOT)\makefile.def

3. I've added my .c file as source file
4. Finally I've built the project

After taking that step I've tried to sysgen but it doesn't find the
readwrite.exe (application executable)...When I've built the project
it
hasn't generated .exe file...and I don't find the error...

Please could you help me?

Thanks a lot!!

"Paul G. Tobey [eMVP]" wrote:

Yes, you may add your EXE to a BIB file to add it to the ROM
version
of
the
operating system. That is certainly the easiest way to assure that
it's
in
every device that has the USB drivers.

Paul T.

"San" <San@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:9D047A33-B9CA-4C39-AFC8-DB0D55F7EF61@xxxxxxxxxxxxxxxx
Ok I've understood! I create my application, and after generating
the
.exe
file I can't include it on .bib file as I did with usb drivers!
Did
I
get
it??

My CE device is the smdk2443. I use the USB downloader for fusing
the
OS
image on it.

Thanks a lot!

"Paul G. Tobey [eMVP]" wrote:

If you read up on how the operating system is built, you'll see
information
on BIB files. These tell the image builder what files and
modules
are
put
into nk.bin. You can add an entry to your platform.bib or
project.bib
to
include a program or DLL that is built separately. Naturally,
since
you
know with all of your heart that .LIB files are used during the
construction
of DLLs and EXEs and are not executable, you, of course, won't
add
them
to
the OS.

Also, we don't know ANYTHING about your CE device, so how can we
possibly
answer your question about how to add things to it? Does it
have a
hard
disk? A removable storage card of some sort? The ability to
install
a
CAB
file? The ability to download files from the Internet? Any of
those
could
work, depending on how your device is built and what
capabilities
are
built
into the operating system...

Paul T.

"San" <San@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:FD01F934-8DB6-4B00-8399-5698CDEF6158@xxxxxxxxxxxxxxxx
Thank you. It was useful.

About the last part...I have another question. If I create the
application
out of the OS how can I add it to my CE device? Should I add
to
OS
image
all
libraries? (.dll and .lib)

The application should read acquired data from and (USB
connected)
UHF
Reader (RFID tech).

Thanks!


"Paul G. Tobey [eMVP]" wrote:

Sysgen automatically does a MakeImg. You did a "Sysgen", not
a
"Sysgen
current BSP", right?

Once you have done a full Sysgen of the OS, use the SDK tools
in
Platform
Builder to create a new SDK, configure it, and generate it.
That
creates
an
MSI file, typically in \wince500\pbworkspaces\<your
workspace>\sdk.
Install
that and the SDK should show up when you create a new Windows
CE
program
in
eVC/Visual Studio.

As to the basic question, you have two choices: you can build
your
application with Platform Builder, as a component of the
operating
system,
or you can use the *application* development tools, like
Visual
Studio
and
eMbedded Visual C++ to build the application. Which is right
depends
on
what the application does, whether it's required to be built
into
the
OS,
and how badly you need the nice tools in Visual Studio to
work
on
it.

Paul T.

"San" <San@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:D4B217E5-7335-4C7D-984B-E6155D56A202@xxxxxxxxxxxxxxxx
Hi,

I think I'm getting confused...I've created a new Platform
on
Windows
CE
5.0. I've added usb drivers (on project.bib file) and after
doing
sysgen
and
copy files to release directory I've run makeimg.

I've downloaded the OS image to my device and everything
works.

Now I have e new problem...I hvae headre files and, .dll
and
.lib
libraries
of the SDK of another devices and I have to run it on my CE
device...I
understood that what I had to do is to create a new SDK on
my
platform
(adding libraries folders), built it and create a new OS
image
for
downloading to my CE device...however when I try to make a
new
run-time
image
I obtain an error...

I think there is a concept that I'm not understanding...My
objetivo
was:
First, make my ce device recognize the other USB device.
Second,
download
to
my ce deviced the necessary files to allow a subsequent
development
of
connected device interface. Third, integrate an application
for
it
on
my
CE
device. I don't understand very well the proccess
explained
on
MSDN
library....could you give me a short explanation and tell
me
where
can
I
learn to do it in the right way?

Thanks in advance!!!

















.



Relevant Pages

  • Debugging CE Device through VS 2005
    ... This works fine for eVC 3 and 4 and also with the right SDK for CE ... SDK and an SDK built by myself for my CE device. ... Now i'd like to remote debug my application on the device through ... select my platform and device and click on 'Connect'. ...
    (microsoft.public.windowsce.embedded)
  • Re: Adding SDK
    ... on Platform Biulder but now I have another one... ... You should see your new SDK platform ... I've built SDK and I've run the .msi file. ... file I can't include it on .bib file as I did with usb drivers! ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Adding SDK
    ... I use the USB downloader for fusing the OS ... include a program or DLL that is built separately. ... The ability to download files from the Internet? ... Once you have done a full Sysgen of the OS, use the SDK tools in Platform ...
    (microsoft.public.windowsce.platbuilder)
  • Re: Adding SDK
    ... No Platform Builder needed; don't have to build the OS to change your ... I've created the SDK adding libraries and inclide files folders to the ... I've built SDK and I've run the .msi file. ... file I can't include it on .bib file as I did with usb drivers! ...
    (microsoft.public.windowsce.platbuilder)
  • Platform SDK and Visual Studio 6 - broken ?
    ... I had the misfortune of having to return to the Windows platform. ... I needed to install an updated Plaform SDK. ...
    (microsoft.public.vstudio.development)