Inicializator tipov za 'Emgu.CV.CvInvoke' je vrgel anexception. Če opazite to izjemo, prosimo, preverite naslednje
Si namestil MSVCRT? Za različico 2.0+ je priložena binarna datoteka OpenCV 2.0 zgrajena v Visual Studio 2008, za rešitev težave z odvisnostjo boste morali namestiti MSVCRT 9.0 SP1. Za različico 1.5 je priložena OpenCV binarna datoteka zgrajena v Visual Studio 2005, za rešitev težave z odvisnostjo boste morali namestiti MSVCRT 8.0 SP1. Si kopiral OpenCV dll-je v direktorij za izvajanje? Prepričajte se, da so neupravljani DLL-ji v izvršilni mapi. Za različico Emgu CV <= 2.1 to pomeni naslednje dll-je: cvXXX.dll, cvauxXXX.dll, cxcoreXXX.dll, highguiXXX.dll, opencv_ffmpegXXX.dll mlXXX.dll andcvextern.dll, kjer je XXX OpenCV številka različice. Za različico Emgu CV >= 2.2 to pomeni naslednje dll-je: 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 kjer je XXX številka različice OpenCV. Najboljši način za postavitev projekta je: Kopiraj neupravljane DLL-je v mapo projekta Desni klik na projekt, kliknite Add->ExistingItem in izberite vse neupravljane DLL-je. Dodajte jih v projekt. Za vsak od vključenih DLL-jev kliknite z levim klikom nanj, poiščite možnost "Copyto Output Directory" in izberite "Kopiraj, če je novejši" Ali uporabljate 32-bitni operacijski sistem? Windows namestitveni program je na voljo samo za 32-bitna okna. Če uporabljate 64-bitni operacijski sistem, obstajajo trije možni načini za rešitev te težave:
Lahko prenesete 64-bitni binarni zip paket fromsourceforge in ga dodate v svoj projekt. OpenCV lahko tudi ponovno prevedeš iz izvorne kode za 64-bitno platformo. Oglejte si navodila za gradnjo fromSVN Alternativno lahko svojo .NET aplikacijo prisilite, da deluje v 32-bitnem načinu, tudi na 64-bitnem operacijskem sistemu. Za to na konfiguracijski strani vašega izvedljivega projekta izberite Platform Target kot 'x86'. Ali ti manjka kakšna odvisnost? Prenesi Dependency Walker in ga uporabi za odpiranje datoteke "cvextern.dll". Preveri, če manjka kakšna odvisnost.
Preveril sem vse zgoraj omenjeno, a sem vseeno dobil Izjemo V tem primeru prosim poskusite zgraditi in izvajati primere. Po izdelavi primerov poskusite zagnati program "Hello World".
Če "Hello World" deluje brez težav, ga primerjaj z youproject, poišči razliko v konfiguraciji in jo popravi.
Če "Hello World" dobiš enak "The type initializer for'Emgu. CV.CvInvoke' je vrgel izjemo.", poskusi najti outtheInnerException in to prijaviti na forumu za razprave.
Inicializacija tipa EMGU. CV。 Cvinvoke 'Daj izjeme. Če opazite to izjemo, prosimo, preverite naslednje Si namestil msvcrt? Različica 2+, priložena opencv 2 binarna datoteka, je namenjena za gradnjo Visual Studio 2008, za reševanje težav z odvisnostjo pa boste morali namestiti edmsvcrt 9 SP1. Za različico 1.5, priloženo OpenCV pre1.1 binarno različico Visual Studio 2005, boste morali namestiti edmsvcrt 8 SP1, da rešite težave z odvisnostjo. Opencv DLL izvršilni imenik, ki si ga kopiral? Poskrbite, da je neupravljani DLL v izvršilnem imeniku. Za emgu CV različico< = 2.1, kar pomeni naslednje DLL:cvxxx.dll, cvauxxxx.dll, cxcorexxx. DLL, highguixxx.dll, opencv_ffmpegxxx.dll mlxxx.dll andcvextern.dll kjer so xxx številke verzij opencv. Za emgu CV različico> = 2,2 To pomeni, da naslednji 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 je številka opencvversion. Najboljši način za gradnjo vašega projekta je: Neupravljani DLL, kopiran v mapo projekta Desni klik na projekt in Add-> existingitem kliknite za izbiro vseh neupravljanih DLL-jev. Dodajte jih v projekt. Za vsak DLL, ki ga vsebuje, z levim klikom nanj poiščite možnost "Kopiraj in izpiši imenik" ter izberite "Kopiraj, če je posodobljeno". Ali uporabljate 32-bitni operacijski sistem? Windows Installer lahko zagotovi le 32-bitni Windows. Če uporabljate 64-bitni operacijski sistem, obstajajo trije možni načini za rešitev tega problema: Lahko prenesete zip paket za 64-bitno binarno datoteko fromsourceforge in ga dodate v svoj projekt. Lahko tudi prevedeš kode OpenCV iz 64-bitnih platform. Glej direktivo o gradnji iz SVN Ali pa lahko prisiliš svojega. .NET aplikacije delujejo v 32-bitnem načinu, tudi na 64-bitnih operacijskih sistemih. Za to na konfiguracijski strani vašega izvedbenega projekta izberite ciljno platformo kot'x86". Ali ti manjkajo kakšne odvisnosti? Prenesi Dependent Walker in ga uporabi za odpiranje "cvextern DLL datoteke." ”。 Preveri, če manjkajo kakšne odvisnosti. Preveril sem vse zgoraj omenjeno, a še vedno imam izjeme V tem primeru poskusite zgraditi in zagnati instanco. Ko sestaviš instanco, poskusi zagnati program Hello World. Če Hello World teče brez težav, se primerja s tvojim projektom, najde strukturne razlike in jih reši. Če "hello world" dobi enako "vpiši začetno vrednost setter for'emgu". CV。 cvinvoke" vrže izjemo. sporočilo, poskušam najti notranjo izjemo na forumu
|