'Emgu.CV.CvInvoke' tüübi algataja andis erandi. Kui näete seda erandit, palun kontrollige järgmist
Kas oled MSVCRT paigaldanud? Versiooni 2.0+ puhul on kaasas olev OpenCV 2.0 binaar ehitatud Visual Studio 2008-ga, sõltuvusprobleemi lahendamiseks tuleb paigaldada MSVCRT 9.0 SP1. Versiooni 1.5 puhul on OpenCV pre1.1 binaar ehitatud Visual Studio 2005-ga, sõltuvusprobleemi lahendamiseks tuleb paigaldada MSVCRT 8.0 SP1. Kas oled kopeerinud OpenCV DLL-id täitmise kausta? Veendu, et haldamata DLL-id oleksid täitmise kataloogis. Emgu CV versiooni <= 2.1 puhul tähendab see järgmisi DLL-e: cvXXX.dll, cvauxXXX.dll, cxcoreXXX.dll, highguiXXX.dll, opencv_ffmpegXXX.dll, mlXXX.dll andcvextern.dll, kus XXX on OpenCV versiooninumber. Emgu CV versiooni >= 2.2 puhul tähendab see järgmisi DLL-e: 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, kus XXX on OpenCVversiooni number. Parim viis oma projekti ülesseadmiseks on: Kopeeri haldamata DLL-id oma projektikausta Paremklõpsa projektil, klõpsa Add->ExistingItem ja vali kõik haldamata DLL-id. Lisa need projekti. Iga kaasasoleva DLL-i puhul klõpsa vasakult, leia valik "Copyto Output Directory" ja vali "Copy if newer" Kas kasutad 32-bitist operatsioonisüsteemi? Windowsi installer on saadaval ainult 32-bitiste akende jaoks. Kui kasutad 64-bitist operatsioonisüsteemi, on selle probleemi lahendamiseks kolm võimalikku lahendust:
Saad alla laadida ainult 64-bitise binaarse zip-paketi Sourceforge'ist ja lisada selle oma projekti. Saad ka OpenCV-d lähtekoodist ümber kompileerida 64-bitisele platvormile. Vaata juhendit SVN-ist ehitamiseks Alternatiivina saad sundida oma .NET rakendust töötama 32-bitises režiimis, isegi 64-bitise operatsioonisüsteemiga. Selleks vali oma täidetava projekti seadistuslehel Platform Target as'x86'. Kas sul on mõni sõltuvus puudu? Laadi alla Dependency Walker ja kasuta seda, et avada "cvextern.dll" fail. Kontrolli, kas mõni sõltuvus on puudu.
Olen kõik eelmainitud üle vaadanud, aga sain ikkagi Erandi Sellisel juhul palun proovi näiteid koostada ja käivitada. Pärast näidete koostamist proovi käivitada "Hello World" programm.
Kui "Hello World" töötab probleemideta, võrdle seda youprojectiga, leia konfiguratsioonide erinevus ja paranda see.
Kui "Hello World" saab sama "The type initializer for 'Emgu. CV.CvInvoke' viskas erandi." sõnumi, proovi leida theInnerException ja teatada sellest arutelufoorumisse
EMGU tüübi initsialiseerimine. CV. Cvinvoke 'pane erandid. Kui näete seda erandit, palun kontrollige järgmist Kas oled MSVCRT paigaldanud? Versioon 2+, kaasas olevat opencv 2 binaar on mõeldud Visual Studio 2008 ehitamiseks ning sõltuvusprobleemide lahendamiseks pead paigaldama edmsvcrt 9 SP1. Versiooni 1.5 puhul, mis on kaasas OpenCV enne 1.1 binaarversiooniga Visual Studio 2005, pead paigaldama edmsvcrt 8 SP1, et lahendada sõltuvusprobleeme. Opencv DLL täitmise kausta, mille kopeerisid? Veendu, et haldamata DLL oleks täitmiskataloogis. Emgu CV versiooni puhul< = 2.1, mis tähendab järgmist DLL:cvxxx.dll,cvauxxxx.dll,cxcorexxx. DLL, highguixxx.dll, opencv_ffmpegxxx.dll mlxxx.dll andcvextern.dll kus xxx on opencv versiooninumbrid. Emgu CV versiooni puhul> = 2.2 See tähendab, et järgmine 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 on opencvversion number. Parim viis oma projekti ehitamiseks on: Haldamata DLL kopeeritud sinu projektikausta Paremklõpsa projektil ja klõpsa Add-> existingitem, et valida kõik haldamata DLL-id. Lisa need projekti. Iga DLL-i puhul, mida see sisaldab, klõpsa vasakult, leia valik "Copy & Output Directory" ja vali "Copy if update" Kas sul on 32-bitine operatsioonisüsteem? Windowsi paigaldaja suudab pakkuda ainult 32-bitist Windowsi. Kui kasutad 64-bitist operatsioonisüsteemi, on selle probleemi lahendamiseks kolm võimalikku lahendust: Saad alla laadida ainult 64-bitise binaarse zip-paketi sourceforge'ist ja lisada selle oma projekti. Samuti saab kompileerida OpenCV allikaid 64-bitistelt platvormidelt. Vaata ehitusjuhist fromsvn Või saad oma sundida. .NET rakendused töötavad 32-bitises režiimis, isegi 64-bitistes operatsioonisüsteemides. Selleks vali oma täitmisprojekti konfiguratsioonilehel platvormi sihtmärgiks 'x86". Kas sul on mõni sõltuvus puudu? Laadi alla Dependent Walker ja kasuta seda "cvextern DLL faili" avamiseks. ”。 Kontrolli, kas mõni sõltuvus on puudu. Kontrollisin kõike eelnevat, aga mul on siiski erandeid Sellisel juhul proovi instantsi ehitada ja käivitada. Pärast instantsi loomist proovi käivitada Hello World programm. Kui Hello World töötab probleemideta, võrreldub see youprojectiga, leiab struktuurilisi erinevusi ja lahendab selle. Kui "hello world" saab sama "type initial value setter for'emgu". CV. cvinvoke" teeb erandi. sõnum, püüan välja selgitadatheinnerexception foorumis
|