[#34722] cgi.rb の form の挙動 — FUJIOKA Takeyuki <fujioka@...>

藤岡です。

18 messages 2002/04/02

[#34724] 「たのしい Ruby 」 — Shin-ichiro HARA <sinara@...>

原(信)です。

18 messages 2002/04/02
[#34728] Re: 「たのしい Ruby 」 — matz@... (Yukihiro Matsumoto) 2002/04/02

まつもと ゆきひろです

[#34746] Re: 「たのしい Ruby 」 — TAKAHASHI Masayoshi <maki@...> 2002/04/02

高橋征義です。

[#34752] Re: 「たのしい Ruby 」 — Shin-ichiro HARA <sinara@...> 2002/04/03

原(信)です。

[#34842] [ann] Web 家計簿(β版)リリース — 堀川 久 <vzw00011@...>

こんにちは。

18 messages 2002/04/07
[#34869] Re: [ann] Web 家計簿(β版)リリース — Nobuhide Kanagawa <nobuhide@...> 2002/04/11

こんばんわ!

[#34885] creating a scope / anonymous module — Takaaki Tateishi <ttate@...>

立石です.

38 messages 2002/04/13
[#34891] Re: creating a scope / anonymous module — nobu.nakada@... 2002/04/14

なかだです。

[#34892] Re: creating a scope / anonymous module — Takaaki Tateishi <ttate@...> 2002/04/14

At Sun, 14 Apr 2002 18:00:12 +0900,

[#34894] Re: creating a scope / anonymous module — nobu.nakada@... 2002/04/14

なかだです。

[#34896] Re: creating a scope / anonymous module — Takaaki Tateishi <ttate@...> 2002/04/14

At Sun, 14 Apr 2002 21:08:47 +0900,

[#34899] Re: creating a scope / anonymous module — matz@... (Yukihiro Matsumoto) 2002/04/15

まつもと ゆきひろです

[#34901] Re: creating a scope / anonymous module — Takaaki Tateishi <ttate@...> 2002/04/15

At Mon, 15 Apr 2002 09:51:05 +0900,

[#34902] Re: creating a scope / anonymous module — matz@... (Yukihiro Matsumoto) 2002/04/15

まつもと ゆきひろです

[#34903] Re: creating a scope / anonymous module — Takaaki Tateishi <ttate@...> 2002/04/15

At Mon, 15 Apr 2002 13:53:53 +0900,

[#34904] Re: creating a scope / anonymous module — matz@... (Yukihiro Matsumoto) 2002/04/15

まつもと ゆきひろです

[#34910] Re: creating a scope / anonymous module — Takaaki Tateishi <ttate@...> 2002/04/15

At Mon, 15 Apr 2002 15:07:57 +0900,

[#34958] windows 版 ruby でシステムコマンドが動かない — "jazzski _comp" <jazzski_comp@...>

はじめてrubyを使うのですが、windows版(cygwin版1.6.1)で下記のように

12 messages 2002/04/23

[ruby-list:34824] Re: win32api getdibits (long)

From: "Norman Makoto Su" <normsu@...>
Date: 2002-04-05 06:01:52 UTC
List: ruby-list #34824
ノーマンです。お返事、有難うございました。

> これだとlpvpxldataはStringではなくてIntegerになると思います。も
そうですね。実はintegerになったら、GlobalLockはGlobalAllocと同じ値を戻します。す
みません、それは間違えでした。

> しGetDIBits()がGlobalAlloc()を使わなくてもよいなら、こうすれば
> できそうな気がします。
>
>   lpvpxldata  = "\0" * (screenWidth * screenHeight * 3)

それはいいアイデアだと思いますが、以上のようにしてみて、GetDIBitsの機能を呼んで
から、lpvpxldataは変わりません(まだ、全ては0.chr)。気を付いたのがGetDIBitsの戻り
値は0です。GetDIBitsが失敗したという意味です。もしかしたら、bmInfoは間違えたか
なぁ:

Win32のAPIを読んだら,

typedef struct tagBITMAPINFOHEADER{
   DWORD  biSize;             0:4
   LONG   biWidth;            4:4
   LONG   biHeight;           8:4
   WORD   biPlanes;          12:2
   WORD   biBitCount;        14:2
   DWORD  biCompression;     16:4
   DWORD  biSizeImage;       20:4
   LONG   biXPelsPerMeter;   24:4
   LONG   biYPelsPerMeter;   28:4
   DWORD  biClrUsed;         32:4
   DWORD  biClrImportant;    36:4 = 40 bytes
} BITMAPINFOHEADER, *PBITMAPINFOHEADER

そこで、Rubyで
bmInfo = [40, screenWidth, screenHeight, 1, 24, 0, 0, 0, 0, 0,
          0].pack('LLLIILLLLLL')
は正しいと思いますか?

また、lpvpxldataはIntegerにしても、MoveMemory等でGlobalAllocに取れたメモリにある
データを読み込むことができるのでしょうか?例えば、

require 'Win32API'

GlobalAlloc = Win32API.new('kernel32', 'GlobalAlloc', ['L', 'L'], 'L')
MoveMemory = Win32API.new('kernel32', 'RtlMoveMemory', ['P', 'I', 'I'], 'V')
CopyMemory = Win32API.new('kernel32', 'RtlMoveMemory', ['I', 'P', 'I'], 'V')

str = ["hello world"].pack('P')
len = str.length
hpxldata = GlobalAlloc.call(0, len)

CopyMemory.call(hpxldata, str, len)
test = 0.chr * len
MoveMemory.call(test, hpxldata, len)
p test.unpack('p156')

でも、私のコードでGlobalAllocを使っても、全ては0.chrのままです。ああ、どうすれば
いいのか分かりません。

--
ノーマン

In This Thread

Prev Next