3

Web ページから画像ファイルをアップロードし、さまざまな Photoshop フィルターとサードパーティの商用フィルターで変換された画像を出力する商用プロジェクトの概念実証をまとめようとしています。これは概念実証であり、内部 IP でのみ利用できるため、セキュリティについては特に心配していません。この時点で、理論的に可能であることを示したいと思います。

問題は、完全なパスを使用して CMD プロンプトから実行されるように、Photoshop ドロップレットを完全に機能させることができることです...しかし、まったく同じコマンドラインをPHPのexec呼び出しに使用すると (echo を使用したデバッグで検証されるように)、ドロップレット exe は実行されますが (Sysinternals ProcessExplorer によって検証済み)、Photoshop は起動に失敗します。または、Photoshop が既に実行されている場合 (管理者としても)、ドロップレット内のアクションの実行に失敗します。

私はもう試した:

  • テスト PC での UAC コントロールの無効化 (Win7)
  • 関連するすべてのプロセスをすべてのユーザーに対して「管理者として実行」に設定する (mydroplet.exe、photoshop.exe、httpd.exe、php.exe)
  • httpd.exe の権限の昇格
  • php.ini に「セーフモード」がない
  • PHP exec から呼び出される BAT ファイルにドロップレットの実行をラップする

注:私が達成しようとしている特定の画像操作は、ImageMagik または類似のものには複雑すぎます(これについては提案しないでください)。サードパーティのフィルターは Windows でのみ使用できます。私のテストでは、このサードパーティのフィルターは使用していません。上記を最初に単純な組み込みの Photoshop フィルターで動作させようとしています。PS CS3を使用しています。

一言で言えば... PHPからPhotoshopドロップレットを実行する方法(Win7上)?

[全体で絶対パスを使用しています (DOS 互換)、および exec に渡された文字列を CMD プロンプトで手動で実行すると、期待どおりに動作するため、パーミッションの問題を強く疑っています (ドロップレットを外部で動作させるのに同様の問題がありました)。http://helpx.adobe.com/photoshop/kb/troubleshoot-photoshop-droplets-windows.htmlの指示に従って解決した PHP )。サーバーのセキュリティは (この段階では) 問題にならないので、理想的には、すべてにすべてのアクセス許可を設定したいと思います(昔の簡単な win95 の時代のように! ;-) -- これは内部 LAN 上の単なるテスト ボックスです。 !!! プレゼンテーションの後、オフにすることができます。少なくとも Linux では chmod -R 777 /* -- そして後で HDD を再フォーマット --- Windows7 でこれに相当するものは何ですか? (つまり、すべての人にすべてを与える?)]

4

1 に答える 1

2

Apache サービスの [デスクトップとの対話をサービスに許可する] チェックボックス以外はすべて変更したと思います。

于 2012-12-10T16:31:17.537 に答える