Win32Error when executinng deployed progarm.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Win32Error when executinng deployed progarm.

kuo-2
Hi,
   I deployed my progrm on my WinXP platform.
   It ran ok in the same computers, but I noticed that whenever I ran it in
another computer with the same OS of WinXP professional, service pack 1 but
without DolphinXP installed, an error message always appeared up before the
shell shown,
   It is with the title: 'Win32Error'
saying that DolphinSureCrypto'(167E: cann't find te module.)'

  Did anyone know what's going on ?


Best regards,
Tk Kuo
www.tkneuro.com


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Yar Hwee Boon-3
On Fri, 24 Sep 2004 17:22:22 +0800, kuo <[hidden email]> wrote:

>    It is with the title: 'Win32Error'
> saying that DolphinSureCrypto'(167E: cann't find te module.)'
>
>   Did anyone know what's going on ?

Probably missing DolphinSureCrypto.dll?

--
Regards
HweeBoon
MotionObj


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Chris Uppal-3
In reply to this post by kuo-2
kuo wrote:

>    It is with the title: 'Win32Error'
> saying that DolphinSureCrypto'(167E: cann't find te module.)'
>
>   Did anyone know what's going on ?

The SecureHashAlgorithm class, which is used in various places, uses the
DolphinSureCrypto.DLL to do its computations.  I don't /think/ that code is
bound into a ToGo application, so you have to include the DLL separately with
your application's distribution.

BTW, does anyone know if it's possible to include a DLL as a Window's resource
as part of a .exe, and load that DLL at runtime from the resource rather than
the file system ?

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Sean Malloy-5
> BTW, does anyone know if it's possible to include a DLL as a Window's
> resource
> as part of a .exe, and load that DLL at runtime from the resource rather
> than
> the file system ?

The only way that comes to mind, is before you attempt to load the library,
is to have loaded the resource and written it to the file system. You could
delete it again when the app shuts down.


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Chris Uppal-3
Sean Malloy wrote:
> > BTW, does anyone know if it's possible to include a DLL as a Window's
> > resource
> > as part of a .exe, and load that DLL at runtime from the resource rather
> > than
> > the file system ?
>
> The only way that comes to mind, is before you attempt to load the
> library, is to have loaded the resource and written it to the file
> system.

Pity!  It'd be nice to include all the necessary DLLs in an application's
resources, and have Windows find them automatically at run time.

I suppose that kind of defeats the object of DLLs, though...

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Chris Uppal-3
In reply to this post by Chris Uppal-3
I wrote:

> >    It is with the title: 'Win32Error'
> > saying that DolphinSureCrypto'(167E: cann't find te module.)'
> >
> >   Did anyone know what's going on ?
>
> The SecureHashAlgorithm class, which is used in various places, uses the
> DolphinSureCrypto.DLL to do its computations.

I've just remembered something.  The PC1Cipher class makes use of
SecureHashAlgorithm in its #churnRandPool method, and that method is run at
image startup (which includes when a .exe starts up, if PC1Cypher has not been
stripped).  It sounds as if you may have PC1Cipher left in your deployed .exe,
whether accidentally or because you need it for something.

If you /do/ need PC1Cipher, but don't need its #generateRandomWithBits: method,
then I think you can remove the image startup trigger (as part of your
deployment script), in which case you should be able to use PC1Cipher without
needing the DolphinSureCrypto DLL.

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Sean Malloy-5
In reply to this post by Chris Uppal-3
> Pity!  It'd be nice to include all the necessary DLLs in an application's
> resources, and have Windows find them automatically at run time.
>
> I suppose that kind of defeats the object of DLLs, though...

http://www.molebox.com/

Is a tool that looks (on the surface) to do it. So it must be possible!


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

kuo-2
In reply to this post by Chris Uppal-3
"Chris Uppal" <[hidden email]> wrote:
> > The SecureHashAlgorithm class, which is used in various places, uses the
> > DolphinSureCrypto.DLL to do its computations.
>
> I've just remembered something.  The PC1Cipher class makes use of
> SecureHashAlgorithm in its #churnRandPool method, and that method is run
at
> image startup (which includes when a .exe starts up, if PC1Cypher has not
been
> stripped).  It sounds as if you may have PC1Cipher left in your deployed
.exe,
> whether accidentally or because you need it for something.
>
> If you /do/ need PC1Cipher, but don't need its #generateRandomWithBits:
method,
> then I think you can remove the image startup trigger (as part of your
> deployment script), in which case you should be able to use PC1Cipher
without
> needing the DolphinSureCrypto DLL.
>
Thanks for your detailed analysis about my problems.
After further workup, I found that the package, DolphinSure, was included
due to my fault, that it remained in my deployed executables because I set
redundent packages not removed at stripping. My program worked well and
became smaller by using manual prerequisits ( including the loose methods in
SSW Modal package).
But I didn't use any codes that reference those related classes in the
DolphinSure package, so, I don't know why at startup, the
DolphinSureCrypto.dll library would be called.
BTW, could the PC1Cipher class be used to decrypt DVD data, since there were
many related softwares being written as freewares, would Dolphin have such
capability?


Best regards,
Tk Kuo


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Chris Uppal-3
In reply to this post by Sean Malloy-5
Sean Malloy wrote:

> http://www.molebox.com/
>
> Is a tool that looks (on the surface) to do it. So it must be possible!

Interesting.

As far as I can see, it works by hooking the application's use of the Windows
api to redirect file operations to the elements of the packed file.  Deep
magic...

I doubt if it'd work for Dolphin, though, since I think Dolphin does all that
kind of stuff dynamically.

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: Win32Error when executinng deployed progarm.

Chris Uppal-3
In reply to this post by kuo-2
kuo wrote:

> But I didn't use any codes that reference those related classes in the
> DolphinSure package, so, I don't know why at startup, the
> DolphinSureCrypto.dll library would be called.

The PC1Cipher class arranges to be sent the #sessionStarted event (see
PC1Cipher class>>initialize); when it gets that event it calls its class-side
method #churnRandPool, which in turn makes use of the DLL.  This happens on
every image startup, including startup of any deployed applications that
include the PC1Cipher class (unless they have explicitly arranged for the
notification not to be sent).


> BTW, could the PC1Cipher class be used to decrypt DVD data, since there
> were many related softwares being written as freewares, would Dolphin
> have such capability?

I don't think that DVD data is encrypted using that particular algorithm (but I
could be wrong -- I don't know much about it).  In any case, you'd need a valid
key, as well as the decryption code.

If you want to read DVD data from Dolphin, then you could try wrapping:

    http://developers.videolan.org/libdvdcss/

which looks pretty easy (just 6 simple functions and no structures).

    -- chris