社区
Delphi
帖子详情
dbgrideh数据导出的问题
qq_18994603
2017-09-03 02:29:26
有一个程序A delphi6项目编译的exe。 我写了一个dll注入程序 获取了项目a的dbgrideh句柄,句柄转dbgrideh对象obj 然而在获取obj.Datasource属性的时候 崩溃了 提示dll address地址错误。 我自己也写了一个项目B 用注入程序成功获取了B项目对应dbgrideh的数据。 项目A和项目B的区别就是 a不知道ehlib的版本 b和dll注入程序同一个版本的第三方控件。
...全文
166
2
打赏
收藏
dbgrideh数据导出的问题
有一个程序A delphi6项目编译的exe。 我写了一个dll注入程序 获取了项目a的dbgrideh句柄,句柄转dbgrideh对象obj 然而在获取obj.Datasource属性的时候 崩溃了 提示dll address地址错误。 我自己也写了一个项目B 用注入程序成功获取了B项目对应dbgrideh的数据。 项目A和项目B的区别就是 a不知道ehlib的版本 b和dll注入程序同一个版本的第三方控件。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qq_18994603
2017-09-03
打赏
举报
回复
引用 1 楼 lyhoo163的回复:
不同的版本,数据结构不样,地址偏移不一样,造成Add错误。
那么亲问 我应该看哪些书籍或者工具去填补这方面的空缺?
lyhoo163
2017-09-03
打赏
举报
回复
不同的版本,数据结构不样,地址偏移不一样,造成Add错误。
delphi xe10.2下的
db
grid
eh
表格
数据
导出
txt,xls文件
delphi xe10.2下的
db
grid
eh
表格
数据
导出
txt,xls文件
比较快速的将
DB
Grid
Eh
中的
数据
导出
到Excel中
特点:一、不需安装Excel即可
导出
。二、有进度条。三、最多可以
导出
多少条,我没试,我试了5万条没有
问题
,时间也就是只需1-5分钟(我电脑较慢)。四、需安装
eh
lib组件。使用方法(注:别忘了uses
DB
Grid
ToExcel;):procedure TForm1.btn2Click(Sender: TObject);var
DB
Grid
Eh
ToExcel: T
DB
Grid
Eh
ToExcel; ExcelFileName: string;begin
DB
Grid
Eh
ToExcel := T
DB
Grid
Eh
ToExcel.Create(nil); try
DB
Grid
Eh
ToExcel.TitleName := '
导出
测试';
DB
Grid
Eh
ToExcel.BeginDate := '开始日期:2005-07-01';
DB
Grid
Eh
ToExcel.EndDate := '结束日期:2005-07-18';
DB
Grid
Eh
ToExcel.UserName := '系统管理员';
DB
Grid
Eh
ToExcel.
DB
Grid
Eh
:=
DB
Grid
Eh
1;
DB
Grid
Eh
ToExcel.ShowProgress := True; if ExcelFileName = '' then begin ExcelFileName := 'c:\1.xls'; with TSaveDialog.Create(nil) do begin Filter := 'Microsoft Excel xls文件|*.xls'; DefaultExt := 'xls'; if not Execute then Exit else ExcelFileName := FileName; end; end;
DB
Grid
ToExcel.FileName := ExcelFileName;
DB
Grid
Eh
ToExcel.ExportToExcel; finally
DB
Grid
Eh
ToExcel.Free; end;end;
支持多个
DB
Grid
EH
导出
Excel
在他人的
DB
Grid
Eh
导出
到Excel的基础上进行改进,增加功能如下: 1、支持多个
DB
Grid
EH
同时
导出
到Excel的不同Sheet页 2、进度条与
数据
进度保持一致 3、增加了进度百分比显示 //调用方法: procedure TForm1.Button1Click(Sender: TObject); var
Db
Out: T
DB
Grid
Eh
ToExcel; i: integer; begin try
Db
Out := T
DB
Grid
Eh
ToExcel.Create(Self); for i := 0 to 9 do //初始化数组 begin
Db
Out.
DB
Grid
Eh
RecAry[i].Temp
DB
Grid
Eh
:= nil;
Db
Out.
DB
Grid
Eh
RecAry[i].TitleName := '';
Db
Out.
DB
Grid
Eh
RecAry[i].SheetTabName := ''; end; //有多少个
DB
Grid
Eh
的
数据
要
导出
,此处表示两个
Db
Out.
DB
Grid
Eh
RecLength := 2; //统计结果一
Db
Out.
DB
Grid
Eh
RecAry[0].Temp
DB
Grid
Eh
:=
db
gSpotCheckCount;
Db
Out.
DB
Grid
Eh
RecAry[0].TitleName := '统计结果一';
Db
Out.
DB
Grid
Eh
RecAry[0].SheetTabName := '统计结果一'; //统计结果二
Db
Out.
DB
Grid
Eh
RecAry[1].Temp
DB
Grid
Eh
:=
db
gValuationCount;
Db
Out.
DB
Grid
Eh
RecAry[1].TitleName := '统计结果二';
Db
Out.
DB
Grid
Eh
RecAry[1].SheetTabName := '统计结果二';
Db
Out.TitleName := '统计结果';
Db
Out.ShowProgress := True;
Db
Out.ShowOpenExcel := True;
Db
Out.ExportToExcel; finally FreeAndNil(
Db
Out); end; end; 还可以改进的地方,比如: 1、标题栏占用几行,字体,字体颜色,字体大小,背景颜色可以封装提供设置方法; 2、字段标题字体,字体颜色,字体大小; 3、表格样式设置; 就是动态
数据
不会封装到类里面,如果有高人封装得更好一些,请发一份我;
delphi使用
DB
Grid
Eh
数据
集合
导出
.rar
Delphi使用
DB
Grid
Eh
数据
集合
导出
,不用安装EXCEL软件就可以
导出
,功能强大。建议使用,非常好用
应用
DB
grid
EH
自身功能将
数据
导出
为其它格式的代码
在应用
DB
grid
EH
做为显示
数据
控件时,大家可能经常要写一段代码将
数据
导出
来,或是EXCEL或是HTML或是其它格式,在仔细研究
db
grid
eh
代码时发现,它已经写好了这些功能。可以向excel、txt、csv、rtf、html等,很多种格式导
数据
,而且向EXCEL
导出
数据
时并不需要机器安装EXCEL,所以写了一段代码将
db
grid
eh
的这一功能展示给大家,希望能给大家带来方便。 使用方法。1、将frmoupt.pas加入你的project2、在需要的地方头引用frmoupt3、写入如下代码With Tfmoupt.create(self) dobegin A
DB
G:=self.
db
grid
eh
1; showmodal; free;edn;4、按提示操作即可大家可以参考使用的效果图。欢迎交流pcode@163.com
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章