• 締切済み

2013VB.net 不思議なimportsエラー

OpenCvSharpというライブラリを 既存のVB.netプロジェクトに組み込みたいのですが、上手く動かせません。 Nuget にて 17'11/17版 OpenCVSharp3 をインストールしました。 (その時、正常に追加したとメッセージがでました。) Imports OpenCvSharp を記載することができ、エラーもでないのですが、 ビルドをすると、緑の波線とともに以下メッセージが出力します。 「インポート "OpenCvSharp" で指定された名前空間または型が、パブリック メンバーを含んでいないか、または見つかりません。 名前空間または型が定義されていて、少なくとも一つのパブリックを含んでいることを確認してください。 また、インポートされた要素名がエイリアスを使用していないことを確認してください。」 VB.net で「Windowsフォームアプリケーション」指定の空のプログラムを作り、同様の手順でWEBCAMの画像(動画)を取得するソフトは 何のエラーもなく動作します。 (ちなみにX86でもX64でも問題なく動きます。) 「インポートされた要素名がエイリアスを使用していないことを確認してください。」とありますが、 既存のコードで使っている要素名と、今回インポートした要素名の間でなにか不具合がおこっているのでしょうか。 ビルドする前には、実際にインテリジェンス機能がはたらいていて、 Dim img = Cv2.ImRead("c:\cube.jpg") ... などと、エラーなしで記載することができます。 ビルドすると、途端にインテリジェンス機能がはたらなくなり、 宣言されていないことになってしまいます。 お詳しい方、当問題解決についてご教示いだけないでしょうか。

みんなの回答

回答No.2

参照 該当ライブラリのプロパティー ローカルコピー項目をtrueとか? 出力ディレクリーにコピーするプロパティーでいけませんかね?

okwavekotaro
質問者

お礼

色々やってみたところ、ビルド時に以下のコンテナが消えるのが問題のようです。 より具体的な質問を別にしましたで、 この投稿の問題は未解決となってしまいますが、クローズいたします。 1 OpenCvSharp 2 OpenCvSharp.Blob 3 OpenCvSharp.Extensions 4 OpenCvSharp.UserInterface <新質問投稿ページ> https://okwave.jp/qa/q9406778.html

okwavekotaro
質問者

補足

各.vb ファイルのプロパティに、[出力ディレクトリにコピー]項目があるので、[常にコピーする]を指定してみました。変わりませんでした。 ビルド前とビルド後に、名前空間がインテリジェンス機能で現れない理由は、 差分を見たところ、 .vbproj ファイルの<NuGetPackageImportStamp> の値が書き換わるのが原因のようです。 ちなみに 「参照 該当ライブラリのプロパティー ローカルコピー項目をtrue」にはたどり着けませんでした。(汗)

回答No.1

パスが通ってないんじゃないんですか? 1:OpenCvSharpのライブラリを参照されるところか参照するようにする 2:OpenCvSharpのライブラリをプロジェクトから参照に追加してローカルコピー設定にする のどれかで解決できないですかね

okwavekotaro
質問者

補足

[プロジェクト名 右クリック]-[追加]-[参照]-[参照マネージャ]にて、 「Opencvsharp.dll を読込もうと思ったのですが、 参照は、プロジェクトに既に存在します。」とでます。 別のところですでに参照されているみたいです。

関連するQ&A

  • .Net VB2005のエラーについての質問です。

    .Net VB2005のエラーについての質問です。 初心者的な質問ですみません。.NET初心者です。 雑誌のサンプルプログラムを利用して勉強しているのですが、 ---- ↓ソース ------ Imports System.IO Imports System.Runtime.Serialization Imports System.Runtime.Serialization.Formatters.Soap Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As                     System.EventArgs) Handles MyBase.Load    ・    ・    ・ End Sub End Class これを実行すると以下のようなエラーが一覧に表示されます 警告1 インポート 'System.Runtime.Serialization.Formatters.Soap' で指定された名前空間または型が、パブリック メンバを含んでいないか、または見つかりません。名前空間または型が定義されていて、少なくとも 1 つのパブリック メンバを含んでいることを確認してください。また、インポートされた要素名がエイリアスを使用していないことを確認してください。 VB2005の設定の問題かと思うのですがわかりません、初心者的な問題で恐縮ですがご教授お願いいたします。

  • VB2008のビルドエラーについて

    VB初心者です。 作成したVB2008をビルドすると、「エラー一覧」欄に下記のメッセージが表示されます。 「説明」欄:Files は無効な値"INDX( 「ファイル」欄   :無表示 「行」欄      :無表示 「列」欄      :無表示 「ポロジェクト」欄:プロジェクト名を表示 しかしコンパイルはされているらしく、制御コードを変更してからリビルドすると、変更した内容で 動作するのが確認できます。 (INDX を検索しても見つけることはできません。 これと関係があるかどうか判りませんが、たまに”すべてのブルドに失敗しました”とメッセージが でることがありますが、設定のインポートを行うと最初だけはエラーなしでブルドができますが、 制御コードを変更してリビルドすると上記のエラーメッセージが表示されます。 原因の見当がつかなくて困っています。宜しくお願いいたします。

  • windows10 VB unlha32.dll

    VB で、debug モードでビルドするとOK,ですが、release モードでビルドすると下記エラーになります。 ”unlha32.dll がインストールされていません” unlha32dll は、実行ファイルのカレントディレクトリ、cドライブのwindows、その下のシステム32、sysWOW に入れています。windowsXP、VS2010のころに造った物を、win10用に流用して作り替えています。今は、VB2017 です。 解決方法を教えてください、unlhaの置き場、パス指定か、VBのreleaseビルドの設定か、などと類推します。. 

  • Visual Studio 2005 VB

    Visual Studio 2005 VB 新しいデジタル証明書で署名したClickOnceアプリを再インストールするには? 4年ほど前に、VisualStudio2005 の VBで作成されたWindowsアプリケーションがあります。 帳票に入れる代表者名が変わったため、その部分を書き換えて再度ClickOnceで 発行しようとしたところ、証明書の期限が切れているというエラーが出ました。 http://www.atmarkit.co.jp/fdotnet/dotnettips/611clickoncerenewcert/clickoncerenewcert.html ↑こちらのサイトの情報に従って、RenewCert.exe というプラグラムを作りました。 実行すると、「メモリがReadになることは出来ませんでした。」というエラーが出ました。 クライアントは少ないので、 「すべてのクライアントでいったん既存のClickOnceアプリをアンインストールして、新しいデジタル証明書で署名したClickOnceアプリを再インストールすること」 という方法でアプリケーションを更新したいと思います。 この 新しいデジタル証明書で署名したという部分はどのようにすればよいでしょうか。 デジタル証明書(=「<プロジェクト名>_TemporaryKey.pfx」ファイル) を削除して、ビルド、発行すれば自動的にVS 2005がデジタル証明書を作ってくれると 思ったのですがうまく行きません。 新しいデジタル証明書はどうやって既存のアプリケーションに埋め込むのですか? どうぞよろしくお願いいたします。

  • vb6について

    会社で、GPIB、I/O、ActiveXコンポーネントの環境下で、 VB6のプログラムを使用して試験評価を行っているのですが、 VB6のコードを変更するにあたり、うまくいきません。 どなたかご教授願います。 内容は、 コードを変更したいので、元々の.vbpを開くと、 まず、「オブジェクトライブラリは登録されていません」とエラーが出ます。 その後、「プロジェクトのロードを続けますか?」となるので、OKを押します。 すると、「読み込み中にエラーが発生しました。・・・.logを参照してください」と出ます。 気にせず、OKを押し、コードの内容を変更したあと(※変更しなくても)、 プロジェクトの上書き保存をしたあと、.exeの作成(上書き)をすると、 また、「読み込み中にエラーが発生しました。・・・.logを参照してください」と出ます。 気にせず、OKを押し、作成した.exeを開くと、変更した内容になっていますが、 いざ、実行すると、「実行時エラー”13” 型が一致しません」とエラーが出ます。 .logの内容を確認すると、”クラス・・・がロードされていません”とか、 ”プロパティ名・・・が不正です”とか表示されています。 試験する上で、使用しやすいようにVB6のコードを変更したいのですが、 試験で使用しているPCで元々のコードを変更しようとすると、上記のようなエラーが出ます。 どなたか、解決方法を教えてください。

  • VBからAccessのデータベースをよみたい。けどエラー

    こんにちわ 先日 http://oshiete1.goo.ne.jp/kotaeru.php3?q=681876 でVBからアクセスのデータベースを読み込むことで 質問したものです。 (VB6.0 Access2000 Win2000でやってます) VB6.0にバージョンアップし(DAO3.6を選択するため)、変数も定義できたのですが、 Private Sub Form_Load()の部分で(以下) Set wspace = DBEngine.Workspaces(0) Set dbname = wspace.OpenDatabase(mypath & "\db1.mdb") dbname.QueryTimeout = 0 .QueryTimeoutに対してコンパイルエラーがでてしまいます。「メソッドまたはデータ メンバが見つかりません」というものです。そういえばOpendatabaseなどは「.」を打った時点でメソッド?の一覧が出るのですが、QueryTimeoutはでてきません。 DAO3.6以外にもなにか追加しないといけないのでしょうか? ヘルプで見たのですがメンバとは「コレクション、オブジェクト、またはユーザー定義型を構成する要素。」・・・ということでチンプンカンプンです(ノД`) ちなみにdbname.QueryTimeout = 0の部分をコメントアウトすると、その1つ前の行に対して「型が一致しません」とでてしまいます(ノ∀;) Accessを読み込んだ後は特に複雑なことはしないので(足したり参照する程度)、ここさえのりきれば・・・なのですがエラーばかりでて困ってます(ノД`) それともdb1.mdbファイルじたいがなにか読み込めない形式になってることが原因なのでしょうか? VB超初心者にもわかるようにコメントいただけると嬉しいですM(__)M

  • java.security.KeyStoreについて

    keyStoreファイルをメンテナンスするためのプログラムを引き継いだのですが、このプログラムがビルドできなくて困っています。 (前任者からビルドして使ってね、としか言い残されていないので・・・) プログラムの冒頭部分に以下のような記載があり、矢印をつけた部分でエラーが出てしまいます。 import java.io.FileInputStream; import java.io.FileOutputStream; import java.security.Key; import java.security.KeyStore;  ←ここでビルドエラー import java.security.cert.Certificate; import java.util.Enumeration; エラーメッセージには「型java.security.KeyStoreが見つかりません」と出ていますが、どうすれば解消できるのか検討もつかず、困っています。 同時に渡されたbcprov-jdk14-129.jarになにかありそうなのですが、中には膨大な.classファイルが収められているだけでした。 (bcprov-jdk14-129で検索しても、何も得られなかったので、本当に困っています。) どなたか、お知恵を貸してください。

    • ベストアンサー
    • Java
  • VB6.0 プロジェクトオープン時のエラーについて

    色々と調べてみたのですが、私の実力では原因も解決策もわからなかったので質問させていただきます。 やりたいこと WindowsNTにて開発していたVB6(SPなし?もしくはSP4くらい。)アプリケーションを、WindowsXPのVB6(SP5)のマシンで開きたい。 現象 WindowsXPで開こうとすると、エラーが表示され、プロジェクトのあるフォルダに以下のログが出力される。 行 195: クラス ○○○○.ExploreBar(コントロール exbWs) はロードされていません。 行 212: クラス ○○○○.FlatButton(コントロール btnClose) はロードされていません。 行 202: プロパティ名 _ExtentX(exbWs) が不正です。 行 203: プロパティ名 _ExtentY(exbWs) が不正です。 行 218: プロパティ名 _ExtentX(btnClose) が不正です。 行 219: プロパティ名 _ExtentY(btnClose) が不正です。 ためしに、Windows2000のVB6(SP5)で開くと、何もエラーが出ることなく、正常に開くことが出来ました。 もう何がなにやら・・・。 調べてみたところ、コントロールの参照が巧くいってないみたいです。 (エラーを出しているfrmファイルを開いて確認しようとすると、エラーになっている箇所がピクチャーボックスになっていた。) そこで、参照設定やコンポーネントの設定を確認してみたのですが、どうもNTとXPでは一致しているみたいです。(同じ場所にチェックが入っている。) もしかして調べる観点からしてズレているのでしょうか。 原因と解決方法をどうか教えていただきたく・・・。 お力添えのほど、よろしくお願いします。<(_ _*)>

  • vbの計算ソフト作成にあたって

    vbで電卓を作成しようと思ったのですが、ビルドエラーが発生してうまくできません。 Dim X As Decimal Dim Y As Decimal X = txtValue1.Text Y = txtValue2.Text lblAnswer.Text = X + Y これでは、いけないのでしょうか? (元から記載されていたものは省略しています) 又、使用しているvbは2008 Express Editionです。 回答お願いします

  • VB.NetによるMySQL接続について

    VB.NET(2012)よりMySQLへの接続についてご教示ください。 現状、下記のようなエラーが発生し、DB接続ができない状況です。 'MySQLConnection' は、名前空間 'MySql.Data.MySqlClient' では不適切です。 'MySQLCommand' は、名前空間 'MySql.Data.MySqlClient' では不適切です。 'MySQLDataReader' は、名前空間 'MySql.Data.MySqlClient' では不適切です。 【ソース】 Imports MySql.Data.MySqlClient Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim con As MySQLConnection Dim cmd As MySQLCommand Dim dr As MySQLDataReader End Sub End Class 【設定】 Connector/NETのインストール メニューのプロジェクト→参照の追加→拡張よりMySql.Dataを指定 メニューのプロジェクト→DB_Accessのプロパティ→参照よりMysql.Data→プロパティ内のローカルコピー:True 参照よりインポートされた名前空間(I)→Mysql、Mysql.Data・・・その他Mysqlのチェックをオン 【環境】 OS:Windows7 開発:.Net2012 DB・サーバ環境:XAMPP(アパッチ、MySQL) HPでいろいろ調べましたがどれも似たような内容の為、解決できておりません。 何か足りないのでしょうか。 何卒、ご教示のほどよろしくお願い致します。