- PR -

レジストリへのアクセス

投稿者投稿内容
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-09-12 22:47
今頃アレだけど。。。

エクセルの COM を参照して、Imports して、
Dim ex As Excel.ExcelApplication = New Excel.ExcelApplication
で良いんじゃないの?


おっと、遅延バインディングか。
(イヤ、ほとんど変わらんはず)
ぶさいくろう
ぬし
会議室デビュー日: 2005/11/22
投稿数: 1232
お住まい・勤務地: 川崎市(は俺も含めてロクな人間が住んでないよw)
投稿日時: 2006-09-13 00:31
すでに出てる案だしな。
のり
会議室デビュー日: 2007/01/19
投稿数: 1
投稿日時: 2007-01-19 12:54
超カメレスですが

「Office アプリケーションのパスを調べる方法」
http://support.microsoft.com/default.aspx?scid=kb;ja;240794
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2007-01-19 15:09
引用:

Jittaさんの書き込み (2006-09-12 22:47) より:

今頃アレだけど。。。


今さらの返信だけど。。。

引用:

エクセルの COM を参照して、Imports して、
Dim ex As Excel.ExcelApplication = New Excel.ExcelApplication
で良いんじゃないの?


それ、コンパイル エラーになります。
'ExcelApplication' などという型はないです。

引用:

おっと、遅延バインディングか。
(イヤ、ほとんど変わらんはず)


型が明示化されているのですから、遅延バインディングではないですよ。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2007-01-19 22:16
 なんで今頃上がってくるんだか(^-^;

 読み直してみると、問題の認識違いですね。
引用:

VB.NET上でEXCELを使用しているのですが、メモリ上に複数起動したりするので現在は下記のようにプロセスをKillしている


COM 参照の破棄が完全でないから終了できない、ってのが、問題の本質。

 それを完全にやらないから、外部から kill しなきゃならない。んで、プロセスの比較のために excel の絶対パスが欲しい、と。まったく無駄な処理を仕様としているわけですね。

 あと、本当にフルパスが必要なの? excel.exe だけ拾えば(抜き出せば or マッチさせれば)良いんじゃない?とも思ったり。
_________________

スキルアップ/キャリアアップ(JOB@IT)