Newbie help : VB.NET / CE.NET 4.1 Deploy failure

S

Sim Huxley

Hi, wonder if anyone can help. This problem is really getting on my
nerves now. I can write an application in VB.NET using Vis Studio.NET
2003, and I can deploy to my device fine (well not fine actually, I
can only deploy from VS.NET 2003 if I first reset the persistent
registry on the target).

Anyway, the app runs fine until I switch off and switch back on again.
Then even if I've stored it on the Flash card, it won't execute. Could
it have something to do with Compact Framework elements not being
present in the file system any more (after the power-down), as my
desktop PC used to download both NETCF files and a system_SR_Enu.cab
file, before each debugging session, until I installed the .NETCF into
my kernel image and re-built it - now the desktop only uploads the
system_sr_enu.cab file before a debugging session. Can I eliminate
this somehow?

anyway the most important problem I have is...how do I get my VB.NET
application to run standalone on my target, upon powering it up?
Bearing in mind it won't run from Flash after a power-off. I've tried
including my .exe in platform builder but I don't think I'm doing it
right. Can anyone give me some pointers?

Help!!

Cheers

Simon
 
P

Paul G. Tobey [eMVP]

Include the .NET CF in the OS, so that it will always be present, and store
your application EXE in persistent storage on the device. This works fine.

Paul T.
 
S

Sim Huxley

Hi Paul

I tried that (quick confirmation : I built the OS in Platform Builder
after selecting ".NET Compact Framework 1.0" from the catalogue)....
however it still fails to run from the persistent storage after a
fresh power-up. When I deploy and launch it from within VS 2003 first,
it works... although VS initially uploads "system_SR_enu.cab" to the
target and installs it just before launching.

Have I missed something in Platform Builder? Should I somehow have
"system_SR_enu.cab" (or whatever that installs as) as part of the OS?
Any idea how I can do this?

Thanks for replying - any ideas appreciated!!

Simon
 
A

Andy Roxburgh

Hi Simon

I had the same problems.

Instead of building the EXE directly, try building it within Visual
Studio 2003 as a CAB file, and uploading it to your Compact Flash card
(or whatever your persistent storage system is) through ActiveSync.
Then execute it on the target and it will install your app under
"/program files/<app name>/<app name>.exe". Copy the files out of
there back to your flash card. Reset the thing and try running the app
from the flashcard. It should run.

Don't ask me how or why this works, but it does! (Actually can anyone
enlighten us?) It seems to need this with VB.NET+NETCF. Writing an app
in eVC without using the NETCF works fine without the above.

Also IIRC, system_SR_enu.cab installs as system.sr.dll on the target.
It's the dll that holds the String Resources, which allows you to see
all of the .NET Compact Framework error messages in different
languages depending on your locale setting. (if that's your thing).
system_SR_deu.cab creates German errors for example; system_SR_it.cab
Italian ones.

Hope that helps

Andy

--
Warwick Control Technologies Ltd, UK
 
P

Paul G. Tobey [eMVP]

Simon,

Maybe there's something different in 4.1 and 4.2. I'm able to download the
EXE with Remote File Viewer after a clean boot and the program will run
fine. I guess that the other possibility is that you have an assembly
reference in your project that isn't normally installed on the device, but
which is automatically downloaded when your solution is deployed from VS.NET
2003 or something...

Paul T.

Sim Huxley said:
Hi Paul

I tried that (quick confirmation : I built the OS in Platform Builder
after selecting ".NET Compact Framework 1.0" from the catalogue)....
however it still fails to run from the persistent storage after a
fresh power-up. When I deploy and launch it from within VS 2003 first,
it works... although VS initially uploads "system_SR_enu.cab" to the
target and installs it just before launching.

Have I missed something in Platform Builder? Should I somehow have
"system_SR_enu.cab" (or whatever that installs as) as part of the OS?
Any idea how I can do this?

Thanks for replying - any ideas appreciated!!

Simon




"Paul G. Tobey [eMVP]" <[email protected]> wrote in message
Include the .NET CF in the OS, so that it will always be present, and store
your application EXE in persistent storage on the device. This works fine.

Paul T.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top