たむらです。

WATANABE Hirofumi <eban / os.rim.or.jp> wrote:

> PEファイル的にはsubsystemが2(GUI)か3(CUI)の違いでしかないので、
> その部分にパッチをあてるという方法もあります。
> 
> % echo 'main(){}' >main.c
> % i686-pc-cygwin-gcc -mwindows -e _mainCRTStartup -o gui main.c   
> % i686-pc-cygwin-gcc -o cui main.c 
> % i686-pc-cygwin-strip gui cui
> % diff -u0 =(i686-pc-cygwin-objdump -p gui) =(i686-pc-cygwin-objdump -p cui)
> --- /tmp/zshYXEFjF      Fri Feb  1 00:37:03 2002
> +++ /tmp/zshj5LQ0s      Fri Feb  1 00:37:03 2002
> @@ -2 +2 @@
> -gui:     file format pei-i386
> +cui:     file format pei-i386
> @@ -26 +26 @@
> -Subsystem              00000002        (Windows GUI)
> +Subsystem              00000003        (Windows CUI)
> % diff -u0 =(od -tx1 gui) =(od -tx1 cui)
> --- /tmp/zshiNmUNn      Fri Feb  1 00:37:15 2002
> +++ /tmp/zshz6Vhlt      Fri Feb  1 00:37:16 2002
> @@ -14 +14 @@
> -0000320 00 50 00 00 00 04 00 00 00 00 00 00 02 00 00 00
> +0000320 00 50 00 00 00 04 00 00 00 00 00 00 03 00 00 00

なるほど。スタブ部分を一つにして埋め込むときに切りかえる(?)のが良
さげですね。
挑戦してみます。

# [ruby-list:33709] が無駄にならずに済むか ?


日記はじめました。 http://slashdot.jp/journal.pl?op=display&uid=4115
たむら mailto:sgs02516 / nifty.com