一个程序中怎么使用另一个程序中的ADOConnection
有两个程序,程序1的数据模块中有一个ADOConnection1控件,已经连接好数据库,其通过共享内存共享了ADOConnection1控件的指针;
程序2通过程序1调用,启动后通过共享内存获得程序1中ADOConnection1的指针,之后设置ADOQuery连接程序1的ADOConnection1控件来执行数据库操作。
两个程序都只在同一台计算机上运行,运行结果是程序2执行了非法操作而崩溃了,这个问题怎么解决?
[解决办法]
复制指针不可行的 A进程的指针在B进程指向的内容是未定义的
[解决办法]
共享adoconnect,恐怕不行
尝试封装dll调用作为一个参数传入adoconnect
[解决办法]
共享VCL对象,不是那么简单的。多个进程至少有多个线程,多线程争抢资源引起的死锁和崩溃是家常便饭。
[解决办法]
你这个需求有点怪啊,为什么非要多个进程使用同一个连接呢,这样效率并不高啊。
[解决办法]
多進程共享一個數據庫連接,有點象多層的數據庫程序,只是服務端與客戶端在同一台電腦上。
你可以參考一下多層的程序是如何寫的。
[解决办法]