C# と VB.NET の質問掲示板
ASP.NET、C++/CLI、Java 何でもどうぞ
C# と VB.NET の入門サイト
Re[4]: 参照設定のパスを動的に変更する方法
(過去ログ 142 を表示中)
掲示板トップ
C# と VB.NET 入門
新規作成
利用方法/規約
トピック表示
ランキング
記事検索
過去ログ
[トピック内 6 記事 (1 - 6 表示)] <<
0
>>
■83596
/ inTopicNo.1)
参照設定のパスを動的に変更する方法
▼
■
□投稿者/ 惹起
(13回)-(2017/03/30(Thu) 10:53:09)
分類:[.NET 全般]
http://bbs.wankuma.com/index.cgi?mode=al2&namber=83350
このページでImageMagick を使うために
ImageMagickObject.dll (ImageMagic Object x.x Type Library)を参照設定して、
Dim mi As New ImageMagickObject.MagickImage()
のように、固有の型で宣言する方法を教えていただきました。
このDLLのあるフォルダーなのですが
C:\Program Files (x86)\ImageMagick-7.0.4-Q16\ImageMagickObject.dll
のように、フォルダー名にImageMagick のバージョンが含まれており、
PCによってパスを変更する必要があります。
そのため、参照設定のパスを動的に変更したいのですが
どのようにすれば良いですか?
引用返信
編集キー/
編集
■83600
/ inTopicNo.2)
Re[1]: 参照設定のパスを動的に変更する方法
▲
▼
■
□投稿者/ Hongliang
(517回)-(2017/03/30(Thu) 11:22:21)
Type LibraryってことはCOM参照ですよね?
COM参照の場合、DLLのパスがプロジェクトに含まれることはないはずですが?
あと、Image Magickは、.NET用ライブラリであるMagick.NETというのがNuGetで公開されているようです。
こちらを使えばパッケージ管理が楽になるかも知れません。
引用返信
編集キー/
編集
■83601
/ inTopicNo.3)
Re[2]: 参照設定のパスを動的に変更する方法
▲
▼
■
□投稿者/ 惹起
(15回)-(2017/03/30(Thu) 11:34:57)
ありがとうございます。
> COM参照の場合、DLLのパスがプロジェクトに含まれることはないはずですが?
これはどういうことですか?
EXEを実行するPCによってDLLのパスが違った場合は
どうやって参照する仕組みになっていますか?
Magick.NETは初めて知りました
調べてみたところ、アルファ版しか公開されておらず、
更新も2014年で停止しているみたいなので、
やはりImageMagickを使いたいと考えております。
引用返信
編集キー/
編集
■83602
/ inTopicNo.4)
Re[3]: 参照設定のパスを動的に変更する方法
▲
▼
■
□投稿者/ Hongliang
(518回)-(2017/03/30(Thu) 12:03:05)
> これはどういうことですか?
> EXEを実行するPCによってDLLのパスが違った場合は
> どうやって参照する仕組みになっていますか?
レジストリで管理されています。
参照する側はGUIDを使用し、そのGUIDを元にDLLが検索されます。
*.vbprojをメモ帳などのテキストエディタで開いてみればGUIDが確認できるかと。
> Magick.NETは初めて知りました
> 調べてみたところ、アルファ版しか公開されておらず、
> 更新も2014年で停止しているみたいなので、
> やはりImageMagickを使いたいと考えております。
NuGetで公開しているので、それ以外のチャネルを更新していないだけでは。
Visual Studioの
ツール>NuGetパッケージマネージャ>ソリューションのNuGetパッケージの管理
からmagickで検索すると、各パッケージの最新版v7.0.4.701が2017/02/13に公開されていますね。
引用返信
編集キー/
編集
■83605
/ inTopicNo.5)
Re[3]: 参照設定のパスを動的に変更する方法
▲
▼
■
□投稿者/ PANG2
(167回)-(2017/03/30(Thu) 16:26:53)
開発環境と実行環境でImageMagicのバージョンが異なるのであれば、エラーになるのでは?
遅延バインディングにすることになるでしょう。
--
元の質問の回答
No83377
VBプログラムで開発環境と実行環境のExcelのバージョンが異なるとき
http://qiita.com/carbonated3030/items/0e64a8206a8d5e3be923
引用返信
編集キー/
編集
■83606
/ inTopicNo.6)
Re[4]: 参照設定のパスを動的に変更する方法
▲
▼
■
□投稿者/ 魔界の仮面弁士
(1229回)-(2017/03/30(Thu) 16:49:44)
■
No83605
(PANG2 さん) に返信
> 開発環境と実行環境でImageMagicのバージョンが異なるのであれば、エラーになるのでは?
> 遅延バインディングにすることになるでしょう。
COM コンポーネント側の実装次第ですね。
Excel の場合、ディスパッチID を変更しないまま、Sub が Function になったり、
省略可能な引数が追加されるケースがあるので、レイトバインドに依存せざるを得ませんが、
バイナリー互換性が正しく維持されている COM コンポーネントなら大丈夫でしょう。
ImageMagic の場合については、情報を持ち合わせていません。(ImageMagic を使ったことがない…)
引用返信
編集キー/
編集
トピック内ページ移動 / <<
0
>>
このトピックに書きこむ
過去ログには書き込み不可
管理者用
-
Child Tree
-