This site is no longer active and is available for archival purposes only. Registration and login is disabled.

I cannot make hekkus library work


I cannot make hekkus library work

Postby domic62 » Nov 22, 2009 @ 1:29am

Hi,

I want to play sounds on my program on pocket pc 2003.
I am using the emulator on VC++ 5.

I am using Edgelib version 3-97 Evaluation (my purpose is teaching)
and Hekkus 0.99.8.7 lite

My code source looks like that :

ERESULT MaClasse::OnDisplayInit(ENATIVETYPE instance, ClassEDisplay *display)
{

ERESULT ok;

unsigned long bruit;
ok = this->ecd.snd->Open();
ok = this->ecd.snd->LoadSoundEffect(bruit,"bruit.wav");
this->ecd.snd->SetSoundVolume(200);
....
}

I checked that ok == E_OK.

void MaClasse::OnButtonDown(unsigned long bnr, EBUTTONLIST *blist)
{
....
long channel = this->ecd.snd->PlaySound(bruit, 0, 0, true);
....
}

Is the dtor supposed to do this ?

MaClasse::~MaClasse()
{
this->ecd.snd->Close();
}

As advised to do so, I downloaded the Hekkus library. I put the line #define ESOUND_HEKKUS and I set the paths for library and include (for hss.h and hss.lib).
compiling and linking are doing fine. which tells me that hss.lib and hss.h were found. Then when starting the appli on the emulator, it crashes. My guess is that the DLL hss.dll couldn't be loaded when deploying on the emulator or may be I linked with the wrong library. Should I use the one on :
C:\edgelib\hekkus\HekkusSoundSystem\lib\ppc-arm

or the one on :

C:\edgelib\hekkus\HekkusSoundSystem\lib\ppc-emu2003

I checked all the threads about Hekkus and I noticed that one is advised to deploy "manually" the hss.dll. So I tried to deploy the hss.dll the same way I do with .gif files but the hss.dll was not copied to the emulator in the current directory.

I have 1 more question :

In a VC++5 project, how can a C++ program be linked with the right dll?
I know how to deal with static library linkage but I don't know how to make DLLs work.


Thank you ahead for any tip
domic62
pm Member
 
Posts: 3
Joined: Nov 5, 2009 @ 12:07am


Postby edge » Nov 23, 2009 @ 10:34am

Hi,

Make sure your Windows Mobile emulator is using Windows Mobile 5 or later. It needs to be a full ARM-based emulator (this wasn't the case in earlier emulators such as the Pocket PC 2003 emulator). For Hekkus you can use the ppc-arm library.

To build your application, you only need to link the .lib file. For Hekkus, the .lib file is not a static library, but only contains references to the DLL. That's why the DLL must be placed on the actual device or emulator, near your executable.
EDGELIB: Cross-platform mobile development at your fingertips
http://www.edgelib.com
User avatar
edge
pm Member
 
Posts: 1180
Joined: Aug 22, 2005 @ 3:42pm
Location: The Netherlands


Return to EDGELIB


Sort


Forum Description

Powerful and affordable C++ middleware solution covering true multi-platform 2D, 3D and network features for Apple iPhone, Windows Mobile, Symbian S60, UIQ, Linux and Windows desktop.

Moderator:

edge

Forum permissions

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

cron