練炭ブログ

萌え壁紙、Irvine、DMonkey、Proxomitron などの情報を扱ってます。

Proxomitron: ANTIDOTE Disabler

コメントなし»

使ってないフィルタシリーズ。

今は亡き VINTAGE SOLUTIONS の HTML 保護ソフト「ANTIDOTE for PC HTML Protector」でマウス操作を妨害されたページで、マウス操作を回復させます。

Name = "ANTIDOTE Disabler  (2003-04-24; rentan)"
Active = FALSE
Bounds = "<SCRIPT*</SCRIPT>"
Limit = 4096
Match = "(*eval \( unescape \( $AV(*) \))\1\2"
Replace = "$STOP()"
          "<script type="text/javascript">\n"
          "function documentXwrite (s) {"
          " function rep (s, r) {"
          "  while (s.indexOf (r) != -1)"
          "  s = s.replace (r, "NO" + r.substr (2));"
          "  return s;"
          " }\n"
          " s = rep (s, "oncontextmenu");"
          " s = rep (s, "onselectstart");"
          " s = rep (s, "captureEvents");"
          " s = rep (s, "onmousedown");"
          " s = rep (s, "onmouseup");"
          " s = rep (s, "onkeydown");"
          " s = rep (s, "location=");"
          " s = rep (s, "location ");"
          " s = rep (s, "status=");"
          " s = rep (s, "status ");"
          " s = rep (s, "setTimeout");"
          " s = rep (s, "onbeforeprint");"
          " s = rep (s, "onafterprint");"
          " s = rep (s, "ondragstart");"
          " s = rep (s, "top.location.href=");"
          " s = rep (s, "top.location.href ");"
          " s = rep (s, "clipboardData.clearData");"
          " document.write (s);"
          "}\n"
          "</script>\n"
          "\1.replace ("document\\.write", "documentXwrite")\2"

Proxomitron: Kill mouse/keyboard snatcher tweak

コメントなし»

日本経済新聞の右クリック禁止が防げなかったで、日本経済新聞のために作ったフィルタ。汎用だけど他で役立つことはまずないと思います。

Name = "Kill mouse/keyboard snatcher tweak  (2010-04-07; rentan)"
Active = TRUE
Multi = TRUE
URL = "$TYPE(htm)"
Limit = 4096
Match = "(<body(\s[^]+|)>)\0$STOP()"
Replace = "\0<script type=text/javascript>"
          "document.body.attachEvent ("oncontextmenu", function () { return event.returnValue = true; });"
          "</script>"

<body> にマッチさせるのは避けたいけど、最速で attachEvent する必要がある(最後に event.returnValue = true を実行させる)のと、<body> が出てくるまで document.body が存在しないという理由で仕方なく。

Proxomitron: Kill mouse/keyboard snatcher type-Ex

コメントなし»

日本経済新聞の右クリック禁止が防げなかったで触れた、今まで使っていた右クリック禁止を無効化するフィルタ。

この機会にちょっと手直ししてます。
ほとんどの右クリック禁止を無効化できるはずです。

Name = "Kill mouse/keyboard snatcher type-Ex  (2010-04-07; rentan)"
Active = FALSE
URL = "$TYPE(htm)"
Limit = 4096
Match = "(^(^<[^%1b>]+>)|"
        "</+(!--(^\[|[^<>]+<)|\?xml|!doctype|html|head|title|meta|link|base|((^</+title)?)+</title>)"
        "|"
        "(</+[^<>"']+>[^<>"']+)+{1,*}"[^<>"']+>"
        ")$STOP()"
Replace = "<script type="text/javascript">\n"
          "(function () {\n"
          "var f = function () { return true; };\n"
          "var e = ["contextmenu", "selectstart", "dragstart", "mousedown", "mouseup", "mouseclick", "dblclick", "keydown", "keypress"];\n"
          "for (var k in e) { document.attachEvent ("on" + e [k], f); }\n"
          "}) ();\n"
          "</script>\n"

日本経済新聞の右クリック禁止が防げなかった

コメントなし»

日本経済新聞

いまどき右クリック禁止するなんてテラワロスw
しかし長年使っていた、右クリック禁止を無効化する Proxomitron 用自作フィルタが効かなくてショック。

document.body.oncontextmenu で returnValue = false と cancelBubble = true を(jQuery 経由で)セットされていたからだった。これはちと対処が面倒。
思想は古いが、jQuery を使っている点は新しい。

問題のコードは http://cdn.nikkei.co.jp/parts/ds/script/nikkei.min.js にあるけど、圧縮前のファイルが http://cdn.nikkei.co.jp/parts/ds/script/nikkei.js にあったので助かった。_nk.prototype.setNoCopy のところね。

ブラウザで対処した方がスマートだけど、IEコンポーネントのブラウザを使っているので無理。ということでフィルタを作ってみた。