加载中…
个人资料
王集鹄
王集鹄
  • 博客等级:
  • 博客积分:0
  • 博客访问:738
  • 关注人气:22
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
博文
标签:

richedit

rtf

跨进程

其他进程

获取

it

分类: 代码集锦

  拿到这个问题,我习惯性地会从VCL内核开始分析。

  找到TRichEdit声明的单元,分析TRichEdit保存为RTF流的代码。

  (分析VCL内核代码方便了解Windows标准API的封装和使用)

  打开声明TRichEdit的ComCtrls.pas单元。

  搜索'TRichEditStrings'

 (保存流使用TRichEdit.Lines.SaveToStream方法,TRichEditStrings为TRichEdit.Line的类型)

TRichEditStrings = class(TStrings)
  private
    RichEdit: TCustomRichEdit;
    FPlainText: Boolean;
    FConverter: TConversion;
    procedure EnableChange(const Value: Boolean);
  protected
    function Get(Index: Integer): string; override;
    function GetCount: Integer; override;
    procedure Put(Index: Integer; const S: string); override;
    procedure SetUpdateState(Updating: Boolean); override;
&nbs

标签:

IT/科技

桌面

图标

位置

分类: 代码集锦

using System.Runtime.InteropServices;

 

public const uint LVM_FIRST = 0x1000;

public const uint LVM_GETITEMCOUNT = LVM_FIRST + 4;

public const uint LVM_GETITEMW = LVM_FIRST + 75;

public const uint LVM_GETITEMPOSITION = LVM_FIRST + 16;

 

[DllImport('user32.DLL')]

public static extern int SendMessage(IntPtr hWnd, uint Msg, int wParam, int lParam);

[DllImport('user32.DLL')]

public static extern IntPtr FindWindow(string lpszClass, string lpszWindow);

[DllImport('user32.DLL')]

public static extern IntPtr FindWindowEx(IntPtr hwndParent,

    IntPtr hwndChildAfter, string

using Microsoft.CSharp;

using System.CodeDom.Compiler;

 

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有