使用DLL来为它们的服务器应用程序存放管理窗体会导致DLL拥有自己的Forms.pas文件副本。将将会引起一个不可思议的错误,该错误与Windows的窗口句柄处理有关。Windows窗口句柄处理产生于DLL中——当DLL被卸载时,窗口句柄却不能被操作系统解除参照。下一个穿过队列被发往顶层窗口的消息会导致应用程序出错,这样操作系统就会因为应用程序处于非法状态而将它关闭。使用包代替DLL可以克服这个问题,因为包引用了主应用程序的Forms.pas副本,因此消息队列能够成功地传送到应用程序
posted on 2009-10-08 10:55  viStart  阅读(220)  评论(0编辑  收藏  举报