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

投稿時間:2003/05/23(Fri) 19:14
投稿者名:LostCat
URL :
タイトル:
Win2000ProでFAX送信
FAX送信について教えてください。
FAXサーバーのオブジェクトを作り出そうとして

Dim objFaxServer As New FAXCOMEXLib.FaxServer

とやると”オブジェクト変数またはWithブロック変数が設定されていません。”と出ます。
環境としてはVB5、ライブラリはfxscomex.dllを使用しています。

FAX Serviceも立ち上がってますし、プリンタフォルダにはFAXも追加しています。
どこが悪いのでしょうか。どなたか教えてください。よろしくお願いします。

投稿時間:2003/05/23(Fri) 20:17
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: Win2000ProでFAX送信
> どこが悪いのでしょうか。どなたか教えてください。よろしくお願いします。

上記だけのコードでは解らないと思いますよ!

" Withブロック変数が設定されていません。"    この辺は大丈夫ですか?

投稿時間:2003/05/24(Sat) 10:26
投稿者名:LostCat
URL :
タイトル:
Re^2: Win2000ProでFAX送信
> 上記だけのコードでは解らないと思いますよ!
>
> " Withブロック変数が設定されていません。"    この辺は大丈夫ですか?

言葉足らずで申し訳ありません。コード上で実際にエラーがは発生する場所は以下の通りです。
Dim objFaxServer    As New FAXCOMEXLib.FaxServer
の後に、
objFaxServer.Connect ""
で接続を行っているのですが、ここで
”ActiveX コンポーネントはオブジェクトを作成できません。”というエラーが出てきます。
よろしく、お願いします。

投稿時間:2003/05/24(Sat) 11:25
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: Win2000ProでFAX送信
> objFaxServer.Connect ""
> で接続を行っているのですが、ここで
> ”ActiveX コンポーネントはオブジェクトを作成できません。”というエラーが出てきます。

前回とエラーの内容も場所も変わったのですか?

MSDNの下記のサンプルも動かないのでしょうか?

Private Sub Form_Load()
Dim objFaxServer As New FAXCOMEXLib.FaxServer

'Error handling
On Error GoTo Error_Handler

'Connect to the fax server
objFaxServer.Connect ""

'Display server properties

MsgBox "Server information" & vbCrLf & _
vbCrLf & "API Version: " & objFaxServer.APIVersion & _
vbCrLf & "Debug: " & objFaxServer.Debug & _
vbCrLf & "Build and version: " & objFaxServer.MajorBuild & "." & objFaxServer.MinorBuild & "." & objFaxServer.MajorVersion & "." & objFaxServer.MinorVersion & "." & _
vbCrLf & "Server name: " & objFaxServer.ServerName
Exit Sub

Error_Handler:
    'Implement error handling at the end of your subroutine. This implementation is for demonstration purposes
    MsgBox "Error number: " & Hex(Err.Number) & ", " & Err.Description

End Sub

投稿時間:2003/05/24(Sat) 12:59
投稿者名:LostCat
URL :
タイトル:
Re^4: Win2000ProでFAX送信
> 前回とエラーの内容も場所も変わったのですか?
>
> MSDNの下記のサンプルも動かないのでしょうか?

はい、動きませんでした。前回と同じエラーが返されます。

エラーの内容が変わったのかということですが、変わっていません。
実際にエラーが発生するのは
objFaxServer.Connect ""
の部分です。
Dim objFaxServer    As New FAXCOMEXLib.FaxServer
の直後にobjFaxServerをポップアップで見てみると
”オブジェクト変数またはWithブロック変数が設定されていません。”と出ます。
よろしくお願いします。

投稿時間:2003/05/24(Sat) 13:15
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^5: Win2000ProでFAX送信
正確なエラーメッセージは下記でしょうか?

実行時エラー'429' ACtiveXコンポーネントはオブジェクトを作成できません

上記なら DLL がうまく登録されていない可能性があります。

多分 VB5.0 Win2000 の環境に問題があるかと思います。

投稿時間:2003/05/24(Sat) 13:42
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^5: Win2000ProでFAX送信
まず、権限の問題では無い事を切り分けるために、
Administratorでログインしてみてください。

その後、参照設定せずに、
  Dim Obj As Object
  'Set Obj = CreateObject("FAXCOMEX.FaxServer")
  Set Obj = CreateObject("FaxServer.FaxServer")
  MsgBox TypeName(Obj)
を実行できるかどうかを確認してみてください。

これで実行できるようであれば、実行権限が不足しているという事ではないかと思います。

また、もしも FAXCOMEX.FaxServer、FaxServer.FaxServer の両方共に、
オブジェクトの生成に失敗するようであれば、FaxServerコンポーネントの
COMインターフェイスが、正しくインストールされていないのではないかと想像します。
その場合は、レジストリに、
  HKEY_CLASSES_ROOT\CLSID\{CDA8ACB0-8CF5-4F6C-9BA2-5931D40C8CAE}
  HKEY_CLASSES_ROOT\FaxComEx.FaxServer
  HKEY_CLASSES_ROOT\CLSID\{D73733C8-CC80-11D0-B225-00C04FB6C2F5}
  HKEY_CLASSES_ROOT\FaxServer.FaxServer
のキーが存在していて、そこにアクセスできるかどうかを確認してみてください。

投稿時間:2003/05/24(Sat) 14:50
投稿者名:LostCat
URL :
タイトル:
Re^6: Win2000ProでFAX送信
> Administratorでログインしてみてください。
>
> その後、参照設定せずに、
>   Dim Obj As Object
>   'Set Obj = CreateObject("FAXCOMEX.FaxServer")
>   Set Obj = CreateObject("FaxServer.FaxServer")
>   MsgBox TypeName(Obj)
> を実行できるかどうかを確認してみてください。
>
> これで実行できるようであれば、実行権限が不足しているという事ではないかと思います。
>
> また、もしも FAXCOMEX.FaxServer、FaxServer.FaxServer の両方共に、
> オブジェクトの生成に失敗するようであれば、FaxServerコンポーネントの
> COMインターフェイスが、正しくインストールされていないのではないかと想像します。
> その場合は、レジストリに、
>   HKEY_CLASSES_ROOT\CLSID\{CDA8ACB0-8CF5-4F6C-9BA2-5931D40C8CAE}
>   HKEY_CLASSES_ROOT\FaxComEx.FaxServer
>   HKEY_CLASSES_ROOT\CLSID\{D73733C8-CC80-11D0-B225-00C04FB6C2F5}
>   HKEY_CLASSES_ROOT\FaxServer.FaxServer
> のキーが存在していて、そこにアクセスできるかどうかを確認してみてください。

FAXCOMEXLibで行うことを前提にお話をさせてください。
(FaxServer.FaxServerでは実行できまし、レジストリにも登録されています。)
Administratorで実行しましたが、やはり
”実行時エラー'429' ACtiveXコンポーネントはオブジェクトを作成できません”と出ます。

次にレジストリにキーが存在するか見てみたところ存在していませんでした。
VBで参照設定しているにもかかわらず、レジストリに登録されていないのですがどうしたらいいのでしょうか?