我想用A.exe查找数据库,获得结果集,放入共享内存。
再由B.exe去取这个结果集,再用dbgrid显示出来。我弄不出来。我在网上查到:
TSharedMemory = packed record
Int1: Integer;
Str1: String[255];
Str2: array [0..255] of Char;
Str3: WideString;
Obj: TMyObject;
end;
PSharedMemory = ^TSharedMemory;
我用 共享内存 存取string,int等简单类型都可以成功,但是我想存取 结果集,我不行,有人说用指针什么的,现在脑子有点乱。有没有那位大哥,大姐有例子 贴一下 或 传到我邮箱([email protected]),最好能讲解下。
再由B.exe去取这个结果集,再用dbgrid显示出来。我弄不出来。我在网上查到:
TSharedMemory = packed record
Int1: Integer;
Str1: String[255];
Str2: array [0..255] of Char;
Str3: WideString;
Obj: TMyObject;
end;
PSharedMemory = ^TSharedMemory;
我用 共享内存 存取string,int等简单类型都可以成功,但是我想存取 结果集,我不行,有人说用指针什么的,现在脑子有点乱。有没有那位大哥,大姐有例子 贴一下 或 传到我邮箱([email protected]),最好能讲解下。
Int1: Integer;
Str1: String[255];
Str2: array [0..255] of Char;
Str3: WideString; //这是个指针,跨进程无效
Obj: TMyObject; //这是个指针,跨进程无效
end;
还是用Integer和char数组之类.
这个......在windows上做程序,VC Delphi BCB VB等等.都没本质区别.
:D
原理看懂了,but还是不太明白怎么做。能不能给个例子, 或写一些 关键代码?
简单的说只传递基本类型的对象Integer 或者Char之类的数据
至于对象暂时不用考虑了.复杂类型的可以考虑序列化成字符串.例如xml什么的.放到共享区域.
打包? 就是akirya说的序列化么?