質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

受付中

サーバーのexeファイルをクライアント側のPCから動かしたい

python_biginer
python_biginer

総合スコア6

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

2回答

0グッド

3クリップ

352閲覧

投稿2022/11/13 14:22

前提

OSはサーバー側、クライアント側のPC両方ともWindows10です。
また、両方のPCは同一ネットワーク内にあります。
サイトはhtml、JavaScript、flask、pythonで作っています。

実現したいこと

まずボタンを押すとexeファイルを実行するサイトを作りました。
これにより、このサイトのコードが保存してあるPCで実行した場合はそのPC内に置いてあるexeファイルを実行できるようになりました。
これに対し、クライアント側となる別のPCからサーバー側のPCにブラウザを介してアクセスして、同じようにexeファイルを実行したいです。

ただし条件があり、
1、exeファイルが影響を及ぼすのはクライアント側のPCでなくてはならない。(例としてメモ帳を起こすexeファイルとすれば、ボタンをクリックした場合はサーバーのメモ帳ではなくボタンをクリックした端末のメモ帳を起こしたい)
2、クライアント側のPCにはそのサイトのコードが入ったファイルを送ったりといったような、何かしらの手を加えてはいけない
3、物理的にコードで接続してはいけない
といった条件を守らなくてはなりません。

発生している問題・エラーメッセージ

私はpythonのsubprocess.run("C:¥¥ファイルのパス¥¥〇〇.exe")でexeファイルを動かしていますが、クライアント側から実行した場合exeファイルを動かすことすらうまくいきません。1ヶ月ほどかけて情報を調べてみましたが、他のPCのexeファイルを実行できる方法すら見つかりません。そのため、そもそもの話としてそういった機能は作れるのでしょうか。もし何か知っている方がいましたら教えていただきたいです。

該当のソースコード

試したこと

補足情報(FW/ツールのバージョンなど)

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

hoshi-takanori

2022/11/13 14:24

それが簡単にできるとウィルス作り放題になるので…。
meg_

2022/11/13 15:00

> OSはサーバー側、クライアント側のPC両方ともWindows10です。 > また、両方のPCは同一ネットワーク内にあります。 自宅のネットワーク内の話ですか?
jbpb0

2022/11/28 02:56 編集

> OSはサーバー側、クライアント側のPC両方ともWindows10です。 > 他のPCのexeファイルを実行できる方法 このあたりとか https://qiita.com/awsmgs/items/8ceea2bf2d47486805f1 http://www.vwnet.jp/windows/powershell/InvokeCommand.htm https://4thsight.xyz/15577 【追記】 上記の方法はいずれも、サーバーからのリモート実行を許可する設定を、クライアント側でする必要があります それも下記に違反するのなら、それらの方法は使えません > クライアント側のPCにはそのサイトのコードが入ったファイルを送ったりといったような、何かしらの手を加えてはいけない
otn

2022/11/14 11:14

クライアント上の操作でクライアント上のプログラムを起動したいというなら、ブラウザーとか介しないで、単に起動すれば良いだけですが、それで何か不都合はありますか?
jbpb0

2022/11/28 03:05 編集

> ボタンをクリックした端末のメモ帳を起こしたい レジストリに登録しておけば、できるみたいです https://ja.stackoverflow.com/questions/27343/ https://qiita.com/kojimadev/items/74100c8557a92939ef69 レジストリへの登録が下記に違反するのなら、ダメですが > クライアント側のPCにはそのサイトのコードが入ったファイルを送ったりといったような、何かしらの手を加えてはいけない

回答2

0

条件2に抵触するかもしらんけど、独自ブラウザ作ったら。
サーバはExec: \server\share\hoge.exe
みたいなヘッダー出して、独自ブラウザで、CreateProcessするとか、context-type:application/exeならそのコードを実行せるとか。
条件3の解釈次第だけど、Serverからclientにpsexecかけるとか。

投稿2022/11/14 02:01

matukeso

総合スコア1425

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

0

どうやってPCが動いているのか、というおはなしとなりますが、
そもそも、実行するコードがそのPC内に存在しないと実行することはできません

そのコードをどうやってクライアントに転送してくるか、ってことになりますが、それをしてはいけないなら、不可能ということになろうかと。

投稿2022/11/13 23:28

y_waiwai

総合スコア86013

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。