*****************************************************************
***                   HexSel AkelPad plugin v7.2              ***
*****************************************************************

2006-2018 Shengalts Aleksander aka Instructor (Shengalts@mail.ru)


***  ***

תıΪ 16/10/8 룬֮Ȼ


***  ***

HexSel::Main
Ի


*** ⲿ ***

Call("HexSel::Main", 1, FLAGS, "PREFIX", "SUFFIX", "INPUT", INPUTLEN, INPUTCODEPAGE, **OUTPUT, *OUTPUTLEN)
  :
    1
      תѡָı
    FLAGS (֮):
       1  ıתΪ 16 롣
       2  16 תΪı
       4  ֽת (Ansi)
       8  ˫ֽת (Unicode)
      16  ѡת
     256  ʮת
     512  ˽ת
     4096  תڡ
     Ĭֵ: 8+16=24

    "PREFIX"
      ڷŴ֮ǰִĬʹõǰá
    "SUFFIX"
      ڷŴִ֮Ĭʹõǰá
    "INPUT"
      Ҫתı
    INPUTLEN
      ı (ĬֵΪ -1)ֵΪ -1ıַ NULL ʱֹ
    INPUTCODEPAGE (for Win9x/Me)
      ҪתıĴҳĬʹ ANSI ϵͳҳ
    **OUTPUT
      ָָһתĻ档ִΪ Unicode
    *OUTPUTLEN
      ָָһתַı
  ע
    δָ 1  2ʹıתԶ
     Scripts ʹ OUTPUT ֮󣬱ʹ AkelPad.MemFree ͷš
  תѡ (1+4+16=21):
    Call("HexSel::Main", 1, 21, "\x", "")
  תıճ༭ (8+16=24):
    Call("HexSel::Main", 1, 24, "\x", "", "MyText")
  ת (ű):
    WScript.Echo(GetHex("MyText", "", ""));

    function GetHex(pInput, pPrefix, pSuffix)
    {
      var pOutput="";
      var lpOutput;
      var lpOutputLen;
      var lpOutputPtr;

      if (pInput)
      {
        if (lpOutput=AkelPad.MemAlloc(_X64?8:4 /*sizeof(wchar_t *)*/))
        {
          AkelPad.Call("HexSel::Main", 1, 9 /*1+8*/, pPrefix, pSuffix, pInput, pInput.length, 0, lpOutput);
          lpOutputPtr=AkelPad.MemRead(lpOutput, 2 /*DT_QWORD*/);
          pOutput=AkelPad.MemRead(lpOutputPtr, 1 /*DT_UNICODE*/);
          AkelPad.MemFree(lpOutputPtr);
          AkelPad.MemFree(lpOutput);
        }
      }
      return pOutput;
    }

Call("HexSel::Main", 2, FLAGS, "PREFIX", "SUFFIX", ANSICODEPAGE, UNICODECODEPAGE, "INPUT", INPUTLEN, INPUTCODEPAGE, **OUTPUT, *OUTPUTLEN)
  :
    2
       1 ͬиĲ: ANSICODEPAGEUNICODECODEPAGE
    ANSICODEPAGE
      ڵֽתĴҳ (Ansi)
      Ϊ -1Զѡҳ
      Ϊ -2ʹõǰá
      Ĭֵ: -2
    UNICODECODEPAGE
      ˫ֽתĴҳ (Unicode)
      Ϊ -2ʹõǰá
      Ĭֵ: -2
