⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rm_wawbiff8.pas

📁 这是一个功能强大
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    fDSF: Word;
  end;

  rb8PROT4REV = packed record
    fRevLock: Word;
  end;

  rb8PROT4REVPASS = packed record
    wRevPass: Word;
  end;

  rb8WINDOW1 = packed record
    xWn: Word;
    yWn: Word;
    dxWn: Word;
    dyWn: Word;
    grbit: Word;
    itabCur: Word;
    itabFirst: Word;
    ctabSel: Word;
    wTabRatio: Word;
  end;

  rb8REFRESHALL = packed record
    fRefreshAll: Word;
  end;

  rb8USESELFS = packed record
    fUsesElfs: Word;
  end;

  rb8PALETTE = packed record
    ccv: Word;
    colors: array[$0..$37] of Cardinal;
  end;

  pb8PALETTE = ^rb8PALETTE;

  rb8BOUNDSHEET = packed record
    lbPlyPos: Cardinal;
    grbit: Word;
    cch: Byte;
    cchgrbit: Byte;
  end;

  pb8BOUNDSHEET = ^rb8BOUNDSHEET;

  rb8WINDOW2 = packed record
    grbit: Word;
    rwTop: Word;
    colLeft: Word;
    icvHdr: Cardinal;
    wScaleSLV: Word;
    wScaleNormal: Word;
    Res1: Cardinal;
  end;

  rb8SELECTION = packed record
    pnn: Byte;
    rwAct: Word;
    colAct: Word;
    irefAct: Word;
    cref: Word;
  end;

  pb8SELECTION = ^rb8SELECTION;

  rb8DBCELL = packed record
    dbRtrw: Cardinal;
  end;

  Tb8DBCELLCellsOffsArray = array[$0..$FF] of Word;

  rb8DBCELLfull = packed record
    dbRtrw: Cardinal;
    cellsOffs: Tb8DBCELLCellsOffsArray;
  end;

  rb8MERGErec = packed record
    top: Word;
    bottom: Word;
    left: Word;
    right: Word;
  end;

  pb8MERGErec = ^rb8MERGErec;

  rb8MERGE = packed record
    cnt: Word;
  end;

  pb8MERGE = ^rb8MERGE;

  rb8LABEL = packed record
    rw: Word;
    col: Word;
    ixfe: Word;
    cch: Word;
    cchgrbit: Byte;
  end;

  pb8LABEL = ^rb8LABEL;

  rb8BLANK = packed record
    rw: Word;
    col: Word;
    ixfe: Word;
  end;

  rb8MULBLANK = packed record
    rw: Word;
    colFirst: Word;
  end;

  pb8MULBLANK = ^rb8MULBLANK;

  rb8SETUP = packed record
    iPaperSize: Word;
    iScale: Word;     //page zoom value, unit: %
    iPageStart: Word;
    iFitWidth: Word;
    iFitHeight: Word;
    grbit: Word;
    iRes: Word;
    iVRes: Word;
    numHdr: Double;    //page headr height, unit: Inch
    numFtr: Double;    //page footer height, unit: Inch
    iCopies: Word;
  end;

  rb8SST = packed record
    cstTotal: Cardinal;
    cstUnique: Cardinal;
  end;

  pb8SST = ^rb8SST;

  rb8EXTSST = packed record
    Dsst: Word;
  end;

  pb8EXTSST = ^rb8EXTSST;

  rb8ISSTINF = packed record
    ib: Cardinal;
    cb: Word;
    res1: Word;
  end;

  pb8ISSTINF = ^rb8ISSTINF;

  rb8LABELSST = packed record
    rw: Word;
    col: Word;
    ixfe: Word;
    isst: Cardinal;
  end;

  rb8FORMULA = packed record
    rw: Word;
    col: Word;
    ixfe: Word;
    value: Double;
    grbit: Word;
    chn: Cardinal;
    cce: Word;
  end;

  pb8FORMULA = ^rb8FORMULA;

  rb8LEFTMARGIN = packed record
    num: Double;    //unit: Inch
  end;

  rb8RIGHTMARGIN = packed record
    num: Double;    //unit: Inch
  end;

  rb8TOPMARGIN = packed record
    num: Double;    //unit: Inch
  end;

  rb8BOTTOMMARGIN = packed record
    num: Double;    //unit: Inch
  end;

  rb8NUMBER = packed record
    rw: Word;
    col: Word;
    ixfe: Word;
    num: Double;
  end;

  pb8NUMBER = ^rb8NUMBER;

  rb8IMDATA = packed record
    cf: Word;
    env: Word;
    lcb: Cardinal;
  end;

  pb8IMDATA = ^rb8IMDATA;

  rb8OBJ = packed record
    cObj: Cardinal;
    OT: Word;
    id: Word;
    grbit: Word;
    colL: Word;
    dxL: Word;
    rwT: Word;
    dyT: Word;
    colR: Word;
    dxR: Word;
    rwB: Word;
    dyB: Word;
    cbMacro: Word;
    Reserved: array[$0..$5] of Byte;
  end;

  pb8OBJ = ^rb8OBJ;

  rb8OBJPICTURE = packed record
    icvBack: Byte;
    icvFore: Byte;
    fls: Byte;
    fAutoFill: Byte;
    icv: Byte;
    lns: Byte;
    lnw: Byte;
    fAutoBorder: Byte;
    frs: Word;
    cf: Word;
    Reserved1: Cardinal;
    cbPictFmla: Word;
    Reserved2: Word;
    grbit: Word;
    Reserved3: Cardinal;
  end;

  pb8OBJPICTURE = ^rb8OBJPICTURE;

  rb8HORIZONTALPAGEBREAKS = packed record
    cbrk: Word;
  end;

  pb8HORIZONTALPAGEBREAKS = ^rb8HORIZONTALPAGEBREAKS;

  rb8HORIZONTALPAGEBREAK = packed record
    row: Word;
    startcol: Word;
    endcol: Word;
  end;

  pb8HORIZONTALPAGEBREAK = ^rb8HORIZONTALPAGEBREAK;

  rb8SUPBOOK = packed record
    Ctab: Word;
    cch: Word;
    grbit: Byte;
    code: Word;
  end;

  pb8SUPBOOK = ^rb8SUPBOOK;

  rb8EXTERNSHEET = packed record
    cXTI: Word;
  end;

  pb8EXTERNSHEET = ^rb8EXTERNSHEET;

  rb8XTI = packed record
    iSUPBOOK: Word;
    itabFirst: Word;
    itabLast: Word;
  end;

  pb8XTI = ^rb8XTI;

  MSODGID = Cardinal;

  MSOSPID = Cardinal;

  rb8FSP = packed record
    spid: Cardinal;
    grfPersistent: Cardinal;
  end;

  pb8FSP = ^rb8FSP;

  rb8FOPTE = packed record
    pid_fBid_fComplex: Word;
    op: Cardinal;
  end;

  pb8FOPTE = ^rb8FOPTE;

  rb8MSOFBH = packed record
    inst_ver: Word;
    fbt: Word;
    cbLength: Cardinal;
  end;

  pb8MSOFBH = ^rb8MSOFBH;

  rb8FBSE = packed record
    btWin32: Byte;
    btMacOs: Byte;
    rgbUid: array[$0..$F] of Byte;
    tag: Word;
    size: Cardinal;
    cRef: Cardinal;
    foDelay: Cardinal;
    usage: Byte;
    cbName: Byte;
    unused2: Byte;
    unused3: Byte;
  end;

  pb8FBSE = ^rb8FBSE;

  rb8FBSEDIB = packed record
    Unknown: array[$0..$7] of Byte;
    rgbUid: array[$0..$F] of Byte;
    Tag: Byte;
  end;

  pb8FBSEDIB = ^rb8FBSEDIB;

  rb8FDGG = packed record
    spidMax: Cardinal;
    cidcl: Cardinal;
    cspSaved: Cardinal;
    cdgSaved: Cardinal;
  end;

  pb8FDGG = ^rb8FDGG;

  rb8FIDCL = packed record
    dgid: Cardinal;
    cspidCur: Cardinal;
  end;

  pb8FIDCL = ^rb8FIDCL;

  rb8FDG = packed record
    csp: Cardinal;
    spidCur: Cardinal;
  end;

  pb8FDG = ^rb8FDG;

  rb8FSPGR = packed record
    rcgBounds: TRect;
  end;

  pb8FSPGR = ^rb8FSPGR;

  rb8FDGGFull = packed record
    Header: rb8MSOFBH;
    FDGG: rb8FDGG;
  end;

  rb8FDGFull = packed record
    Header: rb8MSOFBH;
    FDG: rb8FDG;
  end;

  pb8FDGFull = ^rb8FDGFull;

  rb8FBSEFull = packed record
    Header: rb8MSOFBH;
    FBSE: rb8FBSE;
    FBSEDIB: rb8FBSEDIB;
  end;

  rb8FSPFull = packed record
    Header: rb8MSOFBH;
    FSP: rb8FSP;
  end;

  pb8FSPFull = ^rb8FSPFull;

  rb8FSPGRFull = packed record
    Header: rb8MSOFBH;
    FSPGR: rb8FSPGR;
  end;

  pb8FSPGRFull = ^rb8FSPGRFull;

const
  ptgInt = $1E;
  ptgNum = $1F;
  ptgStr = $17;
  ptgGT = $0D;
  ptgGE = $0C;
  ptgEQ = $0B;
  ptgNE = $0E;
  ptgLE = $0A;
  ptgLT = $09;
  ptgAdd = $03;
  ptgSub = $04;
  ptgMul = $05;
  ptgDiv = $06;
  ptgPower = $07;
  ptgPercent = $14;
  ptgConcat = $08;
  ptgUplus = $12;
  ptgUminus = $13;
  ptgParen = $15;
  ptgMissArg = $16;
  ptgRef = $44;
  ptgArea = $25;
  ptgFuncVar = $42;
  ptgRef3D = $5A;
  ptgArea3D = $3B;

type
  rptgInt = packed record
    w: Word;
  end;

  rptgNum = packed record
    num: Double;
  end;

  rptgStr = packed record
    cch: Byte;
    grbit: Byte;
  end;

  pptgStr = ^rptgStr;

  rptgRef = packed record
    rw: Word;
    grbitCol: Word;
  end;

  pptgRef = ^rptgRef;

  rptgArea = packed record
    rwFirst: Word;
    rwLast: Word;
    grbitColFirst: Word;
    grbitColLast: Word;
  end;

  pptgArea = ^rptgArea;

  rptgFuncVar = packed record
    cargs: Byte;
    iftab: Word;
  end;

  rptgRef3D = packed record
    ixti: Word;
    rw: Word;
    grbitCol: Word;
  end;

  pptgRef3D = ^rptgRef3D;

  rptgArea3D = packed record
    ixti: Word;
    rwFirst: Word;
    rwLast: Word;
    grbitColFirst: Word;
    grbitColLast: Word;
  end;

  pptgArea3D = ^rptgArea3D;

function FormatStrToWideChar(Source: string; Dest: PWideChar): Integer;
function FormatStrToWideChar1(Source: WideString; Dest: PWideChar): Integer;

implementation

function FormatStrToWideChar(Source: string; Dest: PWideChar): Integer;
var
  s2: WideString;
begin
  s2 := Source;
  CopyMemory(Dest, @s2[1], Length(s2) * Sizeof(WideChar));
  Result := Length(s2);
end;

function FormatStrToWideChar1(Source: WideString; Dest: PWideChar): Integer;
var
  s2: WideString;
begin
  s2 := Source;
  CopyMemory(Dest, @s2[1], Length(s2) * Sizeof(WideChar));
  Result := Length(s2);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -