ホームページ > バックエンド開発 > PHPチュートリアル > gd 拡張機能を使用して imagegrabscreen を呼び出してスクリーンショットを撮ると、画面が完全に真っ暗になります。サービスがデスクトップと対話できるようにしても役に立ちません。

gd 拡張機能を使用して imagegrabscreen を呼び出してスクリーンショットを撮ると、画面が完全に真っ暗になります。サービスがデスクトップと対話できるようにしても役に立ちません。

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-07-28 08:26:23
オリジナル
1293 人が閲覧しました

gd 拡張機能を使用して imagegrabscreen を呼び出してスクリーンショットを撮ると、画面が完全に真っ黒になります。 ! !広まった方法「サービスがデスクトップと対話できるようにする」はまったく機能しません。 !そして最も奇妙なのは、スクリーンショットを撮るためにシステムを使用して C で書かれた exe を呼び出そうとすると、画面が真っ暗になりますが、コマンド ラインからこの exe を直接呼び出してスクリーンショットを撮ることにはまったく問題がありません。解決策を見つけてください! ! !

わかりました。 。自分で質問して答えることしかできないようです...

セッション0の分離の問題です
httpd.exeがシステムサービスとして実行されない限り、セッション0の問題は回避できます。

この質問が投稿された翌日、XPでテストしてみたところ、確認する限り問題ないことが分かりました。私のwin7とwinserver2012では画面がまだ黒いです。いつものアカウントでサービスにログインしようとしましたが、うまくいきませんでした。次に、httpd.conf のユーザー/グループ オプションに注目し、デーモンを Apache に変更し、さまざまなユーザー/グループを変更しましたが、どれも機能しませんでした。この時点で、Win Vista 以降のシステムではサービスをセッション 0 で実行し、ユーザー インターフェイスから分離することを考えました。 「サービスによるデスクトップとの対話を許可する」にチェックが入っている場合でも、キャプチャされた画面はセッション 0 の内容です。たまたま、セッション 0 のデスクトップのコンテンツは空で、壁紙も黒です...つまり、「黒い画面」です。さらに致命的なのは、シェルを実行したい場合、権限が非常に低いことです。 lsrunas と saunr (runas にはパスワードが必要です) を使用して、昇格された特権でスクリーンショット exe を実行しようとしましたが、win7 がこのバックドアをブロックしました。諦めかけたとき、クラスメートが Win7 でテストし、xampp をインストールしてくれました。実際に機能します。信じられないことだと思います。彼のコンピュータには Apache サービスがないことがついにわかりました。 !そこで私は答えを見つけました。httpd.exe がサービスとして直接実行されない限り、session0 の問題は回避できるのです。

セッション 0 の分離の問題については、より明確に説明されているこの記事を参照してください: http://www.cnblogs.com/gnielee/archive/2010/04/07/session0-isolation-part1.html


上記ではgd拡張機能を使ってimagegrabscreenを呼び出してスクリーンショットを撮る方法を紹介しましたが、画面が真っ黒になってしまいました!サービスがデスクトップと対話できるようにしても役に立ちません。 、関連コンテンツも含めて、PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート