Dir Sir:
I include DirectShow9.hpp in my project and run
1.Get message as below
[bcc32 Error] amvideo.h(389): E2015 Ambiguity between 'std::abs(long double)' and 'std::abs(double)'
Full parser context
Main.cpp(5): #include c:\program files (x86)\embarcadero\studio\17.0\include\windows\rtl\DirectShow9.hpp
DirectShow9.hpp(11): #include c:\program files (x86)\embarcadero\studio\17.0\include\windows\rtl\Winapi.DirectShow9.hpp
Winapi.DirectShow9.hpp(50): #include c:\program files (x86)\embarcadero\studio\17.0\include\windows\sdk\amvideo.h
amvideo.h(396): decision to instantiate: long SAFE_DIBSIZE(const tagBITMAPINFOHEADER *,unsigned long *)
--- Resetting parser context for instantiation...
amvideo.h(378): parsing: long SAFE_DIBSIZE(const tagBITMAPINFOHEADER *,unsigned long *)
2.I modify dw = abs(pbi->biHeight); --> dw = abs((double)pbi->biHeight); and run again
3.Get message as below
[bcc32 Error] Winapi.DirectShow9.hpp(237): E2451 Undefined symbol 'IDirectShowStream'
Full parser context
Main.cpp(5): #include c:\program files (x86)\embarcadero\studio\17.0\include\windows\rtl\DirectShow9.hpp
DirectShow9.hpp(11): #include c:\program files (x86)\embarcadero\studio\17.0\include\windows\rtl\Winapi.DirectShow9.hpp
I try to ask for help and get answer as:
We've examined the issue you faced and it does not relate to our controls. You can replicate it even without them - just create a new project, add the "#include " string to an *.h file and try to recompile the application.
So, the problem is related to the IDE and we've created a corresponding ticket in Embarcadero Quality Center - RSP-15280.
Please advise.