Chrome と Irvine を連携させるExtensionを作ってみた。
無さそうなんで作ってみた。かなり面倒だった。
原因は不明ですが、環境によって動作しない場合があるようです。
現状では私(id:deraw)がメンテするのが難しく、
[twitter:@b2ox]様がちゃんとコンテキストメニューが使用できる改良版を作成されていますのでそちらをおすすめします。
注意
- 実験的に作成した拡張です。使用は自己責任でお願いします。
- まずオプションから、Irvineをインストールしたフォルダ内にあるircom.exeのフルパスを設定してください。
- インストール後はChromeの再起動をしてください。(または現在開いているページの再読込を行ってください。)
- Chromeの制限で、右クリック(コンテキストメニュー)からは呼び出せません。
- 「すべてのURLを送る」「すべてのURLを送る(IMGを含む)」「リンクのインポート」「選択範囲のダウンロード」しか出来ません。
- Windows 7 x64上でしか動作確認してません。不具合があればご報告頂けるとありがたいです。(OSのバージョンやurl、可能であればIEやFirefoxで再現するかどうか)
- b2ox様の協力により、リンクや画像の上でalt+左クリックするとマウスカーソル位置のURLをirvineに送れるようになりました。
ただし、同時にchromeの「名前を付けて保存」ダイアログが表示されてしまうので手動で閉じてください。
更新履歴
0.2.1(2010/7/28)
- version 0.2の修正によって、Irvineへ送るURLが抜け落ちる問題が発生したので修正(ircom.exeの終了待ちをするよう変えた)
0.2(2010/7/20)
- b2ox様の修正を取り込みました。
- Windows XPで動作しなかった問題を暫定修正(ircom.exeに渡す引数を2000文字までに制限した)
0.1
- 初版
仕組みなど
- 基本的にFirefoxのIrvine用コンテキストメニュー拡張と同様に、ircomを経由して連携してます。
- 現在のChromeでは外部プロセスを起動できないので、NPAPIを使用して無理矢理起動してます。そのため、セキュリティ問題が発生する可能性があります。
- NPAPIプラグインはnixysaを使いました。これが無いと無理。ソースも一応置いておきます。
- Chrome拡張部分はGPLです。(Irvine用コンテキストメニュー拡張に倣いました)
参考にしたページなど
http://ido.nu/kuma/2009/11/22/chrome-npapi-nixysa/
http://ido.nu/kuma/2009/12/10/create-html-link-with-createlink-for-chrome-like-makelink/
http://dev.screw-axis.com/doc/chrome_extensions/ref/api/tabs/executeScript/
http://code.google.com/chrome/extensions/browserAction.html
http://blog.makotokw.com/memo/chrome-extension/#k7a8926c
http://gihyo.jp/dev/serial/01/chrome-extensions
http://groups.google.co.jp/group/chromium-extensions-japan
http://d.hatena.ne.jp/Constellation/20100311/1268272374
"()" のない関数名とコードの生成
"()" のない関数名とコードの生成
http://msdn.microsoft.com/ja-jp/library/094z0768%28VS.80%29.aspx
#include <stdio.h> void funcn(); int main() { funcn; /* missing function call operator; call will fail. Use funcn() */ } void funcn() { printf("\nHello World\n"); }
malloc/freeでSIGSEGVが発生する。
以前あったことをメモっておく。
Solaris SPARCでCプログラミングをしてたとき、malloc関数(free関数)でセグメント違反が発生することがあった。
スタックトレースは下のような感じで。(アドレスは適当)
#0 0xfed4247c in realfree() from /usr/lib/libc.so.1
#1 0xfed42d88 in cleanfree() from /usr/lib/libc.so.1
#2 0xfed41ebc in _malloc_unlocked() /usr/lib/libc.so.1
#3 0xfed41db0 in malloc() from usr/lib/libc.so.1
#4 0x131e0 in main(argc=1,argv=0xxxxxxxx)
最初は、「ライブラリ関数内でバグっているんじゃないか」と思ったけど、調べるとどうやら違うみたい。
webで調べても濁した記述しか無くて、手元のDEBUG HACKSをみたらジャストな事例があった。

Debug Hacks -デバッグを極めるテクニック&ツール
- 作者: 吉岡弘隆,大和一洋,大岩尚宏,安部東洋,吉田俊輔
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/04/27
- メディア: 単行本(ソフトカバー)
- 購入: 12人 クリック: 419回
- この商品を含むブログ (74件) を見る
で何が悪かったかというと、自分のソースがバグってて、(セグメント違反になる前のどこかで)mallocした領域に対してバッファアンダーフローしてた。
どうやらmallocした領域のちょっと前に、ライブラリ用のデータを書き込んでいて、そこが破壊されるとそれ以降のmalloc/freeがおかしくなるようだ。
詳しくは pacsec.jp/psj06archive.htmlなどを参照。
それにしても、バッファアンダーフローした瞬間にはわからないから厄介だった。
pixiv plusをマンガモードに対応させる
pixiv plusが9/20時点でマンガモードに未対応なので勝手にいじってみた。
いじったスクリプトを公開する予定はないです。
101c101,102< else if( String(event.target.getAttribute("src")).indexOf(illustid)>=0 && event.button==0 ){
- -
> else if( String(event.target.getAttribute("src")).indexOf(illustid)>=0 && event.button==0 && (event.target.parentNode.href.indexOf("mode=manga") < 0)){
あと拙作のpixixxメンテしました。変更点は覚えてないので、現状で問題ない方は更新しない方がよろしいかと。
こくまろみるくプレオープンの感想をば
概ね先行レポ通りっした
- 入り口迷った
- キャバっぽい内装
- 料理はプレオープンと言うことで少なかった
- こしゅちゅーむは目のやり場に困るね、テーブル拭いているときとか
- モルツおいしゅうございました
- 際立ったドリンクメニューはなし
- 料理は頑張ってる、既存アキバ系居酒屋よりも
- 本オープン時に料理がいくらになるか気になる
- さらしるさんに第1種接近遭遇
[Windows][プログラミング]COM日本語記事まとめ
Windowsプログラミングで重要な割に日本語での情報がすくない、COMことComponent Object Modelのまとめ。主に忘備用。
MSDNライブラリのブラウズしにくさは異常。
ウェブサイト
- 公式 http://www.microsoft.com/japan/com/ ほとんど情報がない。
- Wikipedia 網羅的かつ簡潔
- link集/ライブラリ系 - NomisoBraaan Wiki
- COM総合研究所
- やじやじ's 温COM知新
- Allergy Design Office > COMプログラミング
- IIS/Windows サーバー徹底解説 - COM+の話題 COM+だけじゃなく、COMにも触れている
MSDN
- COM プログラミングの基本 (上)
- COM プログラミングの基本 (中)
- COM プログラミングの基本 (下)
- COM を Visual Basic で作成しよう! - Part 1 - VB6の話
- COM を Visual Basic で作成しよう! - Part 2 -
- COM を Visual Basic で作成しよう! - Part 3 -
- COM を Visual Basic で作成しよう! - Part 4 - (最終回)
- COM/COM+ セキュリティ (準備編その1)
- COM/COM+ セキュリティ (準備編その2)
- COM/COM+ セキュリティ ( その1 )
- COM/COM+ セキュリティ ( その2 )
- Dr. GUI と COM イベント:第 1 部
- Dr. GUI と COM イベント:第 2 部
- Dr. GUI と COM オートメーション、第 1 部
- Dr. GUI と COM オートメーション、第 2 部:COM の素晴らしきデータ型
- Dr.GUI と COM オートメーション、第 3 部:続 COM のすばらしきデータ型
- Dr. GUI と ATL
- Dr. GUI、コンポーネント、COM、および ATL を使う
MSDN Magazine
MSDN Magazine 日本語版 April 2000 No.1 創刊号
MSDN Magazine 日本語版 January 2001 No.10
MSDN マガジン 2005 年 1 月
MSDN マガジン 2005 年 4 月
- ClickOnce と Reg-Free COM によるアプリケーションの配置の簡略化 Windows XP から使用可能なレジストリ登録不要なCOM
MSDN マガジン 2005 年 6 月
MSDN マガジン 2007 January
MSDN マガジン 2007 September
MSDNライブラリ内
Active Template Libraryを使った COM プロパティ ページの作成
VS2005: ms-help://MS.MSDNQTR.v80.ja/MS.MSDN.v80/MS.TECHART.v10.ja/jpdncomg/htm/com.htm
コンポーネント オブジェクト モデル:技術概要
VS2005: ms-help://MS.MSDNQTR.v80.ja/MS.MSDN.v80/MS.TECHART.v10.ja/jpdncomg/htm/comppr.htm
プログラミング モデル設計の基本
VS2005: ms-help://MS.MSDNQTR.v80.ja/MS.MSDN.v80/MS.TECHART.v10.ja/jpdncomg/htm/basicpmd.htm
.Net相互運用
その他
書籍
Inside COM―Microsoft’s Component Object Model (Microsoft programming series)
- 作者: Dale Rogerson,バウングローバル株式会社
- 出版社/メーカー: アスキー
- 発売日: 1997/10
- メディア: 単行本
- クリック: 16回
- この商品を含むブログ (6件) を見る
Essential COM (ASCII Addison Wesley Programming Series)
- 作者: ドンボックス,Don Box,長尾高弘
- 出版社/メーカー: アスキー
- 発売日: 1999/03
- メディア: 単行本
- クリック: 13回
- この商品を含むブログ (10件) を見る
Effective COM (ASCII Addison Wesley Programming Series)
- 作者: ドンボックス,ティムイワルド,キースブラウン,クリスセルズ,Don Box,Tim Ewald,Keith Brown,Chris Sells,長尾高弘,ロングテール
- 出版社/メーカー: アスキー
- 発売日: 1999/07
- メディア: 単行本
- クリック: 5回
- この商品を含むブログ (8件) を見る
Visual C++プログラマのためのCOM入門―はじめるWindowsシステムプログラミング (DeV selection)
- 作者: 豊田孝
- 出版社/メーカー: 翔泳社
- 発売日: 1999/06
- メディア: 単行本
- 購入: 2人 クリック: 23回
- この商品を含むブログ (9件) を見る
- 作者: ガイエドン,ヘンリーエドン,Guy Eddon,Henry Eddon,豊田孝
- 出版社/メーカー: 日経BP社
- 発売日: 2000/02/25
- メディア: 単行本
- 購入: 1人 クリック: 13回
- この商品を含むブログ (4件) を見る
ATL COMプログラミング―ATLとVisualC++で作る高性能COMコンポーネント (Programmer’s SELECTION)
- 作者: リチャードグリムス,ジョージライリー,アレックスストックトン,ジュリアンテンプルマン,Richard Grimes,George Reilly,Alex Stockton,Julian Templeman,田中正造
- 出版社/メーカー: 翔泳社
- 発売日: 1999/01/01
- メディア: 単行本
- 購入: 2人 クリック: 22回
- この商品を含むブログ (16件) を見る
COM/DCOM実践プログラミング (ASCII Windows Programming Series)
- 作者: クリスコリー,ジョンカドマン,ビンセントメイフィールド,ランディモリン,Chris Corry,John Cadman,Vincent Mayfield,Randy Morin,日本ドキュメンテックス
- 出版社/メーカー: アスキー
- 発売日: 1999/09
- メディア: 単行本
- クリック: 8回
- この商品を含むブログ (3件) を見る
- 作者: 瀬尾佳隆
- 出版社/メーカー: オーム社
- 発売日: 1999/06
- メディア: 単行本
- クリック: 2回
- この商品を含むブログ (1件) を見る
COM IDL&インターフェイスデザイン (Programmer’s SELECTION)
- 作者: アルメジャー,萩原正義,Al Major,夏目大
- 出版社/メーカー: 翔泳社
- 発売日: 2000/07
- メディア: 単行本
- 購入: 1人 クリック: 12回
- この商品を含むブログ (2件) を見る
他にも情報がありましたらご連絡頂けるとありがたいです。
pixiv用のGreasemonkeyスクリプト3 - pixiv mini browser
別のを作った。機能はサムネのリンク先をiframeに表示するだけ。
説明
- イラストサムネイルが表示されているページ(お気に入り新着、タグ検索など)で、画面遷移せずに各イラストページを参照できるようになります。
- Autopagerizeとも併用できるはず
- サムネが表示されている時に画面右下に「小窓を表示」というボタンが出てくるので、押すと小窓(iframe)が表示されます。
- 小窓の「x」で非表示に、「>」で次のイラストに、「<」で前のイラストに、「<<」で表示しているサムネの一番最初に、「>>」で表示しているサムネの一番最後に
- $X関数と$関数以外は煮るなり焼くなりお好きなように。
TODO
小窓のリサイズ
(2009-04-07追記)
小窓を表示したら100ピクセルスクロールするようにした。(wrappedJSObject.scrollIntoViewでやろうとしても出来なかった・・・・)
(2009-04-10追記)
- リソースリークしていたのを修正
- 名前を変えてみた
- 表示しているサムネに合わせてスクロールするようにした。
(2009-04-14追記)
表示済みイラストをスキップするオプションを追加。
もう落ち着いたんでいじらない予定。