• ベストアンサー

PrintScreenキーを無効にしたい

PrintScreenキーを無効にしたくて、いろいろネット検索して 調べたのですが、うまく動作する方法が見つかりません。 ちなみに、シェアウェアソフトを使用する、という方法は使えません。 よろしくお願いいたします。 ちなみに、下記が試してみて、ダメだったスクリプトです。 *********************************** <script language="JavaScript1.2"> Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp If e.KeyCode = Keys.PrintScreen Then MessageBox.Show("PrintScreen_KeyUp") Clipboard.SetDataObject("PrintScreenは無効です", True) End If End Sub </script> ************************************************ <script type=”text/javascript”> <!-- setInterval(’ClearClipBord()’,100); function ClearClipBord() { window.clipboardData.setData(’Text’,’’); } //--> </script> *********************************************

質問者が選んだベストアンサー

  • ベストアンサー
  • NYOI
  • ベストアンサー率58% (56/96)
回答No.5

setInterval('ClearClipBord()' ,100); function ClearClipBord() { window.clipboardData.setData('Text',''); } No.2で回答したものです。 自分の開発したシステムでは、↑これとまったく同じ記述を用いている部分があり、これでコピーとプリントスクリーンはとりあえず阻止できています。

hirocchitokyo
質問者

お礼

同じプログラムで、プリントスクリーンを阻止できているんですね・・・。 私の別のプログラム部分に、問題があるのかもしれません・・・。 実際、前は <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> のような一文を先頭につけていたのをはずしたら、使用できるようになったプログラムがあったのです。 なにか余計なものがまだついているのかもしれないです。 ちょっと、何か削ってみることにします。ありがとうございました!

hirocchitokyo
質問者

補足

「 <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">」 なども試しに削除してみましたが、やはり、プリントスクリーンが有効になってしまいました・・・。 なんでなのか、お手上げ状態です・・・。 上記プログラム以外に、この件で、他でプログラム指定してる部分などありますでしょうか?

その他の回答 (4)

noname#19197
noname#19197
回答No.4

IE限定ですが・・・ ご存知かもしれませんが、完全に抑止することはできません。 ローカルのキャッシュファイルを見ればどんなことも無意味ですからね・・・。 でも、苦し紛れの一手としては有効でしょう。

参考URL:
http://d.hatena.ne.jp/AWAWA/20060606/1149598200
hirocchitokyo
質問者

お礼

今ちょうど、すぐに試せる環境じゃないのですが、明日試してみます! ありがとうございます! ちなみに、IE限定であるのは問題ないです。 前画面で、「IE以外は先に進めない。強制排除」という、嫌がらせのような面倒なプログラムを組んでますので^^;

hirocchitokyo
質問者

補足

リンク先をしっかり見てみたのですが、 「<a href="javascript:clrCB()">Clear clipboard data</a>」 となっている、ということは、「Clear clipboard data」とクリックしないと、データが消えないということでしょうか。 何もしなくて、プリントスクリーンができないようにしたいのですが・・・、物分りが悪くて申し訳ないです。 よろしくお願いいたします。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

難しいですね アプリケーションがアクティブなら別ですが 非アクティブになってしまえば、ブラウザから windowsを制御することはできませんので

hirocchitokyo
質問者

お礼

非アクティブで制御できなくなってしまっても構いません。 完全に防ぐのは無理だとはわかっていますので・・・。 でも、できるだけ、抑制したいので、方法があるのでしたら、よろしくお願いいたします。

  • NYOI
  • ベストアンサー率58% (56/96)
回答No.2

setInterval('ClearClipBord()' ,100); function ClearClipBord() { window.clipboardData.setData('Text',''); } コチラの方はどこか問題があったのでしょうか? あくまでプリントスクリーンを阻止したいだけで、テキストのコピー等は可能にしておきたい、ということでしょうか。

hirocchitokyo
質問者

お礼

いえ、テキストのコピーもさせたくないので、それはそれで、別で、BODYタグに、プログラムしています。 「右クリック禁止」や、「ツールバーを表示させない」など、いろいろやったのですが、プリントスクリーンは効いてしまったので、それを阻止したいのです・・・。

noname#19197
noname#19197
回答No.1

PrintScreenを抑止するのはムリみたいですね。 ちなみに、上記のスクリプトはVBScriptですね。

参考URL:
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?forum=28&topic=22833
hirocchitokyo
質問者

お礼

無理ですか・・・。 確かに、いろいろなサイトで、「無理」「意味がない」とは書かれていました・・・。 上記はVBScriptでしたか・・・。 JavaScriptとの差がわかっていませんでした。 失礼しました。

関連するQ&A