0

Azure で実行する 1 つの Web ロールを開発しましたが、Web ロールは 1 つのデバイスから入力を取得する必要があります。Webrole は、ローカル シミュレーションで実行すると、ローカル デバイスと適切に通信できます。ただし、Azure にデプロイすると、webrole はローカル デバイスから入力を取得できません。

ところで、デバイスのドライバーは c++ 32bit dll ですが、webrole は c# で書かれているので、c# にワープします。繰り返しますが、Web ロールとデバイスはローカル コンピューターではうまく通信しますが、Web ロールが Azure にデプロイされると接続に失敗するようです。

お知らせ下さい。ありがとう。

4

2 に答える 2

1

あなたの説明から、あなたのデバイスはローカル PC に接続されているようです。ローカルで実行すると、Web ロールはローカル PC で実行されるため、デバイスを使用できます。Webrole をクラウドにデプロイすると、デバイスはローカル PC で実行されなくなるため、デバイスを認識できなくなります。

また、Web ロールが実行されているクラウド VM にドライバーをインストールしても、デバイスがまだローカル PC に接続されているため、役に立ちません。

于 2012-12-11T10:31:09.533 に答える
0

デバイスがローカルPCに接続されていて、USBなどを介してアプリケーションと通信している場合、Azureからデバイスを使用することはできません。Azure VMからローカルUSBを接続することも、デバイスをMSに出荷して、アプリを実行しているAzureVMに接続することもできないためです。

しかし、あなたが本当に望むなら、それは可能かもしれません。まず最初に、デバイスの前にWebサービスインターフェイスを作成して、ネットワーク経由で使用できるようにする必要があります。次に、紺碧からそれを使用することを試みることができる3つのアプローチがあります。

  1. Service Busリレーを使用して、Webサービスを公開します。次に、Azureアプリケーションはクラウドからこのサービスと通信し、デバイスと通信できます。
  2. WindowsAzureConnectを使用します。まだ利用できるかどうかはわかりませんが、PCとAzureVMの間にIP-sec接続を作成するために使用できます。次に、ローカルIPを使用してWebサービスと通信できます。
  3. 新しいWindowsAzure仮想ネットワークを使用します。私はこの機能を試したことがありませんが、動作するはずです。

したがって、基本的には、Webサービスレイヤーを導入してローカルデバイスを開く必要があります。

于 2012-12-12T06:11:48.907 に答える