Hi Dave.

This morning I've been able to solve the error and began to debug the
application. There were two reasons for my problem:

 - the wininet.dll file i had was compiled for x86 platform. I've found a
thumb file version in internet.
 - I have removed the code related to the connection manager (files
openvpn.c and wince_portstuff.c) and the cellcore.lib link reference.

Also, in internet i have found that cellcore.dll is available in Windows
Mobile and Windows Embedded CE 6.0 but not in Windows CE 5.0
At this point, as you have said, i will need to do networking "in the more
conventional way", in spite of i don't know what it means yet, and how to do
it...

To sum up, my problem was i didn't have the correct platform libraries, plus
a big piece of ignorance...

Can you give me a link or reference to somewhere I could get information
about possibilities to solve my networking needs without the connection
manager?

Thank you very much for your help. It has been very useful. Probably i'll
come back soon with some new questions and doubts. I hope some day i'll be
able to solve someone questions too...

Best regards,

Jonathan.


2009/5/28 dave <d...@ziggurat29.com>

>  Sure, you're welcome.  Thumb should not fundamentally be a problem
> provided the platform and tools support it, and it sounds like in your case
> it does.
>
> Your assumptions about what you need are correct, I believe (i.e., you
> don't need the gui).  You may want to inspect the code, however, because
> there are routines for installing and loading the TAP driver that may be of
> interest.  They are in taputil.h,.c
>
> cellcore.dll is used to provide the Windows Connection Manager stuff, and
> in openvpn.exe this in openvpn.c, around line 203, and around line 284.  I
> should have conditional-compiled that as an option, but I didn't.  Similarly
> the support routines are in wince_portstuff.c at line 1631 through the end,
> and they can go, too (actually if you remove those first and compile, the
> compile should fail and you can find if there was anything I missed, but
> that should be it).
>
> Generic CE platforms don't use the Windows Connection Manager and do
> networking in the more conventional way, so you can probable do without it,
> and remove the cellcore.lib from your link step.
>
> Assuming your error message really means 'missing dlls' instead of 'invalid
> binary' then you should be better off.
>
> Again, if you want to send me your compiled binary, I can inspect it more
> closely if that is useful.
>
> -Dave
>
>  -----Original Message-----
> *From:* jonathan openvpn [mailto:jonathan.open...@gmail.com]
> *Sent:* Thursday, May 28, 2009 1:56 AM
> *To:* dave
> *Cc:* openvpn-devel@lists.sourceforge.net
> *Subject:* Re: [Openvpn-devel] CE port needed DLLs
>
> Hello.
>
> First of all, thank you for the quick response.
>
> We have other applications running on the Windows CE distribution and the
> linker option "MACHINE" is set to "THUMB".
> We are using a custom developed board, and we develop our applications
> through Visual Studio 2005.
>
> We only need to stablish a connection to a VPN server without need of a
> GUI, all configuration must be transparent to the user. Therefore I think we
> only need the openvpn executable and TAP_CE driver. If i'm not wrong, the
> ovpncmgr module is to provide a GUI for the openVPN client. Is that correct?
>
> When no dll is provided, and I try to debug the application from Visual
> Studio connected to the device, i get the message: "An error occurred that
> usually indicates a corrupt installation (code 0x8007007e). If the problem
> persists, repair your Visual Studio installation via 'Add or Remove
> Programs' in control Panel"
> Some webs refer to that error like some archives are missing. When I put
> the dlls you have listed below, the error changes to: "openvpn is not a
> valid WindowsCE application". I suspect that some of the dll may not be
> correct for my platform. Could it be the source of my problem?
>
> I have not been able to find the cellcore.dll for our platform. Does it
> mean we cannot use the connection manager functionality? I have read in some
> forums that this functionality is not present on Windows CE...
>
> Sorry for my ignorance, I am pretty new on Windows CE.
>
> Your help is so much appreciated. Thank you very much.
>
> Jonathan.
>
>
> 2009/5/27 dave <d...@ziggurat29.com>
>
>>  That message usually means the binary is hosed, and I believe missing
>> dlls give a different message.
>> Are you sure Thumb is correct for your platform?  Are you using a consumer
>> device like a pocket pc phone, etc, or is it a custom board?
>>
>> I ask that because the existing code does use some functionality peculiar
>> to the pocket pc (phone) that is not generally available on other platforms,
>> yet the SDKs ofen include the headers and import libs, allowing you to
>> successfully compile, but then you can't run it on the target device.
>>
>> When you say 'client application' are you meaning just the gui, or the
>> whole entire set of programs (i.e., the TAP driver, the openvpn executable,
>> and the gui).
>>
>> You can use DUMPBIN to find the dlls from the exe, and also inspect the
>> header to see the cpu configuration.  Here is a short list, if it helps:
>>
>> openvpn:
>> *  coredll.dll
>> *  w2s.dll
>> *  iphlpapi.dll
>> *  wininet.dll
>> *  ole32.dll
>> *  cellcore.dll
>>
>> tap-ce:
>> *  ndis.dll
>> *  coredll.dll
>>
>> ovpncmgr:
>> *  iphlpapi.dll
>> *  toolhelp.dll
>> *  cellcore.dll
>> *  ole32.dll
>> *  mfcce300.dll
>> *  coredll.dll
>> *  winsock.dll
>>
>> Your build may (will) differ depending on your platform, because your
>> platform builder may have put some of these features in different dlls.
>> That list was for PocketPC.
>>
>> Now, the cellcore.dll, you may not have on other platforms.  It is needed
>> for supporting Windows Connectin Manager, and you can surgically cut out
>> that functionality if your platform doesn't have it.  Most of the rest is
>> fairly standard.
>>
>> Before doing surgery, you may wish to re-check your assumptions.  Also, if
>> you wish to zip up your problem binaries and send them to me directly, I
>> will do a quick inspection for you.
>>
>> -dave
>>
>>  -----Original Message-----
>> *From:* jonathan openvpn [mailto:jonathan.open...@gmail.com]
>> *Sent:* Wednesday, May 27, 2009 5:36 AM
>> *To:* openvpn-devel@lists.sourceforge.net
>> *Subject:* [Openvpn-devel] CE port needed DLLs
>>
>> Hello.
>>
>> I'm triying to execute a Windows CE 5.0 porting of openvpn client
>> application. I've been successful on compiling it but when i try to execute
>> i receive the message: "openvpn is not a valid WindowsCE application".
>>
>> I am compiling to ARM-Thumb architecture. I suspect there is a problem
>> with needed DLLs.
>>
>> Could anyone tell me wich DLLs are needed and where could i get them?
>>
>> Thank you very much.
>>
>>
>

Reply via email to