[リストへもどる]
一括表示

投稿時間:2004/06/08(Tue) 11:16
投稿者名:SIN
Eメール:sin1310miz@ybb.ne.jp
URL :
タイトル:
vb6でICADを操作する
お久しぶりです。

VB6でICADを操作したくて以下のソースを組んでみたのです。

最初のオブジェクト作成だけはうまくいき操作できたのですが
次からはオブジェクトをうまく作成できず(IntCがnothing?)
操作できません。
私のソースの書き方が悪いと思うのですがどこを修正すれば良いか教えてください。


Option Explicit
Dim IntC As intellicad.Application

Private Sub Command1_click()

CadID = Shell(iCADexe) 'intellicadを起動する

Set IntC = intellicad.Application

IntC.RunCommand "Print" '印刷

IntC.QUIT 'intellicadを終了する

Set IntC =Nothing

End Sub

投稿時間:2004/06/08(Tue) 12:27
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re: vb6でICADを操作する
# ICADという物は、使った事も聞いた事も無かったので、推測だけで回答しています。


> CadID = Shell(iCADexe) 'intellicadを起動する
先に起動しておかないと、intellicad.Applicationは使えないのでしょうか?

> Set IntC = intellicad.Application
インスタンスを生成しているところが見当たらない所をみると、
intellicad.Applicationは、グローバルオブジェクトのようですね。

明示的にインスタンスを生成するために、
Set IntC = New intellicad.Application
とか、あるいは、
Set IntC = CreateObject("ICAD.Application")
とか、もしくは
Set IntC = GetObject(, "ICAD.Application")
などの記述を行うようにしても、操作できませんか?

投稿時間:2004/06/08(Tue) 16:34
投稿者名:SIN
Eメール:sin1310miz@ybb.ne.jp
URL :
タイトル:
Re^2: vb6でICADを操作する
魔界の仮面弁士さん 毎回ありがとうございます。

> 先に起動しておかないと、intellicad.Applicationは使えないのでしょうか?
どうやら使えないみたいなんです。

> 明示的にインスタンスを生成するために、
>  Set IntC = New intellicad.Application
> とか、あるいは、
>  Set IntC = CreateObject("ICAD.Application")
> とか、もしくは
>  Set IntC = GetObject(, "ICAD.Application")
> などの記述を行うようにしても、操作できませんか?
上記の全てを試してみたのですが、うまくいきませんでした。

IntelliCADを閉じずにずっと起動したままならうまくいくのですが・・・

投稿時間:2004/06/09(Wed) 09:42
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^3: vb6でICADを操作する
> >  Set IntC = New intellicad.Application
> >  Set IntC = CreateObject("ICAD.Application")
> >  Set IntC = GetObject(, "ICAD.Application")
> 上記の全てを試してみたのですが、うまくいきませんでした。
ふむ、上記は、googleで検索してみつかった
http://hiro.icadweb.com/vbadoc/vbdoc0011.html
を参考にしてみたのですが、駄目でしたか。。。

参照設定を外して、レイトバインドでコーディングした場合も、状況は一緒ですか?

> IntelliCADを閉じずにずっと起動したままならうまくいくのですが・・・
そもそも、『うまく作成できない』『IntCがnothing(?)』というのは、
具体的にはどういった状態なのでしょうか?

投稿時間:2004/06/10(Thu) 11:33
投稿者名:SIN
Eメール:sin1310miz@ybb.ne.jp
URL :
タイトル:
Re^4: vb6でICADを操作する
> http://hiro.icadweb.com/vbadoc/vbdoc0011.html
> を参考にしてみたのですが、駄目でしたか。。。
私も上記のHPを見て参考にしたのですが。

> 参照設定を外して、レイトバインドでコーディングした場合も、状況は一緒ですか?
HPに書いてある全ての方法を試したのですが全て一緒でした。

> そもそも、『うまく作成できない』『IntCがnothing(?)』というのは、
> 具体的にはどういった状態なのでしょうか?
VBで作成したアプリケーションで「10分に一回ICADを起動し一連の処理を行い、ICADを閉じる」動作を
実現したいのです。
最後にICADを閉じるまえに「IntC=Nothing」でオブジェクトを開放しています。
アプリケーションを閉じず10分後にICADを起動したときに又新しいオブジェクトIntCを作成して
先ほどと一緒の操作を行いたいのですが、2度目からはうまくいきません。
ICADを閉じずにそのまま待機させておくと2度目からもうまくいくのですが・・・説明が下手で申し訳ないです。