============================================================

                 DMonkey Script Host ver0.3.0

------------------------------------------------------------

DMonkey0.3.0ƎɊĝłB
DynaCall֘AgĂ܂B


dl

Egq
    ȂłBC|[gł̂*.dmŝ݂Ȃ̂ŁA
    *.dms𐄏B

EC|[g
    dmscript.exe ܂́AXNvgƓƂɂ*.dmst
    @Ĉ݃C|[gł܂B

EWo
    print(write),println(writeln)\bhł̏o͂́AsI
    (f)A\[Xt@C.log Ƃt@CŃXN
    vgƓꏊɕۑ܂B

  ̃t@C݂ꍇ͖ⓚpŏ㏑̂
    ӂĂB


DMonkey0.3.0̕ύX_

  E/*...**/ƃRgIȂ̂CB
  EDynaCallœo^֐'s'p[^nullw肵
    NULL(0)n悤ɂB
  EDynaCallIuWFNgsendMessage()\bhǉB
  EDynaCallIuWFNgpostMessage()\bhǉB
  EStructIuWFNgǉB
  EStringBufferIuWFNg̍쐬gB
  EStructIuWFNǧ^'i','w'ǉB
  ENumberIuWFNg̔r̂CB
  ENaN̈ύXB
  EGlobal.msgBox()̈gB
  ȆB


ύX_̏ڍ

  DynaCall.register()'i=s'p[^

    's'Ŏw肳ꂽp[^nullnNULL(0)n悤
    ɂ܂BɂA

    d = new DynaCall;
    d.register('user32','FindWindow','i=ss','r=h');

    Ƃo^̏ꍇA

    h = d.FindWindow('Notepad',null);

    Ń^Cg𖳎ăNX'Notepad'̃EBhẼn
    h擾ł܂B


  DynaCall.sendMessage(hWnd,Msg,wParam,lParam)
    DynaCall.postMessage(hWnd,Msg,wParam,lParam)

    register()\bhœo^Ă̂łAwParam,lPara
    mMsgɂ'l'A's'肷̂Œǉ܂
    B
    wParam,lParam܂͕IuWFNgƂ
    ͎IɃ|C^n悤ɂȂĂ܂('s'wƓ)B
    ȊÔƂ͐ln܂('l'wƓ)B


  StringBufferIuWFNg̍쐬

    new StringBuffer() ... 
      ŏ܂B(0.3.0Ɠ)

    new StringBuffer(l[,l]) ... 
      l̃obt@TCYmۂAl(0-255)Ŗ߂܂B
      (ȗ 0 Ŗ߂܂)

    ()
      s = new StringBuffer(5,'a');
      alert(s); //aaaaa


  Global.msgBox(text[,flag[,caption]])

    3̕񂪃LvVɂȂ܂B


  StructIuWFNg
    \̃IuWFNgBDynaCallō\̂gꍇɎgp
    B

    new Struct('o:^'[,'o:^',...])

      oƂ̌^ : (R)ŋ؂Ŏw肵
      ܂B̏Ԃ̂܂܍\̂̕тɂȂ̂ŁA
      ߊe\̂̍\mĂKv܂B
      DynaCall̊֐ɓnꍇAStructIuWFNgn
      ɂ's'w肵ĂȂ΂Ȃ܂B

      o
        Rɂč\܂Bo͂̂܂StructIu
        WFNg̃o(vpeB)ƂȂ܂B

      ^ ()̓oCg
        c: char(1)
        t: short(2)
        l: long(4)
        i: int64(8)
        p: pointer(4)
        h: HWND(4)
        u: unsigned int(4)
        b: bool(4)
        s: ܂StructIuWFNg(4)
        w: Ch(4)
        f: float(4)
        d: double(8)
        l: zchar[](l)

    \bh
    EsizeOf() ... lB\̂̃TCYB

    vpeB
    Elength ... lBoBǂݏopB

    ()
      d = new DynaCall;
      //\̂np[^ɂ's'w聫܂
      d.register('user32','GetCursorPos','i=s','r=b');
      //POINT\̂쐬
      point = new Struct('X:l','Y:l');
      //Ăяo
      d.GetCursorPos(point);
      alert(['}EXJ[\̈ʒu',
             'X = ' + point.X,
             'Y = ' + point.Y,
             'ł'].join("\n"));

------------------------------------------------------------
2003/03/31 shobohn.

Project DMonkey:
http://sourceforge.jp/projects/dmonkey/
