#1 wrong type cast

open
nobody
None
5
2003-12-09
2003-12-09
Petros Moisiadis
No

program: recmp3 v1.3 by coder_1024
source file: recmp3Dlg.cpp
line: 268

The 4th parameter of the waveInOpen() function contains
the (type-name) cast operator: (DWORD_PTR)
But DWORD_PTR is not previously declared, so the
compiler (VC++ 6) reports an error. I managed to fix it
by replacing the typename DWORD_PTR with __int32 and
now the program can be compiled without errors. I have
also attached the patched file.

Discussion

  • fixed recmp3Dlg.cpp file

     
    Attachments
  • Grin44
    Grin44
    2005-04-01

    Logged In: YES
    user_id=1251150

    This type is declared in msacmdrv.h in ACM part of LAME.
    This part doesn't seem to be necesary.
    I tryed changing to (unsigned int) and it worked well.

     
  • Logged In: NO

    This is not a bug. DWORD_PTR is declared in the basetsd.h supplied with the DirectX sdk (e.g. Direct X 9.0 SDK).
    You need to configure VC++ so it can find the SDK. Tools => Options => Directories. From there, select "Show Directories For" => "Include Files" and add the SDK include directory (e.g. C:\DXSDK\Include). You could also replace it by another pointer type, but this *could* turn out bad, unless you know exactly what you are doing.