2017-01-12 13 views
-1

私は1つのWebアプリケーション1つのWebサービスと1つのWindowsアプリケーションを持っており、WebアプリケーションからWebサービスメソッドを呼び出すと、そのメソッドで私はWindowsアプリケーションexeを呼び出しています。私は、サーバーマシン上にWindowsアプリケーションexeを置いて、サーバーマシン上にそのWebサービスをホストしています。 Webサービスがローカルiisでホストされていて、それがサーバーのIIS上にある場合、タイムアウトエラーが発生するWebアプリケーションのメソッド内でWindowsアプリケーションexeを呼び出す

+0

問題の原因は何ですか? – pringi

+0

私はWebアプリケーションでWebサービスメソッドを呼び出しました。その方法で私はexeを実行しました。そのexeは、WebサービスがローカルIIS上でホストされ、WebサービスがサーバーIIS上でホストされているときにタイムアウトエラーが発生した場合にのみ動作します。 –

答えて

1

Webサービスは、Webサーバー上のASP.NETワーカープロセスのコンテキストで実行されます。 ASP.NET Webページまたはサーバーコントロールでメソッドを使用する場合、新しいプロセスはアクセス許可が制限されたWebサーバー上で実行されます。

Give permission ASP.NETワーカープロセスアカウントがデスクトップとやり取りしたり、ASP.NETワーカープロセスをSYSTEMアカウントで実行できるようにする。

  1. コントロールパネルを開き、次の手順を実行します。Windows NTの場合:[サービス]をクリックします。 Windows 2000、Windows XP、および.NET Serverの場合:[管理ツール]、[サービス]の順にクリックします。
  2. IIS Admin Serviceをダブルクリックします。
  3. [ログオン]タブで、[サービスとデスクトップとの相互作用を許可する]チェックボックスをオンにします。 IIS Admin Serviceをローカルシステムとして実行することを忘れないでください。
  4. IIS Admin Serviceを停止して再起動します。
+0

ありがとう! Alexey ....その作業中... :) –

+0

現在、私はSecuGen指紋デバイスに取り組んでいますが、私はそのDLLをWebアプリケーションで使用できないので、Windowsベースのdll(SecuGen.FDxSDKPro.Windows)しか持っていません。 secuGenデバイスをWebアプリケーションで使用する方法を教えてください。 –

+0

ほとんどの場合、ActiveXを使用することは避けられません。なぜなら、明らかなセキュリティ上の理由により、Webアプリケーションはクライアントシステムにアクセスすることができず、指紋の読み取りはW3標準 –

関連する問題