Typinitialiseraren för 'Emgu.CV.CvInvoke' gav ett undantag. Om du ser detta undantag, vänligen kontrollera följande
Har du installerat MSVCRT? För version 2.0+ är den medföljande OpenCV 2.0-binärfilen byggd med Visual Studio 2008, du behöver installera MSVCRT 9.0 SP1 för att lösa beroendeproblemet. För version 1.5 är den medföljande OpenCV-binärfilen från pre1.1 byggd med Visual Studio 2005, du behöver installera MSVCRT 8.0 SP1 för att lösa beroendeproblemet. Har du kopierat OpenCV-dll-filerna till exekveringskatalogen? Se till att de ohanterade DLL:erna finns i exekveringskatalogen. För Emgu CV-version <= 2.1 betyder detta följande dll:er: cvXXX.dll, cvauxXXX.dll, cxcoreXXX.dll, highguiXXX.dll, opencv_ffmpegXXX.dll, mlXXX.dll andcvextern.dll där XXX är OpenCV versionsnummer. För Emgu CV-version >= 2.2 betyder detta följande dll:er: opencv_calib3dXXX.dll, opencv_contribXXX.dll,opencv_coreXXX.dll, opencv_features2dXXX.dll,opencv_highguiXXX.dll, opencv_ imgprocXXX.dll, opencv_legacyXXX.dll, opencv_mlXXX.dll, opencv_objectdetectXXX.dll, opencv_videoXXX.dll där XXX är OpenCVversionsnumret. Det bästa sättet att sätta upp ditt projekt är: Kopiera de ohanterade DLL:erna till din projektmapp Högerklicka på projektet, klicka på Add->ExistingItem och välj alla ohanterade DLL:er. Lägg till dem i projektet. För varje inkluderad DLL, vänsterklicka på den, hitta alternativet "Copyto Output Directory" och välj "Kopiera om nyare" Kör du ett 32-bitars operativsystem? Windows-installationsprogrammet finns endast tillgängligt för 32-bitars fönster. Om du använder ett 64-bitars operativsystem finns det tre möjliga sätt att lösa detta problem:
Du kan ladda ner det 64-bitars binär-zip-paketet fromsourceforge och lägga till det i ditt projekt. Du kan också kompilera om OpenCV från källkoden för en 64-bitars plattform. Se instruktionen för att bygga från SVN Alternativt kan du tvinga din .NET-applikation att köra i 32-bitars läge, även på ett 64-bitars operativsystem. För att göra detta, välj Platform Target as'x86' på konfigurationssidan för ditt körbara projekt. Saknar du något beroende? Ladda ner Dependency Walker och använd den för att öppna filen "cvextern.dll". Kolla om något beroende saknas.
Jag har kollat allt ovan men jag fick ändå undantaget I det här fallet, försök att bygga och köra exemplen. Efter att ha byggt exemplen, försök köra programmet "Hello World".
Om "Hello World" körs utan problem, jämför det med youproject, hitta skillnaden i konfiguration och åtgärda det.
Om "Hello World" får du samma "Typinitializern för Emgu. CV.CvInvoke' kastade ett undantag." meddelande, försök att hitta outtheInnerException och rapportera det till diskussionsforumet
Typinitialisering av EMGU. CV。 cvinvoke 'put exceptions. Om du ser detta undantag, vänligen kontrollera följande Har du installerat msvcrt? Version 2+, medföljande opencv 2-binär, är för att bygga Visual Studio 2008, och du behöver installera edmsvcrt 9 SP1 för att lösa beroendeproblem. För version 1.5, medföljande OpenCV pre1.1 binärbygge Visual Studio 2005, behöver du installera edmsvcrt 8 SP1 för att lösa beroendeproblemen. Den opencv DLL-exekveringskatalog du kopierade? Se till att den ohanterade DLL:n finns i exekveringskatalogen. För emgu CV-versionen< = 2,1, vilket betyder följande DLL:cvxxx.dll,cvauxxxx.dll,cxcorexxx. DLL, highguixxx.dll, opencv_ffmpegxxx.dll, mlxxx.dll andcvextern.dll där xxx är versionsnumren för opencv. För emgu CV-versionen> = 2,2 Detta innebär att följande DLL:opencv_calib3dxxx.dll, opencv_contribxxx. DLL,opencv_corexxx.dll,opencv_features2dxxx。 DLL,opencv_highguixxx.dll,opencv_imgprocxxx.dll,opencv_legacyxxx。 DLL,opencv_mlxxx.dll,opencv_objectdetectxxx。 DLL, opencv_videoxxx.dll XXX är opencvversionsnumret. Det bästa sättet att bygga ditt projekt är: Ohanterad DLL kopierad till din projektmapp Högerklicka på projektet och klicka på Add-> existingitem för att välja alla ohanterade DLL:er. Lägg till dem i projektet. För varje DLL den innehåller, vänsterklicka på den, hitta alternativet "Kopiera och utmata katalog", välj "Kopiera om uppdaterad" Kör du ett 32-bitars operativsystem? Windows Installer kan endast tillhandahålla 32-bitars Windows. Om du använder ett 64-bitars operativsystem finns det tre möjliga sätt att lösa detta problem: Du kan ladda ner det 64-bitars binärpaketet som endast är zip från sourceforge och lägga till det i ditt projekt. Du kan också kompilera OpenCV-källor från 64-bitars plattformar. Se byggnadsdirektivet från Fromsvn Eller så kan du tvinga din. .NET-applikationer körs i 32-bitars läge, även på 64-bitars operativsystem. För att göra detta, välj plattformsmålet som 'x86" på konfigurationssidan för ditt exekveringsprojekt. Saknar du några beroenden? Ladda ner Dependent Walker och använd den för att öppna "cvextern DLL-filen." ”。 Kontrollera om några beroenden saknas. Jag har kollat allt ovan men har fortfarande undantag I det här fallet, försök bygga och köra en instans. Efter att ha byggt instansen, prova att köra Hello World-programmet. Om Hello World körs utan problem jämför det med youproject, hittar strukturella skillnader och löser dem. Om "hello world" får samma "typ initial värdesättare för'emgu". CV。 cvinvoke" ger ett undantag. meddelande, försöker hitta outtheinner exception från forumet
|