Windows

ITpro  > Windows
Windows

本当に知っている?Windowsの基礎

ITpro

なぜ違うアプリケーション間でデータをコピーできるのか?

Windowsの大きなメリットの1つに,あるアプリケーションのデータを,クリップボードを介して簡単に別のアプリケーションに張り付けられることがある。しかし本来,アプリケーションのデータは,独自仕様のはずだ。なぜデータを共有できるのだろうか。クリップボードは便利な機能だがデータ共有機能のため,セキュリティ上問題を起こす場合があるという。クリップボードが引き起こすセキュリティ問題とはどのようなものだろうか。

 普段,何気なく使っている「カット&ペースト」や「コピー&ペースト」。これはいわゆる「切り取り(または複写)−張り付け」の作業のことで,MS-DOSのワープロ・ソフト時代から搭載されていた歴史ある編集機能である。

 しかし,MS-DOS時代は同じアプリケーションの中か,特定アプリケーション同士といった限られた間の話で,現在のようにいろいろなアプリケーション間で自在にコピーできるわけではなかった。直接コピーできない場合は,テキスト・ファイルなど双方のアプリケーションで扱える形式にいったん保存してから読み込み,必要な部分だけコピーするなど面倒な作業をしていた。

クリップボードの登場でコピー能力が大幅に拡大

 これに対し,Windowsではマルチウインドウで複数のアプリケーションを同時に開きながら,「クリップボード」を介してデータを共有する方法がOS標準で提供されるようになった(図1)。クリップボードを利用したコピー(カット)&ペーストを多くのWindowsアプリケーションがサポートすることで,幅広いアプリケーション間でデータを受け渡しできるのが画期的だった。

図1●なぜ違うアプリケーション同士でコピー&ペーストできるのか?
クリップボードを介してコピー&ペーストすると,本来違う形式で記録されているはずの別のアプリケーションから,データをコピーすることが可能だ。
[画像のクリックで拡大表示]

 コピー元のアプリケーションでコピーしたい要素を選択してコピーすると,データがクリップボードに複写される(切り取りを実行すると選択要素は消去されカットになる)。それから,コピー先のアプリケーションで挿入個所にカーソルを移動させて,張り付けを実行するとコピーまたはカットした要素がクリップボードから挿入される。

 しかし,ここで疑問が生じる。MS-DOSで自由にデータを共有するのが難しかったのは,各アプリケーションのデータに互換性がなかったからだ。この点に関しては,Windowsでも特に変わっていない。では,どうやってクリップボードは,データの互換性を維持しているのだろうか。

 今回は,クリップボードについて,知っていそうで実は知らない,その詳しい仕組みとセキュリティ,ちょっとしたTipsなどを紹介しよう。

 [2008/12/01]
出典:日経Windowsプロ 2005年3月号  pp118-123
(記事は執筆時の情報に基づいており,現在では異なる場合があります)

この記事に対する読者コメント

コメントに関する諸注意 コメント投稿 コメント一覧