アプリ版:「スタンプのみでお礼する」機能のリリースについて

初めまして。
2003Server+IIS6.0の環境でASP内のActiveXからShell関数でvbのexeを実行させる処理を作成しております。
サーバーから直接exeを実行させると正常に動くのですが、Web上からasp→ActiveX→exeを起動させるとテキストに書き込む処理はできるのですが、「CreateObject」文で「ActiveX コンポーネントはオブジェクトを作成できません」というエラーが返ります。

VB内でなぜ「CreateObject」が出来ないのかご存知の方はいますでしょうか。
宜しくお願いいたします。

A 回答 (3件)

Ano.2さんが回答されていますが、アクセス権がないんじゃないかとおもいます。


IISの場合、
 ASP自身(IIS自身)のアカウントとしてIWAS_マシン名
 ASPを見るインターネットゲストアカウントとして IUSR_マシン名
の二つがあります。
デフォルトでは
IWAS_マシン名のアカウントはサービスユーザとして、
IUSR_マシン名のアカウントはGuestユーザとして
のアクセス権が与えられます。
IUSR_マシン名 のユーザに適当なフォルダアクセス権や実行権を与えてあげれば、動作すると思います。
    • good
    • 0
この回答へのお礼

みなさん。ありがとうございます。

権限を付けても解決しませんでしたが、
今まで、win2000上でコンパイルしたソースを2003serverで使用していたのが根本的なミスでした。
2003ServerはADOのバージョンが2.8なので、合わなかったようです。
2003ServerにVBをインストールし、2003内でDLLとEXEをコンパイルしましたら成功しました。

本当にありがとうございました。

お礼日時:2007/06/19 12:54

実行権限では?


公開されていないのであれば
ASPの実行ユーザー(IUSR?)に管理者権限を一時的に付与したら動きそうな…。
    • good
    • 1

ここで言っておられる ActiveX と Shell関数と "vbのexe" の関係がよくわかりません。


「何が何をどうしようとしたが、どこでどんなエラーが出てしまうのか」

> サーバーから直接exeを実行させると正常に動く
ということから、
何らかのユーザーでサーバーにログインして対象の exe ファイルを実行する事はできる。
という事だけは読み取れます。
しかし ASP のコード内でどのような流れで exe をキックしようとしているのかが見えません。

CreateObject ~ exe を実行 までのコードと、どこでエラーが出るのかを書いた方が識者からの回答が得られやすいですよ。

この回答への補足

返信ありがとうございます。
省略して書きますが、

ASP:
------------------------------------------------------
Set obj = Server.CreateObject("Csvdll.exekick")
obj.exec()
------------------------------------------------------

ActiveX:Csvdll.exekick
-------------------------------------------------------
Public Function exec()
Dim cmdline As String

ret = Shell("c:\temp\test\test.exe")
test_a = ret

End Function
------------------------------------------------------

c:\temp\test\test.exe
-----------------------------------------------------
Sub Main()
Set db = CreateObject("ADODB.Connection")
・・・・・・・・・・・・・
-------------------------------------------------------

web上からaspを実行して、Csvdll.exekickからtest.exeを実行します。
exeの「CreateObject」で「ActiveX コンポーネントはオブジェクトを作成できません。」とエラーを吐きます。
しかし、サーバーに入り直接exeを実行するとエラーは起こりません。

ちなみにCreateObject("ADODB.Connection")のみではなく「CreateObject」文全てこのエラーが発生します。

宜しくお願いいたします。

補足日時:2007/06/18 20:56
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています