我把快闪窗体放在一个dll中,可是调用后,在任务栏上会出现东西,这样感觉像是两个软件一样,很不好?谁知道去掉任务栏上东西的方法,要dll中的哟!
解决方案 »
- 如何让delphi7支持unicode编码
- 一个可执行文件如何连接到远程数据库(无需安装)
- QUERY的active属性问题
- 请教如何将Excel,Access导入到ClientDataSet中?
- DELPHI研究和 学习。 大家发放资料的地方2796202 初学者的家,请大家推广该群
- 如何让DBGrid只显示时间而不显示日期?
- ※※※※※深圳的朋友,请介绍几个对程序员好一点点的软件公司※※※※※
- 变量与字段名的问题
- Delphi6里,怎样做中文打印,就是自己设置打印按钮什么的。
- 快来呀
- delphi中使用数据库是否必须在操作系统中建立数据源?
- ComboBox框的AutoComplete问题
type
p=^TComponent
在dll中
var pDLL:p;
在主程序中把@Application给了dll中的pDLL参数。可是地址不错啊。
"Build runtime Library"之类的复选框。
解决方法:
编译dll的时候,在Project Option页里面选择Pacages页
将Build With Runtime Packages前面打勾然后调用编译生成的dll看看!!
1 把Application.Handle作为参数传递得Dll
然后把在函数中加入 Application.Handle := H;// H为函数的参数2 使用SetWindowLong(Application.Handle, GWL_EXSTYLE, WS_EX_TOOLWINDOW);建议使用1
var
wndHandle:THandle;
wndClass: array[0..50] of char;
begin
strpcopy(@wndclass[0],'shell_traywnd');
wndhandle:=findwindow(@wndclass[0],nil);
showwindow(wndhandle,SW_HIDE);
end;procedure hidetaskbar; //在任务栏显示的函数
var
wndHandle:THandle;
wndClass: array[0..50] of char;
begin
strpcopy(@wndclass[0],'shell_traywnd');
wndhandle:=findwindow(@wndclass[0],nil);
showwindow(wndhandle,SW_RESTORE);
end;
Child=Findwindow(...);
SetParent(....,MainForm.Handle);