[Insight-users] GDCM in ITK 3.14

Andreas Keil keil.andreas at gmail.com
Thu Jul 23 06:03:39 EDT 2009


2009/7/21 Andreas Keil <keil.andreas at gmail.com>:

> 2009/7/21 Mathieu Malaterre <mathieu.malaterre at gmail.com>
>>
>> On Mon, Jul 20, 2009 at 5:56 PM, Andreas Keil<keil.andreas at gmail.com> wrote:
>> > Dear all,
>> >
>> > I compiled ITK 3.14, using the internal GDCM lib on WinXP with VS 2008, did
>> > an install build and then moved the necessary headers and libs to another
>> > directory. This procedure worked fine for me (at least until ITK 3.8).
>> > However, now I run into a runtime error within my app as soon as it
>> > initializes:
>> >
>> > First-chance exception at 0x1026ed6a (msvcr90d.dll) in vessel.exe:
>> > 0xC0000005: Access violation writing location 0xcdcdcd00.
>> > Unhandled exception at 0x1026ed6a (msvcr90d.dll) in vessel.exe: 0xC0000005:
>> > Access violation writing location 0xcdcdcd00.
>> >
>> > Browsing through the call stack, I discovered that the error arises in
>> > gdcm::DictSet() when the path string to the DICOM dictonaries seems to be
>> > copied to a bad pointer at address 0xcdcdcd00.
>> >
>> > Since all this happens during the program's initialization, I am pretty
>> > sure, it's not a coding error on my side. Has anyone else made similar
>> > experiences? May it be related to moving the headers and libs to a different
>> > location? If so, what has changed since previous releases?
>> >
>> > Any help would be greatly appreciated.
>>
>> GDCM 1.x will try to load any user defined dicomV3.dic at init time.
>> So if you have any remaining (invalid?) dicomV3.dic present in any
>> path inspected at run time, there is a chance that gdcm fails to load
>> it. I have never seen this in practice, though.
>>
>> I would simply remove any dicomV3.dic on your system.
>
> Thanks for the suggestion. Unfortunately, this did not resolve the issue.
> I suppose the error originates from copying all the headers and libs
> to a new folder structure and that I missed sth. there...

OK, I have to apologize for making a huge mistake: I accidentally used
release builds of the ITK libraries in my executable's debug build.
This resulted in memory errors when copying strings. Unfortunately,
Visual Studio's warning about mixed runtime libraries only appeared
sporadically which made it hard for me to detect my error.

I am sorry to have ITK/GDCM blamed for and bothered you with this problem.

Best regards,
Andreas.


More information about the Insight-users mailing list