setupapi tests question

Reece Dunn msclrhd at googlemail.com
Wed Oct 15 03:45:17 CDT 2008


2008/10/15 Dmitry Timoshkov <dmitry at codeweavers.com>:
> "Reece Dunn" <msclrhd at googlemail.com> wrote:
>
>> When building the setupapi tests with VC9 and the MSVC headers (Vista
>> version) after using msvcmaker, I get the following output:
>>
>> 2>------ Build started: Project: setupapi_test, Configuration: Debug
>> MSVC Headers Win32 ------
>> 2>Linking...
>> 2>misc.obj : error LNK2019: unresolved external symbol _MyFree
>> referenced in function _test_SetupGetFileCompressionInfo
>> 2>.\Output\Win32_Debug_MSVC_Headers/setupapi_test.exe : fatal error
>> LNK1120: 1 unresolved externals
>>
>> Where does MyFree come from?
>
> Looks like setupapi.lib from PSDK misses at least MyFree, MyMalloc and
> MyRealloc setupapi.dll exports.

According to MSDN: "Note that if the version of SetupAPI.dll is less
than 5.0.2195, then the caller needs to use the exported function
MyFree from SetupAPI to free the memory allocated by this function,
rather then using LocalFree. If the call to LocalFree causes an Access
Violation, you should solve the problem by using MyFree."

Therefore a GetProcAddress call is needed to get the MyFree function.

>> Why does this work with a Wine/MinGW build and not VC9?
>
> The answer is obvious I'd assume.

It is obvious when you understand the answer to the previous question.

- Reece



More information about the wine-devel mailing list