- PR -

JNIについて

投稿者投稿内容
ヒロピン
常連さん
会議室デビュー日: 2003/12/14
投稿数: 35
投稿日時: 2005-12-07 20:24
Tdnr_Symさん申し訳ありません。

インスタンスの生成に失敗したときにスレを書き込んでしまったんですが、
その後、VBのdllが古いことに気付いてすぐにスレを消してしまいました。

DLLがCOMに登録されているかどうかは
VC++6をインストールしていないと
分からないのでしょうか?
Tdnr_Sym
ぬし
会議室デビュー日: 2005/09/13
投稿数: 464
お住まい・勤務地: 明石・神戸
投稿日時: 2005-12-07 21:08
こんばんは。

引用:

ヒロピンさんの書き込み (2005-12-07 20:24) より:

DLLがCOMに登録されているかどうかは
VC++6をインストールしていないと
分からないのでしょうか?



わざわざ、VC++6をインストールしなくても、
C:¥Program Files¥Microsoft Visual Studio¥Common¥Tools¥OLEVIEW.EXE
というファイルを他のPCへコピーして、実行するだけで
「OLE/COM オブジェクト ビューア」が使用できますけれども。
#場合によっては、MFC42.dllとMSVCRT.dllもコピーしないといけないかも知れません。

あとは、DLLがCOMに登録されていれば、
VB6の「参照設定」の一覧に表示されるようになります。


その他の確認方法は…そうですねぇ、ちょっと分かりづらくなりますが、
レジストリエディタの「¥HKEY_CLASS_ROOT¥」配下に
該当するキーが存在するかを確認すれば良いでしょう。

今回の場合ですと
¥HKEY_CLASS_ROOT¥VbCom.OtherSystem
というフォルダが作成されているはずです。また、
¥HKEY_CLASS_ROOT¥VbCom.OtherSystem¥Clsidの値が{BD83FCED-8C0B-4D74-B755-B7091C46E55C}(私の場合)
となっていますので、
¥HKEY_CLASS_ROOT¥CLSID¥{BD83FCED-8C0B-4D74-B755-B7091C46E55C}
というフォルダ内に
具体的な登録情報が格納されています。


他にもなにか良い方法(ツール)があるかも知れませんが、
私が普段、COMの登録確認をする場合は、上記ような方法を使います。
ヒロピン
常連さん
会議室デビュー日: 2003/12/14
投稿数: 35
投稿日時: 2005-12-08 00:51
Tdnr_Symさん今日は1日ありがとうございました。

先ほどの質問は、本番環境にVBをインストールしてしまうと
ライセンス費用が発生してしまうのかと心配だったので
質問させていただきました。

起動されているかどうかが分かれば良いので、
レジストリから確認する方法にします。

業務用のプログラムは、送られてきたデータをDBへ登録し、
必要項目を入力して送り返すだけなので、C++さえうまく
コーディングできれば処理自体はたいしたことないので、
なんとか明日中にプログラムを作って明後日にはテスト
できるように頑張ります。

ここまで来れたのはTdnr_Symさんのおかげです。
感謝しております。

今後ともよろしくお願いします。
ヒロピン
常連さん
会議室デビュー日: 2003/12/14
投稿数: 35
投稿日時: 2005-12-09 12:18
お世話になっております。

他システムからdllのソースをもらえなかったので、
サンプルソースをもらったのですが、
dllの元になったVBのソースの変数名が日本語でした。

変数名が日本語でも問題ありませんか?
Tdnr_Sym
ぬし
会議室デビュー日: 2005/09/13
投稿数: 464
お住まい・勤務地: 明石・神戸
投稿日時: 2005-12-09 15:15
ヒロピンさん、こんにちは。

開発が順調に進んでいるのか、気になっていたんですが…
まだ、これからといった感じですね。

引用:

ヒロピンさんの書き込み (2005-12-09 12:18) より:

他システムからdllのソースをもらえなかったので、
サンプルソースをもらったのですが、
dllの元になったVBのソースの変数名が日本語でした。

変数名が日本語でも問題ありませんか?



VB6 dll側の件ですね。
変数が日本語であることには、おそらく問題ないですが
メソッド名(Function, Sub)が日本語であれば問題となります…
VC++の#importでエラーが出てしまいます。

なんとなく「変数名が日本語」というあたりに不安めいたものを感じてしまうのですが、
他の問題点も出てくるんじゃないかと心配してしまいますが、大丈夫なんでしょうかねぇ。

「他システムのVB6 dll」は、どんなものなんでしょうか?
・どなたが作っておられるのでしょう。社内の別チームでしょうか?それとも別会社さんでしょうか?
・そのVB6 dllを呼び出すのは、ヒロピンさん側(Java)だけなのでしょうか?それとも共通dllとして使われるのでしょう?
・VB6 dllのインターフェイス仕様に対して、ヒロピンさん側と相談なく開発されているのでしょうか?打ち合わせとかあるんでしょうか?
・ヒロピンさん側が変更を要求すれば、そのように作り変えてもらえるものなのでしょうか?

なんだか、VB6 dllが「VBの世界」だけで開発されてしまい、VC++やJava側から手が付けられなくなってしまうんじゃないかと
不安になってしまいました(~_~;)
Tdnr_Sym
ぬし
会議室デビュー日: 2005/09/13
投稿数: 464
お住まい・勤務地: 明石・神戸
投稿日時: 2005-12-09 15:34
ヒロピンさん、こんにちは。

VB dllのサンプルソースをこの掲示板で公開してもらうのは、きっとマズイでしょうから、
もしよろしければ、私宛にメールで送ってもらえませんか?

ヒロピンさんにPM(プライベートメッセージ)で私のメールアドレスを書き込んでおきますので
よろしければ、お願いします。

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