我正在创建一个Delphi服务。有没有办法在服务中使用从TWinControl派生的控件?最终,控件和我放在它上面的任何控件都将保存到位图中。但是我尝试的任何东西都让“控制没有父窗口”错误。
我已经成功创建了一个TBitMap,可以完成相同的功能。但是,将所有功能内置到VCL中将大大简化任务。
答案 0 :(得分:2)
你的程序抱怨控件没有父窗口,所以给它一个。创建一个表单并将控件放在那里。表单可以是顶级窗口,因此它们不需要父项。该表单将作为其余控件的父窗口。
它们仍然不可见,但它们至少会存在。
答案 1 :(得分:1)
我认为Windows服务不提供桌面服务。如果是这种情况(没有桌面),那么您将无法在服务中执行任何需要窗口句柄的操作。
TBitmap在那里工作,因为它使用位图句柄和内存DC。无需窗口处理。
答案 2 :(得分:0)