Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Outlook在Delphi应用程序中运行Firebird SQL语句时挂起_Delphi_Firebird_Outlook Redemption - Fatal编程技术网

Outlook在Delphi应用程序中运行Firebird SQL语句时挂起

Outlook在Delphi应用程序中运行Firebird SQL语句时挂起,delphi,firebird,outlook-redemption,Delphi,Firebird,Outlook Redemption,我有一个用Delphi7编写的应用程序,它使用Firebird 2.1 db,并通过redemption连接到Outlook。 在我的应用程序中,当我运行一个耗时60-90秒的慢速查询时,outlook会挂起 你们能告诉我,为什么会发生这种情况,我该如何解决它 感谢和问候, Vijesh Nair我认为您的过程锁定了Outlook存储(pst或mapi)。如果不更改代码,使其仅在需要时打开应用商店,那么您就不能做很多事情 这可能与Firebird没有多大关系,而与您在Outlook中所做的工作无

我有一个用Delphi7编写的应用程序,它使用Firebird 2.1 db,并通过redemption连接到Outlook。 在我的应用程序中,当我运行一个耗时60-90秒的慢速查询时,outlook会挂起

你们能告诉我,为什么会发生这种情况,我该如何解决它

感谢和问候,
Vijesh Nair

我认为您的过程锁定了Outlook存储(pst或mapi)。如果不更改代码,使其仅在需要时打开应用商店,那么您就不能做很多事情

这可能与Firebird没有多大关系,而与您在Outlook中所做的工作无关。Sooo,在执行Firebird查询时,您在Outlook中做什么?在Outlook中执行需要执行的操作之前,不能执行查询吗?你能显示Outlook代码吗?谢谢你的评论。让我解释一下,我在做什么。我们在我的应用程序中有一个SQL窗口,启动了一个SQL来执行,然后我切换到Outlook,当我在Outlook窗口中选择任何邮件时,直到SQL完成其操作才得到选择。我不确定我是否理解:在SQL查询完成之前,您不能在Outlook中选择某些内容?您在Outlook中单击,但什么也没有发生?或者您是否在Outlook中选择了其他内容,但在查询完成之前,更改不会反映在应用程序中?很抱歉,造成混淆,在完成SQL处理之前,我无法使用Outlook处理查询时,您是否可以运行其他程序?任务管理器在CPU使用方面显示了什么?你是对的,我是否需要将功能移动到线程。@VijeshV.Nair我认为线程没有帮助。如果您的进程锁定了Outlook存储,则它将被锁定。无论进程是否线程化,锁定都将阻止Outlook。