DOBON.NET DOBON.NETプログラミング掲示板過去ログ

別のPCで、作業出来ません。

環境/言語:[Windows XP、使用言語(VB.NET)、.NET Framework 1.1]
分類:[.NET]

こんにちは。3回目の投稿になります。
いつも皆様には助けて頂き、大変助かっています。

また新たな、問題が発生してしまったので、皆様に御助言頂きたく、
投稿してしまいました。

[問題点]
今まで、あるPC(仮にPC−Aとしましょう)上で、VB.NET2003で、
アプリケーションを作成し、編集〜デバック〜ビルド〜配布と一連の作業をして
来ました。
それを、別のPC(仮にPC−Bとしましょう)で、続きを編集しようと
しています。
しかし、「依存関係’interop.VBIDE’が見つかりませんでした。」
とか、「参照コンポーネント’VBIDE’が見つかりませんでした。」
などと、エラーが発生してしまいました。
ヘルプファイルや入門書を見てみましたが、皆目分かりません。
また、インストーラ作成時にショートカットを作成させる様に設定したのですが、
そのファイルもエラーが出てしまっています。
一体何が原因なのでしょうか?また、どこをどう、いじれば解決するのでしょうか?

普通にエクスプローラで、ソールファイルをコピーして、PC−AからPC−Bへ
作業を移行したいのですが、単なるコピーでは、ダメなのでしょうか?

御助言お待ちしています。
宜しく御願い致します。
■No21366に返信(mitさんの記事)

こちらをどうぞ。
http://dobon.net/vb/bbs/log3-8/4424.html

リンク先にも書かれていますが
> まず、エラー語句での検索をお勧めします。
> Microsoft.Vbe.InteropでもVBIDEでもかまいません。
> そこからキーワードを頼りに問題解決していくのも楽しいものですよ〜
ぽぴ王子さん

早々の御助言有り難う御座います。

> こちらをどうぞ。
> http://dobon.net/vb/bbs/log3-8/4424.html
>
> リンク先にも書かれていますが
>>まず、エラー語句での検索をお勧めします。
>>Microsoft.Vbe.InteropでもVBIDEでもかまいません。
>>そこからキーワードを頼りに問題解決していくのも楽しいものですよ〜

早速、試してみます。
御世話になります。

ぽぴ王子さんに、お聞きした通り下記リンク先を見てみましたが、
良く分かりませんでした。(泣)

> こちらをどうぞ。
> http://dobon.net/vb/bbs/log3-8/4424.html
>
> リンク先にも書かれていますが
>>まず、エラー語句での検索をお勧めします。
>>Microsoft.Vbe.InteropでもVBIDEでもかまいません。
>>そこからキーワードを頼りに問題解決していくのも楽しいものですよ〜

そこで、他の掲示板を検索してみたところ、下記の記事が出ていました。

−−−−−−−−−−−−−−−−−−−−−
ひょっとして、コントロールパネルで「プログラムの追加と削除」でMicrosoft Office 2003を選択して、「変更」ボタンでウィザードを起動し「詳細なカスタ
マイズ」の画面までいったら、各アプリケーションのノードを開いて
「.NETプログラミングサポート」が、×になってたりしませんか。
なっていた場合、「マイコンピュータから実行」を選択して「更新」しますと、
オプションのコンポーネントがといろいろ入ると思います。
−−−−−−−−−−−−−−−−−−−−−

しかし、上記は、 ”Office 2003”での事らしく、”Office XP”では、
該当する項目が有りませんでした。
(そして、解決しないまま、悩んでいます。)

「新たなるヒントを頂ければ・・・。」と思っています。
宜しく御願い致します。
■No21372に返信(mitさんの記事)
> そこで、他の掲示板を検索してみたところ、下記の記事が出ていました。
>
> −−−−−−−−−−−−−−−−−−−−−
> ひょっとして、コントロールパネルで「プログラムの追加と削除」でMicrosoft Office 2003を選択して、「変更」ボタンでウィザードを起動し「詳細なカスタ
> マイズ」の画面までいったら、各アプリケーションのノードを開いて
> 「.NETプログラミングサポート」が、×になってたりしませんか。
> なっていた場合、「マイコンピュータから実行」を選択して「更新」しますと、
> オプションのコンポーネントがといろいろ入ると思います。
> −−−−−−−−−−−−−−−−−−−−−
>
> しかし、上記は、 ”Office 2003”での事らしく、”Office XP”では、
> 該当する項目が有りませんでした。
> (そして、解決しないまま、悩んでいます。)
>
> 「新たなるヒントを頂ければ・・・。」と思っています。
> 宜しく御願い致します。

おやっ!?その引用元…どこかで見たことある文章ですねw
いろいろといってるのは.NETコードからOffice COMのAPIを使用するために使用するprimary interop assemblies(PIAs)というアセンブリのことです。

Office XP用のPIAは…
「Office XP PIAs」
http://www.microsoft.com/downloads/details.aspx?FamilyId=C41BD61E-3060-4F71-A6B4-01FEBA508E52&displaylang=en
にあるようです。

実行するマシンにあらかじめインストールしておいてください。

関連リンク:
http://support.microsoft.com/kb/328912/JA-JP
※注意:こちらに説明はありますが上記ダウンロードページにたどりつけないようです。
こんにちは。大変御世話になります。

IIJIMASさん

早々のヒント有り難う御座います。

>>−−−−−−−−−−−−−−−−−−−−−
>>ひょっとして、コントロールパネルで「プログラムの追加と削除」でMicrosoft Office 2003を選択して、「変更」ボタンでウィザードを起動し「詳細なカスタ
>>マイズ」の画面までいったら、各アプリケーションのノードを開いて
>>「.NETプログラミングサポート」が、×になってたりしませんか。
>>なっていた場合、「マイコンピュータから実行」を選択して「更新」しますと、
>>オプションのコンポーネントがといろいろ入ると思います。
>>−−−−−−−−−−−−−−−−−−−−−

> おやっ!?その引用元…どこかで見たことある文章ですねw

大変、失礼致しました。
勝手に、他のサイトに出ていた物を引用してしまいました。
まさか、御本人様が御覧になっていたとは・・・・。
(本当にゴメンなさい)

> いろいろといってるのは.NETコードからOffice COMのAPIを使用するために使用するprimary interop assemblies(PIAs)というアセンブリのことです。
>
> Office XP用のPIAは…
> 「Office XP PIAs」
> http://www.microsoft.com/downloads/details.aspx?FamilyId=C41BD61E-3060-4F71-A6B4-01FEBA508E52&displaylang=en
> にあるようです。
>
> 実行するマシンにあらかじめインストールしておいてください。

御助言頂きました通り、上記サイトから”oxppia.exe”をダウンロードして
きました。
これを、どこにインストールすれば宜しいのでしょうか?
御指導下さい。

宜しく御願い致します。
■No21374に返信(mitさんの記事)
> 大変、失礼致しました。
> 勝手に、他のサイトに出ていた物を引用してしまいました。
> まさか、御本人様が御覧になっていたとは・・・・。
> (本当にゴメンなさい)

謝ること何もないはずですが…

> 御助言頂きました通り、上記サイトから”oxppia.exe”をダウンロードして
> きました。
> これを、どこにインストールすれば宜しいのでしょうか?
> 御指導下さい。
>
> 宜しく御願い致します。

「参照コンポーネント’VBIDE’が見つかりませんでした。」等のエラーが出るとおっしゃっているPC−Bです。
oxppia.exeは自己解凍圧縮ファイルですね。
適当なフォルダに解凍するとReadme.htmがでてきますので、これに従った手順で各コンポーネントをインストールしてください。
度々、すみません。

> 「参照コンポーネント’VBIDE’が見つかりませんでした。」等のエラーが出るとおっしゃっているPC−Bです。
> oxppia.exeは自己解凍圧縮ファイルですね。
> 適当なフォルダに解凍するとReadme.htmがでてきますので、これに従った手順で各コンポーネントをインストールしてください。

Readme.htmを開いてみたんですが、英文でした。
(英語出来ません・・・!(泣))

取りあえず、自己解凍圧縮ファイルより、”D:\”に展開しました。
この展開されたファイル郡を、どこにコピーすれば良いのでしょうか?
C:\windows? C:\ProgramFiles?

この辺の事は、初めて行うので・・・。
大変御手数ですが、御教授頂けないでしょうか?

宜しく御願い致します。
■No21378に返信(mitさんの記事)
> Readme.htmを開いてみたんですが、英文でした。
> (英語出来ません・・・!(泣))

To install the Office XP PIAs
の部分は特に英文というほどではないと思いますが…
翻訳サイトたとえば
http://translator.live.com/Default.aspx
http://www.excite.co.jp/world/english/
とかで翻訳しながら読んでみてはどうでしょうか。

> 取りあえず、自己解凍圧縮ファイルより、”D:\”に展開しました。
> この展開されたファイル郡を、どこにコピーすれば良いのでしょうか?
> C:\windows? C:\ProgramFiles?
>
> この辺の事は、初めて行うので・・・。
> 大変御手数ですが、御教授頂けないでしょうか?
>
> 宜しく御願い致します。

C:WINDOWSのインストールドライブ)に
たとえばOffice XP PIAsというフォルダを作って
C:\Office XP PIAs\
に解凍したとします
Visual Studioコマンドプロンプトで(プログラムメニューから開けると思います)
まず、そのフォルダに移動(以下のように書いて[Enter])
cd C:\Office XP PIAs\
(以下のように書いて[Enter])
register.bat
これだけでよいはずです。

それでインストールできなければ書いてある通りリストにあるdllについて
以下のように書いて[Enter]
gacutil -i XXXX.dll
regedit /s XXXX.dll.reg
を繰り返すだけです。

見つからないと言われたら絶対パスで
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\gacutil.exe
(gacutil.exeは私の環境ではC:\WINDOWS\Microsoft.NET\Framework\v1.1.4322にあります。)

正しくインストールされれば、それらのdllがグローバルアセンブリキャッシュ(GAC、私の環境ではC:\WINDOWS\assembly)に表示されると思います。
度々、度々、すみません。
IIJIMASさんの御助言通り、作業を行ってみました。
結果をお知らせ致します。

> To install the Office XP PIAs
> の部分は特に英文というほどではないと思いますが…
> 翻訳サイトたとえば
> http://translator.live.com/Default.aspx
> http://www.excite.co.jp/world/english/
> とかで翻訳しながら読んでみてはどうでしょうか。

なかなか、ちゃんと翻訳されないものですね。
(ヤフーの翻訳ですが・・・。)
でも、何となく意味は分かります。

> C:WINDOWSのインストールドライブ)に
> たとえばOffice XP PIAsというフォルダを作って
> C:\Office XP PIAs\
> に解凍したとします
> Visual Studioコマンドプロンプトで(プログラムメニューから開けると思います)
> まず、そのフォルダに移動(以下のように書いて[Enter])
> cd C:\Office XP PIAs\
> (以下のように書いて[Enter])
> register.bat
> これだけでよいはずです。

> 正しくインストールされれば、それらのdllがグローバルアセンブリキャッシュ(GAC、私の環境ではC:\WINDOWS\assembly)に表示されると思います。

表示されました?
(多分大ジョブだと思います。色んなファイルが表示されて、良く分かりませんが・・・。)

そして、一度PCを再起動しました。
VS.NET2003を起動して、「プロジェクトを開く」からDドライブにある
プロジェクトを選択しました。(D:ドライブは作業ドライブです。)
そうしたら、以下(5件)の様なエラーが出てしまいました。

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
(1)依存関係 'Microsoft.Vbe.Interop' が見つかりませんでした。

(2)参照コンポーネント 'Excel' には、更新された使用可能なカスタム
   ラッパーがあります。

(3)参照コンポーネント 'Microsoft.Office.Core' には、更新された
   使用可能なカスタム ラッパーがあります。

(4)D:\test\out\VB-test\VB-test.vdproj '[TARGETDIR]' にあるファイル
  'xxxアイコン.ico' のソース ファイル
  'C:\Program Files\Microsoft Visual Studio .NET 2003\Vb7\VB Samples\
   WinForms-Calc\Calc\xxxアイコン.ico' が見つかりません。
   ファイルがないかロックされています。

(5)D:\test\out\VB-test\VB-test.vdproj プロジェクト出力
  'Vtest(アクティブ) の プライマリ出力' の依存関係
  'Microsoft.Vbe.Interop' が見つかりません。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

確かに、’VBIDE’関連のエラーは無くなった様です。
上記5件のエラーは、どの様に対処したら良いのでしょうか?
(全く訳が分からなくなってきました・・・。(泣))

御指導下さい。
宜しく御願い致します。
■No21380に返信(mitさんの記事)

> −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
> (1)依存関係 'Microsoft.Vbe.Interop' が見つかりませんでした。
>
> (2)参照コンポーネント 'Excel' には、更新された使用可能なカスタム
>    ラッパーがあります。
>
> (3)参照コンポーネント 'Microsoft.Office.Core' には、更新された
>    使用可能なカスタム ラッパーがあります。
>
> (4)D:\test\out\VB-test\VB-test.vdproj '[TARGETDIR]' にあるファイル
>   'xxxアイコン.ico' のソース ファイル
>   'C:\Program Files\Microsoft Visual Studio .NET 2003\Vb7\VB Samples\
>    WinForms-Calc\Calc\xxxアイコン.ico' が見つかりません。
>    ファイルがないかロックされています。
>
> (5)D:\test\out\VB-test\VB-test.vdproj プロジェクト出力
>   'Vtest(アクティブ) の プライマリ出力' の依存関係
>   'Microsoft.Vbe.Interop' が見つかりません。
> −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
>
> 確かに、’VBIDE’関連のエラーは無くなった様です。
> 上記5件のエラーは、どの様に対処したら良いのでしょうか?
> (全く訳が分からなくなってきました・・・。(泣))

ソリューションエクスプローラで
VBプロジェクトの方で参照設定でいったんExcelやVBIDEの参照を削除して、
改めて「参照の追加」「COM」で「Microsoft Office Excel 10.0 Object Library」と「Microsoft Office 10.0 Object Library」を追加してリビルドしてみてください。

(4)(5)はセットアップですね。
(4)はicoファイルが本当にそのパスにあるか確かめてあれば追加しなおしてください。
(5)も「プライマリ出力」いったん消して追加しなおしてみてください。
大変、御世話になります。

>>−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
>>(1)依存関係 'Microsoft.Vbe.Interop' が見つかりませんでした。
>>
>>(2)参照コンポーネント 'Excel' には、更新された使用可能なカスタム
>>   ラッパーがあります。
>>
>>(3)参照コンポーネント 'Microsoft.Office.Core' には、更新された
>>   使用可能なカスタム ラッパーがあります。
>>
>>(4)D:\test\out\VB-test\VB-test.vdproj '[TARGETDIR]' にあるファイル
>>   'xxxアイコン.ico' のソース ファイル
>>   'C:\Program Files\Microsoft Visual Studio .NET 2003\Vb7\VB Samples\
>>   WinForms-Calc\Calc\xxxアイコン.ico' が見つかりません。
>>   ファイルがないかロックされています。
>>
>>(5)D:\test\out\VB-test\VB-test.vdproj プロジェクト出力
>>   'VB-test(アクティブ) の プライマリ出力' の依存関係
>>   'Microsoft.Vbe.Interop' が見つかりません。
>>−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

>
> ソリューションエクスプローラで
> VBプロジェクトの方で参照設定でいったんExcelやVBIDEの参照を削除して、
> 改めて「参照の追加」「COM」で「Microsoft Office Excel 10.0 Object Library」と「Microsoft Office 10.0 Object Library」を追加してリビルドしてみてください。

”Excel”を参照設定から「削除」した時点で、エラーが105以上と
なってしまいました。
その後、「Microsoft Office Excel 10.0 Object Library」と
「Microsoft Office 10.0 Object Library」を追加してみましたが、
エラーが105以上は変わりませんでした。

”VBIDE”を削除した場合、改めて追加する方法が、分かりませんでした。
「COM」の中にも、それらしい名前が見つかりませんでした。

仕方ないので、プロジェクトをいじる前の物に戻しました。
(最初のエラー5個の状態)

> (4)(5)はセットアップですね。
> (4)はicoファイルが本当にそのパスにあるか確かめてあれば追加しなおしてください。
> (5)も「プライマリ出力」いったん消して追加しなおしてみてください。

(4)、(5)については、御助言通り「プライマリ出力」を作り直し、
ショートカットも作り直す事で、OKのようです。

訳も分からず、混乱しています。
御助言御願い致します。

宜しく御願い致します。
■No21382に返信(mitさんの記事)
新しい方の環境にて、一度まったく最初から、アプリケーションを作成し、必要な「Microsoft Office Excel 10.0 Object Library」と「Microsoft Office 10.0 Object Library」など参照設定をを追加して、必要ならば元のファイルをコピーするなどして該当のプロジェクトに近づけてみてください。

それでもだめならばExcel2002やVS2003の修復インストールなど試してみてください。ところでOfficeXPのエディションはProですよね?
そもそも、

> 参照コンポーネント 'Excel' には、更新された使用可能なカスタムラッパーがあります。
> 参照コンポーネント 'Microsoft.Office.Core' には、更新された使用可能なカスタム ラッパーがあります。

これはプロジェクトで参照しているものより「新しいものがPCにある」場合に出ると思うのですが。
#各binフォルダを空にしてからビルドするとどうなりますか?

AとBのOfficeのバージョンはどうなっているのでしょうか?
AよりBのほうが古いのであれば、つまり2003用に作ったものをXP用に作り変える(結果そうなる)のであれば
互換性をダウンするわけですので基本的に全機能を再確認する必要があります。
#XPに無く2003にある機能を使っていれば動かないわけで。

というわけで単に作業PCの変更とはいきません。
そういう意識や方針はどうなっていますか?
本当に作業PCを変更したいだけでなら、Officeの環境を同一にしなければなりません。
御世話になります。
御助言有り難う御座います。

> 新しい方の環境にて、一度まったく最初から、アプリケーションを作成し、必要な「Microsoft Office Excel 10.0 Object Library」と「Microsoft Office 10.0 Object Library」など参照設定をを追加して、必要ならば元のファイルをコピーするなどして該当のプロジェクトに近づけてみてください。

上記の方法ですが、「アプリケーションを新たに作成する」と言うのは、VBソースが200ファイル以上になっている為、非常に困難です。
(現在、エクスプローラを使ってPC−A(旧)からPC−B(新)へプロジェクトをコピーして作業しようとしています。)
余談ですが、昔はエディタ&コンパイラ(アセンブラ)があってソースファイルがあれば、どのPCでも編集作業が出来たのですが・・・。

> それでもだめならばExcel2002やVS2003の修復インストールなど試してみてください。ところでOfficeXPのエディションはProですよね?

”VS2003”、”VB.NET2003”の修復インストールは既に行っています。
(VS2003のヘルプファイル?にその様な事が書かれていましたので・・・。)
OfficeXPのエディションは、PCを購入してから特に追加等していませんのでHOMEだと思います。(PCは、WindowsXP HOMEですから・・・。)
ちなみに、PC−AとPC−Bは同一機種です。(偶然にも・・・)
Windowsなども同一バージョンです。

宜しく御願い致します。
御世話になります。
御助言有り難う御座います。

>>参照コンポーネント 'Excel' には、更新された使用可能なカスタムラッパーがあります。
>>参照コンポーネント 'Microsoft.Office.Core' には、更新された使用可能なカスタム ラッパーがあります。
>
> これはプロジェクトで参照しているものより「新しいものがPCにある」場合に出ると思うのですが。
> #各binフォルダを空にしてからビルドするとどうなりますか?

先日、下記の様な御助言を頂き、”Office XP PIAs”をダウンロード〜インストールしました。
−−−−−−−−−−−−−−−−−−−−−−−
”Office XP用のPIAは…”
”Office XP PIAs」”
”http://www.microsoft.com/downloads/details.aspx?FamilyId=C41BD61E-3060-4F71-A6B4-01FEBA508E52&displaylang=en
にあるようです。”
”実行するマシンにあらかじめインストールしておいてください。”
−−−−−−−−−−−−−−−−−−−−−−−

> AとBのOfficeのバージョンはどうなっているのでしょうか?
> AよりBのほうが古いのであれば、つまり2003用に作ったものをXP用に作り変える(結果そうなる)のであれば
> 互換性をダウンするわけですので基本的に全機能を再確認する必要があります。
> #XPに無く2003にある機能を使っていれば動かないわけで。
>
> というわけで単に作業PCの変更とはいきません。
> そういう意識や方針はどうなっていますか?
> 本当に作業PCを変更したいだけでなら、Officeの環境を同一にしなければなりません。

偶然にも、同一機種の為、同じだと思います。(確認してみます。)
同一機種で変更?と思われるかも知れませんが、PC−Aは他部署のものであり、
PC−Bは当方のものです。(PC−Aを返却しなくては、いけないのです。)

いろいろ、試して見ますが、更なる御助言をお待ちしています。
宜しく御願い致します。
こんにちは。

度重なる御助言有り難う御座いました。
解決致しました。

全てのファイルは一を従来の開発PCと合わせ、
”Office XP PIAs”をインストールしたところ、
他のPCでも作業できるようになりました。

度重なる御助言有り難う御座いました。

今後とも、宜しく御願い致します。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板