zoukankan      html  css  js  c++  java
  • TSession的多线程编程

    最近写了一个多线程进行数据库链接的程序的时候,发现一个错误:"File or directory does not exist. File: PDOXUSRS.NET"。追究其原由,发现是TSession的问题。大家都知道要用BDE进行多数据库编程,必须为各个TDatabase设置不同的TSession,其中重要的设置有SessionName、NetFileDir、PrivateDir,必须保持不能重复。NetFileDir设置一个目录用来存放BDE网络控制文件PDOXUSRS.NET.(Specifies the directory that contains the Borland Database Engine (BDE) network control file, PDOXUSRS.NET.)PrivateDir设置一个目录用来存储BDE的临时数据表(Specifies the directory in which to store temporary table processing files generated by the Borland Database Engine (BDE) for database components associated with a session.)。发生:"File or directory does not exist. File: PDOXUSRS.NET"错误,是因为不同程序注册了相同的SessionName,而NetFileDir、PrivateDir又是不同目录,结果PDOXUSRS.NET就没有产生在相应目录下,造成找不到PDOXUSRS.NET。

         由于Borland没有公布BDE.PAS代码,所以只能猜测BDE其实是根据SessionName在电脑里面注册了一个Tsession,所有程序都可以用。但这里注意,一定要设置对相应的NetFileDir、PrivateDir目录。其实NetFileDir、PrivateDir设置很重要,需要给创建、修改、删除权限,否则还会有其他问题。比如程序没有正常退出,该目录被占用,就会提示“Directory is busy.”

  • 相关阅读:
    MySQL之ORM
    MySQL之索引补充
    MySQL存储过程
    c primer plus 7编程练习
    c语言中统计单词数目程序
    c语言统计输入字符数及行数
    c语言中getchar()、putchar()函数例子
    c primer plus 6编程练习
    c语言 %c 一次输出多个字符 (特殊程序)
    c语言 复合赋值运算符的优先级低于算术运算符
  • 原文地址:https://www.cnblogs.com/enli/p/1352597.html
Copyright © 2011-2022 走看看