DefaultListener fails

Tim De Baets tdebaets98 at yahoo.com
Thu Jan 12 21:03:45 UTC 2017


If the stack shown by VS2015 is that limited, you should probably start 
by looking at the stack in Process Explorer. For an even better view of 
what code is running, you could enable Microsoft's debugging symbols. 
Chances are that it will show the name of the function in ntdll.dll that 
is crashing.

To get debugging symbols, install the Debugging Tools for Windows (part 
of the Windows SDK). Then point Process Explorer to the Tools' 
dbghelp.dll file and configure the symbol lookup path. More info about 
that can be found on the web.

I can't offer any specific help on the debug listener, but I've had good 
results with Process Explorer when the stack shown by the IDE was unhelpful.

Kind regards,

Tim De Baets

Festus Hagen wrote:
> Hi all,
>
> Didn't want to submit a PR, Not sure if this is my issue, a VS issue or a TagLib issue, unable to find much on it.
>
>
> Win7, VS2015 with CLR, TagLib2.
>
> Having issues with either the Default or MyListener Debug listener when using C++ Windows Forms (CLR).
> Win32Console or Win32Projects with CLR do not fail.
>
>
> The error:
> Exception thrown at 0x77725932 (ntdll.dll) in WinFormTagLibManagedTest.exe: 0xC0000005: Access violation reading location 0x0E463E87.
>
>
> Stack shows only this:
>> 	CppWinFormTagLibManaged.exe!`anonymous namespace'::`dynamic initializer for 'defaultListener''() Line 63	C++
> Tried replacing with MyListener:
> #ifndef MYLISTENER_H
>
> #define MYLISTENER_H
>
> #include "tdebuglistener.h"
> #include "tstring.h"
> #include <Windows.h> // added for VS
>
> class MyListener : public TagLib::DebugListener {
> public:
> virtual void printMessage(const TagLib::String &msg) {
> //std::cerr << "MyListener: " << msg << std::endl; // Original
> ::OutputDebugStringW(msg.toCWString()); // added for VS
> }
> };
>
> DebugListener listener;
>
> #endif // MYLISTENER_H
>
>
> Wright or wrong, not sure, it works with Qt and MinGW, fails in the same place with the following error in VS2015:
>
>> c:\users\tcg\documents\visual studio 2015\projects\cppwinformtaglibmanaged\cppwinformtaglibmanaged\MyListener.h(20): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
> 1>c:\users\tcg\documents\visual studio 2015\projects\cppwinformtaglibmanaged\cppwinformtaglibmanaged\MyListener.h(20): error C2146: syntax error: missing ';' before identifier 'listener'
> 1>  MyListener.cpp
> 1>c:\users\tcg\documents\visual studio 2015\projects\cppwinformtaglibmanaged\cppwinformtaglibmanaged\MyListener.h(20): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
> 1>c:\users\tcg\documents\visual studio 2015\projects\cppwinformtaglibmanaged\cppwinformtaglibmanaged\MyListener.h(20): error C2146: syntax error: missing ';' before identifier 'listener'
>
>
> Any assistance, tip, pointers, ... welcome.
>
>
> Thanks
> -Enjoy
> fh : )_~

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/taglib-devel/attachments/20170112/8d84bf5f/attachment.html>


More information about the taglib-devel mailing list