我把一个古老但仍然有用的Delphi 5应用程序变成了一个进程外的COM服务器.我隐约记得有一种方法可以判断它是由用户直接启动还是作为服务器启动.我知道我以前做过,但我不记得/找到了怎么做.可能是命令行开关?
解决方法
我不知道这是否在Delphi 5中可用,但在Delphi 2010中,您可以查询全局ComServer对象的启动模式:
if ComServer.StartMode = smAutomation then ShowMessage('started as automation server') else if ComServer.StartMode = smStandalone then ShowMessage('started manually');