2012-01-07 8 views
3

イメージファイルでバットファイルまたはそのコマンドを非表示にしたいので、イメージを開くときにbatファイルのコマンドが実行されます。イメージが表示されたときにbatファイルを実行する

+4

これは悪意のあるわけではありません...どのようにですか? – Qix

+1

私は友人と私がお互いにジョークをするのが好きなので、私はコマンドプロンプトに面白いメッセージを表示する.batファイルを実行したいので、私はここで同じことを探しました。悪意のあるものではありません。 – IRGeekSauce

答えて

6

Windowsプラットフォーム(「バッチ」ファイルの場合)について具体的に言えば、それはできません。

バッチファイルは解析されず、コンパイルされないため、バッチファイルのイメージファイルはイメージファイルとして読み込まれます。

私は実際には物事よりもはっきりとそれを合計することはできませんのように動作しません。

しかし、あなたは倫理的に事をやっていると仮定すると、あなた再度関連付ける、たとえば、.jpgの拡張子は、コマンドプロンプトで開くと.JPGでテキストファイルにあなたのバッチスクリプトを置くことにすることができます拡張。

ちょうど最後の注意:このような質問は、よくこのようなことを良い意図で達成しようとすることはほとんどないので、StackOverflowメンバーによってよく見られないことがよくあります。私はあなたに火をつける最初の人にはならないが、間違いなく最後の人にはならない。

+1

私は誰かに害を及ぼす意図がありません。画像を見るときに「Birthday wish」をポップアップしたい –

4

1つのファイルに、相互に独立していて互いに干渉しない2つの異なるデータストリームを含むことができる多くの方法があります。これのOne commonly cited exampleは、.jpgファイルに.zipファイルを追加する方法と、それを開くアプリケーションの種類に応じて、両方のタイプのファイルとして結合ファイル機能を使用する方法です。このトリックは、jpegとzipファイルが構造化されている特定の方法を利用しています。これらの種類のファイルはpolyglot programに似ています。

ファイルに関係のない情報を埋め込む別の一般的な方法は、世俗的なオブジェクト内のメッセージの隠蔽であるsteganography、である(画像ファイルなど。)

また、このような場合にも、Alternate Data Streamを使用して検討するかもしれませんバッチファイルはおそらくに画像に埋め込まれません。

どのような手段でバッチファイルを埋め込んだら、ユーザーが設定した画像表示アプリケーションの代わりに、またはそれに加えて、バッチファイルを実行させる方法を見つける必要があります。

平均的なユーザーが.jpgで終わるファイル(たとえば)がcmd.exeウィンドウを開いて未知の命令の実行を開始するとは思わないと考えるのが安全です。ほとんどの状況で、特定のファイルタイプをダブルクリックしたときに実行するプログラムを決定するアプリケーションであるWindowsエクスプローラは、変更することはできますが(Windowsのエクスプローラ)これらの正常なデフォルトをcmd.exeのような非常識なカスタマイズに変更しないでください)。

最も簡単な方法は、独自のハンドラプログラムを作成して画像ファイルタイプのデフォルトハンドラにすることです。私は、すべてのハンドラアプリケーションをPEアプリケーションまたはライブラリファイル(.exe.dll.scrなど)にコンパイルする必要があるので、ここでは別のバッチファイルは機能しないと考えています。カスタムハンドラは埋め込みバッチファイルを取得してcmd.exeで実行するために埋め込みを取り消す必要があります。

しかし、既に独自のコードでデフォルトのハンドラを置き換えてしまった場合は、既にコードを実行しているので埋め込みバッチファイルが問題になります。


@ Di-0xideがこの質問について述べたことをエコーする必要があります。正当なアプリケーションを作成しようとしていて、これが設計計画の一部である場合は、正当なアプリケーションがのようなものでなければならないので、図面ボードに戻る必要があります。

2

誰かが画像内にバッチファイルを埋め込みたいと思う理由は間違いありませんが、 は、画像が開いたときに実行されます。私は仕事を遂行したいと思う少なくとも1つの正当な理由を見ることができます。

家族のコンピュータがあり、2人の子供、妻、自分と共有している場合はどうなりますか? あなたの子供たちが出会いたくないファイル、またはジャーナルエントリがいっぱいのディレクトリがあるとします。 という重要なファイルを含むディレクトリの属性設定を変更する単純なバッチファイルの場合は、きれいです。この方法では、親は彼らの 子供たちが父親のヌード写真につまずくことはないと安心することができます。

IE LOL:誰かがとh.bat(ディレクトリを表示する)(非表示にするには、ディレクトリ)

hide.bat

@echo off 
REM Show the directory containing sensitive info: 
attrib +a +s +h +r C:\path\to\the\directory\to\hide 

REM Hide this batch file(or image containing the batch file): 
attrib +a +s +h +r C:\path\to\the\batch\files\hide.bat 

REM Show a batch file(or image containing the batch file) that will allow for showing the directory: 
attrib -a -s -h -r C:\path\to\the\batch\files\show.bat 

ショーs.bat 2つのシンプルなバッチファイルを書いたとしましょう。

@echo off 
REM Show the directory containing sensitive info: 
attrib -a -s -h -r C:\path\to\the\directory\to\hide 

REM Show the batch file(or image containing the batch file) that will allow user to hide directory: 
attrib -a -s -h -r C:\path\to\the\batch\files\h.bat 

REM Hide this batch file(or image containing the batch file): 
attrib +a +s +h +r C:\path\to\the\batch\files\s.bat 

バット

は、私はそれが良いだけで、各バッチファイルのアイコンを変更するのではなく、show.batとhide.batバッチファイルを実行します有する画像を働くだろうと思います。

おそらく、ディレクトリの属性を変更し、イメージを開いて未使用の拡張にハンドラを関連付けるハンドラプログラムを作成すると動作します。

単なる考えです。

0

これを行う最も簡単な方法は、通常の方法でバッチファイルを作成してから、同じバッチファイルのデスクトップショートカットを作成することです。最後に、ショートカットを右クリックし、アイコンをあなたが望む画像に変更します。すべての変更が行われると、イメージが開かれるたびにバッチファイルが実行されます。

+0

私はこれがウダラが望んでいたかどうかはわかりません。これは、画像ファイルが開いている場合ではなく、デスクトップ上のリンクが開いている場合にのみバッチファイルを実行します。イメージと.lnkファイルを簡単に区別できます。 –

関連する問題