__imp_?_Get_device_path@accelerator@Concurrency@@AEBAPEBGXZ
Running the undname.exe utility on that string to unmangle the name, I get:
declspec(dllimport) private:
unsigned short const * __ptr64
__cdecl Concurrency::accelerator::_Get_device_path(void)const __ptr64
So it is 64-bit code. Looking in vc/lib/amd64/vcamp.lib for a closest match, I find:
?_Get_device_path@accelerator@Concurrency@@AEBAPEB_WXZ
Which demangles with undname.exe to:
private:
wchar_t const * __ptr64
__cdecl Concurrency::accelerator::_Get_device_path(void)const __ptr64
Note the discrepancy. Your function got compiled to return unsigned short*
, the library function returns wchar_t*
. You have a compiler setting wrong. Project + Properties, C/C++, Language, Treat WChar_t As Built in Type must be set to the default, "Yes".