Support

Coordinator
Sep 14, 2007 at 3:22 AM
Post your questions or suggestions to this group.
Nov 4, 2007 at 8:33 PM
Is there any way these versions of .NET CF can be made to work with existing .NET CF 1.0 programs?
Coordinator
Nov 4, 2007 at 11:21 PM
Edited Nov 5, 2007 at 2:41 AM
You need to rename the file of the program you need to run from .exe to .net. for example: MyApp.exe should be renamed as MyApp.net or MyApp.exe.net.
or if you preffer not to rename it you should run it like this:
netexec.exe MyApp.exe

These old versions of Windows CE do not recognise the .NET executables and the OS loader can't execute them. That is why we need the netexec.exe. netexec.exe loads the .NET executable and executes it. The .net extension is registered in the system to do exactly that, to run netexec.exe %1 where %1 is the .NET exe you want to run.
Nov 5, 2007 at 5:04 AM
Edited Nov 5, 2007 at 6:33 AM
Sorry, but it doesn't seem to work so far. (I'm trying the ARM CE 2.11 version on my HP Jornada 820.) I still get "not a valid Windows CE application" when I try either method you've described. (In the case of running it via Run -> netexec.exe MyApp.exe, it says that netexec.exe is not a valid CE app. I confirmed this by double-tapping on \Windows\netexec.exe directly.) I checked the registry under HKEYCLASSESROOT, and .net does appear properly registered. I already got the same "not a valid CE app" error when I tried to run HelloWorld, but I couldn't post the error here because there was no forum for the CE 2.11 ARM version. It looks like the ARM netexec.exe isn't working.

EDIT: Trying the MIPS version in Samsung IZZI Pro - on that device, when I try the "Run" method, I get illegal operation messages. I'm guessing that the programs I'm trying need a .NET CF 1.0 service pack, and maybe that's what's causing the error. (It's hard to identify whether a .NET CF app requires a service pack version of .NET CF 1.0.)
Coordinator
Nov 5, 2007 at 10:42 PM
CE_Geek, I have updated the netcf.core.wce211.arm.cab release. Download and install the new release and see if that is going to fix it. Thanks for helping.
Nov 6, 2007 at 8:16 AM
Sorry, but I'm still getting the same thing: "not a valid Windows CE application."
Coordinator
Nov 6, 2007 at 10:50 PM
What exactly does it say for Windows version and processor in the Control Panel->System?
Nov 10, 2007 at 3:44 AM
Edited Nov 10, 2007 at 3:46 AM
Hey, I had the same trouble when I tested it on some of my ARM-based Windows CE 3.0 and CE 4.2 devices. Yeah, I know its as good as worthless on CE 3.0+ because its already available but I don't own any CE 2.x devices and figured it was worth a shot. ;)

Indeed, it was. Here are some of my observations.

While the .NET association is worthless because netexec.exe refuses to execute, .NET exe files work fine on the newer devices when executed directly due to the built in OS support. Of course, that doesn't do the CE 2.x devices this is intended for much good...but it at least proves the main framework itself is working.

I can't understand it either. I checked the netexec.exe multiple times with various dependency checking applications and no problems are reported. Both applications are reporting the correct OS version, processor ID and are able to resolve all DLL imports yet Windows CE STILL does not think they are valid applications when they are executed. WTF? I also noticed that you include 2 completely different CGACUTILs in your cab. Why is that? The one named cgacutil.exe has the same problems netexec has while the other one ( _cgacutil.exe) runs just fine and reports NETCF build 1.0.2268.00. (Speaking of which... Do you think it will be possible to upgrade to one of the newer builds in the future and do you have the source code to anything newer or do just depend far too much on CE3?)

Another odd thing I noticed: If an app is not in the same directory as the core (managed) NETCF assemblies, it just will not execute. Strangely, an app will not be able to find them even if they are in a systempath like \Windows. Sorry if this is a known issue or does not happen on CE 2.0. If its not, my best guess as to the cause is an invalid component like setup.dll or cgacutil causing the framework assemblies to not register properly or at all. Its very strange and annoying, though.


I at first assumed that the error CEGeek described and what I encountered in my own testing was just caused by me using components designed/tested only for older CE devices on newer ones and that it works fine on the CE 2.x versions its targeted at... but now, I'm not so sure based on CEGeek's comments.

Also... How exactly do you compile this port? I assume you use VC++6 because I needed to convert the projects for eVC3. Other than that, what do you do? Once inside eVC3 they compiled only for SH3. With the other processors, it was hit or miss what I could get to properly compile between the different projects. Am I missing something? Do I need to download all 4 of your source releases mix and match them to get it to compile in some working fashion or is something missing from them that makes it difficult for someone outside MS to compile this source?

Just for your reference, I tested it on the following devices and all results were the same as I describe above:
HP Jornada 720 (Handheld PC 2000/CE 3.0, StrongARM)
Shinco GM-400 series PNA (WinCE 4.20, unspecified Samsung ARM920 core)
NEC MobilePro 900c (WinCE 4.20, Intel PXA255 Xscale)

Anyway, thanks for all your hard work in making this port possible. I never in my life would have imagined the NETCF would ever make it to CE 2.0. Heh, now all you need to do is port it to CE 1.0 and the NETCF will work on every version of Windows CE made. I'm kidding, of course...but it would still be nice. ;) I hope this post was helpful and that you can answer some of my questions as well. Thanks!

PS: How the heck did you get the source code for the NETCF in the first place? Was it recently made "shared source" and I missed it or are you an MS employee with special access and just decided to make it unofficially availble here on codeplex?
Coordinator
Nov 16, 2007 at 2:59 AM
Let me try to answer your questions in short.

1) There is some kind of issue with ARM devices not being able to run the netexec.exe and cgacutil.exe. The device reports it as not valid application. As result of that the setup fails to register the .net system assemblies in the GAC and also to register the .net extension in the shell. That is the reason why you have to have all of your assemblies together with the exe for it to execute. I will try to resolve this issue.

2) The source project file is for VC++ 6. It compiles only for SH3. I haven't updated the repository with the code for the other processors. I will do this after I clear it up a bit.

3) The _cgacutil.exe is the actual cgacutil.exe from the .NET Compact Framework. Unfortunately it requires an API that returns the command line parameters passed to it that the WinCE 2.0 doesn't have. To make it work I renamed the original cgacutil.exe to _cgacutil.exe and created another cgacutil.exe that would take the input parameters and run the _cgacutil.exe making sure it would get the parameters.

4) I don't have the source code of the NETCF. All I did is to provide the missing API the NETCF needs to run in WinCE 2.0. The NETCF files are the same files you will find in .NETCF 1.0 release from MS.
Dec 17, 2007 at 9:07 PM

tfgbd wrote:
Another odd thing I noticed: If an app is not in the same directory as the core (managed) NETCF assemblies, it just will not execute. Strangely, an app will not be able to find them even if they are in a systempath like \Windows. Sorry if this is a known issue or does not happen on CE 2.0. If its not, my best guess as to the cause is an invalid component like setup.dll or cgacutil causing the framework assemblies to not register properly or at all. Its very strange and annoying, though.


I noticed this too, finally. I was able to get it installed with no problem but I couldn't get it to run a test app I wrote. After fighting with it for a while, I noticed this comment and copied the executable to the installation directory. Voila! It worked fine.

For the record, I'm running it on a IBM Workpad z50 which has 2.11 of the Win CE OS. 16 Megs of RAM . I have a HP Journada 810 or so that I will test as well, as soon as it is returned to me.
Coordinator
Dec 18, 2007 at 4:08 AM
You have to let it install in the default folder. Otherwise the setup won't register the assemblies in the GAC.


chrishansen wrote:

tfgbd wrote:
Another odd thing I noticed: If an app is not in the same directory as the core (managed) NETCF assemblies, it just will not execute. Strangely, an app will not be able to find them even if they are in a systempath like \Windows. Sorry if this is a known issue or does not happen on CE 2.0. If its not, my best guess as to the cause is an invalid component like setup.dll or cgacutil causing the framework assemblies to not register properly or at all. Its very strange and annoying, though.


I noticed this too, finally. I was able to get it installed with no problem but I couldn't get it to run a test app I wrote. After fighting with it for a while, I noticed this comment and copied the executable to the installation directory. Voila! It worked fine.

For the record, I'm running it on a IBM Workpad z50 which has 2.11 of the Win CE OS. 16 Megs of RAM . I have a HP Journada 810 or so that I will test as well, as soon as it is returned to me.

Dec 18, 2007 at 4:14 PM

dstefanov wrote:
You have to let it install in the default folder. Otherwise the setup won't register the assemblies in the GAC.


Actually, I let it install into the default folder. What I was referring to was that I can only run applications from the installed directory. If I put the executable into a different directory and attempt to run it, nothing happens. It isn't a huge problem though; I was just wondering if there was something I can set or try to allow apps to work in other directories.
Coordinator
Dec 19, 2007 at 1:13 AM
There were problems with one of the BETA releases. We have new releases now. Please try to install the .NETCF 1.0 SP3 and see if it will fix the issue.


chrishansen wrote:

dstefanov wrote:
You have to let it install in the default folder. Otherwise the setup won't register the assemblies in the GAC.


Actually, I let it install into the default folder. What I was referring to was that I can only run applications from the installed directory. If I put the executable into a different directory and attempt to run it, nothing happens. It isn't a huge problem though; I was just wondering if there was something I can set or try to allow apps to work in other directories.

Jan 28, 2009 at 5:14 AM
Even though there was never an original build of .NET CF 1.0 for the SH4 processor (since it only existed in a few CE 2.11 H/PCs), is there any possibility of creating one now for those devices?

Another thought: is there any possibility of porting .NET CF 2.0 to Windows CE 3.0 (H/PC 2000 as well as Pocket PC 2000/2002) - at least for ARM processors?
Coordinator
Jan 31, 2009 at 12:16 AM
Edited Jan 31, 2009 at 12:19 AM
Since there is no .NET CF 1.0 for SH4 processor I can't adapt it to work with CE 2.11. Sorry.

.NET CF 2.0 for 2.11 and 3.0 is possible to adapt. I have started the work but am waiting to see some support of my efforts from the community before I continue. I invite anyone who would want to see .NET CF 2.0 for CE 2.11 or 3.00 to vote here: Add support for .NET Compact Framework 2.0 on Windows CE 2.00/2.11 . I have this link on the home page, but  I should move it up close to the top for the people to see.

Feb 26, 2009 at 6:29 AM
- and then you go and compile an SH4 version anyway. Nice!
Coordinator
Feb 26, 2009 at 2:52 PM
Actually there is an existing build of .NET CF 1.0 for SH4 that I have adapted for CE 2.11. Thanks for trying it out. Now I know it works!
Feb 27, 2009 at 11:27 AM
Interesting. I figured there'd be an x86 build out there somewhere, but I didn't expect an SH4 one. Glad you were able to track it down.
Apr 6, 2009 at 7:19 PM
Has anyone seen an error like this when trying to run programs:
MISC::HandleAr+0x5b
Control::_InitInstance+0x8a
Control::.ctor+0xf
ToolBar::.ctor+ox8
frmMain::InitialiazeComponent+0x53
frmMain::.ctor0x1f
frmMain::Main+0x5
The hello world app is the only one that works for me now. Weird.
Coordinator
Apr 6, 2009 at 7:22 PM
What is the actual text of the error?
It looks like the error is related to your ToolBar control.
Apr 7, 2009 at 1:52 PM
"An unexpected error has occured in PocketPDF.exe.net.
Select Quit and then restart this program, or select Details for more information."

I select Details and :
PocketPDF.exe.net
Exception (followed by the above posted message)

It does not always happen, but 9/10 I am now getting this message. The only exception is the hello world app which always loads fine.
Coordinator
Apr 12, 2009 at 11:10 PM
That would be hard to debug since we don't have the source code. On what processor and platform are you getting this error?
May 26, 2009 at 2:16 PM

I am using a mips R4000 processor on a Casio BE-300 running a hack system called BeShell Version 3.0 , basically a combination that allows running CE 2.X, HPC, PPC 2000, and a number of other software with a few registry tweaks. Since my post over a month ago, I have been able to run programs more effectively after moving file locations around and what not. So, my problem seems to have resolved itself, although it does raise its ugly head every once and a while.

Feb 2, 2010 at 7:27 PM

The staff of HPC:Factor want to know if it'd be all right for us to upload the most recent releases to our Download Centre for our members to download for their CE 2.xx devices.

Coordinator
Feb 17, 2010 at 11:35 PM

What is the advantage of hosting the binaries there vs. here? Isn't a link to this site enough?