ObjectListView nie działa dla x86

0

Mam projekt aplikacji Windows Forms, w której chciałam użyć ObjectListView (http://objectlistview.sourceforge.net/cs/index.html). Referencję zainstalowałam nugetem. Wszystko działa OK, kiedy mam ustawione target platform na Any CPU. Jednak potrzebuję skompilować ten program na x86, a wtedy po uruchomieniu otrzymuję błąd:

Error while trying to run project: Could not load file or assembly 'ProjectName.exe' or one of its dependencies. Procedura inicjowania biblioteki dołączanej dynamicznie (DLL) nie powiodła się. (Exception from HRESULT: 0x8007045A).

Coś podejrzewam, że ObjectListView ma target platform Any CPU... Czy jest jakiś sposób, by dać referencję do wersji x86? Czy paczki w nugecie w ogóle są udostępniane w wersjach na różne target platform? Jak zainstalować tą referencję, by mieć pewność, że jest OK?

0

Zasada jest taka, że aplikację "główną" budujesz jako x86 lub x64. Natomiast wszystkie zewnętrzne biblioteki mają być zbudowane jako AnyCPU. Pytanie też jak jest zbudowana ta kontrolka. Czy np. korzysta z jakiś specyficznych bibliotek Windowsa bitowo zależnych, czy nie.

Ściągnij kody i upewnij się, że budujesz jako AnyCPU. Jeśli to nie pomoże, to zbuduj sobie dwie wersje: x86 i x64. Tylko później będziesz musiała pogrzebać w projekcie głównej aplikacji, żeby dołączało odpowiednią wersję. Ewentualnie zrobić sobie jakiegoś bata na after build.

1
aurel napisał(a):

Coś podejrzewam, że ObjectListView ma target platform Any CPU...

Tak dllka z nugeta jest skompilowana pod Any CPU (.net v2.0.50727) (sprawdziłem ;P)

aurel napisał(a):

Czy jest jakiś sposób, by dać referencję do wersji x86?

W tym przypadku skompilować samemu.

aurel napisał(a):

Czy paczki w nugecie w ogóle są udostępniane w wersjach na różne target platform?

Zależy od twórcy dllki, nuget nie ma nic do rzeczy, ale w 99% przypadków dllki są zawsze Any CPU.

A tak w ogóle, to u mnie przynajmniej, normalnie ładuje tą dllke na każdą platformę, więc problem nie koniecznie musi być z dllką.

1 użytkowników online, w tym zalogowanych: 0, gości: 1