Próbuję użyć przykładu WMI z MSDN:WMI Linker Error na x64
http://msdn.microsoft.com/en-us/library/windows/desktop/aa384724%28v=vs.85%29.aspx
Mam skopiowane ostatni zestaw kodu tam dosłownie do aplikacji konsoli w VS2008. Jeśli mam aplikację w wersji lub debugowanie dla platformy win32, kompiluje (i działa) dobrze. Jeśli mam go uwolnienia lub debugowania dla platformy x64, otrzymuję następujące błędy linkera:
CppConsole.obj : error LNK2001: unresolved external symbol IID_IWbemConfigureRefresher
CppConsole.obj : error LNK2001: unresolved external symbol CLSID_WbemRefresher
CppConsole.obj : error LNK2001: unresolved external symbol IID_IWbemRefresher
CppConsole.obj : error LNK2001: unresolved external symbol CLSID_WbemLocator
CppConsole.obj : error LNK2001: unresolved external symbol IID_IWbemLocator
fatal error LNK1120: 5 unresolved externals
Ja już próbował oddanie wbemuuid.lib do wejścia łącznikowej bezpośrednio we właściwościach projektu, ale to didn odmienia się od pragmy.
Czy ktoś wykonał tę pracę z x64? Czy jest coś, co robię źle?
Po prostu utworzę nową konsolę aplikacji C++, używając vs2008, x64 i kompiluje i działa dobrze. Twój problem musi być związany z brakującym plikiem lub konfiguracją. – RRUZ
Spróbuj sprawdzić, która wersja pakietu Microsoft SDK jest zainstalowana i czy w tym miejscu istnieje plik 'wbemuuid.lib'. C: \ Program Files (x86) \ Microsoft SDK \ Windows \ v7.0A \ Lib \ x64' – RRUZ
@RRUZ Mam zainstalowane tylko do 5.0 i nie mam w ogóle katalogu x64. Sprawdzę, gdzie do D/L MS SDK i sprawdź, czy to działa. Jeśli odpowiesz w odpowiedzi poniżej, a nie komentarz, prawdopodobnie oznaczę twój jako "poprawny", jeśli jest to źródło problemu. –