WINDOWS如何启动屏幕保护程序?调用哪些函数?
问题点数:20、回复次数:10Top
1 楼wjiachun(老猫)回复于 2001-03-11 21:15:00 得分 0
不要哪些函数,一个 shellexecute 就可以,象打开其他文件一样,千万不要告诉我你不会shellexecute ,万一不会就看看帮助吧。Top
2 楼wangxd1976(东东)回复于 2001-03-11 21:25:00 得分 0
gzTop
3 楼Leeon(阿文)回复于 2001-03-12 20:19:00 得分 0
to wjiachun:
也许我没说清楚,我说的是“WINDOWS如何启动屏保”,即在“Control Panel”设置的,SHELLEXECUTE虽可启动屏保,却不能启动先前设置的屏保,如何获得这一屏保的文件名?Top
4 楼Java_SCU(Java)回复于 2001-03-12 20:51:00 得分 0
是利用程序的参数,我是这样做的:
Mutex:=CreateMutex(NIL,True,'SingleApp');
IF GetLastError<>ERROR_ALREADY_EXISTS THEN//如果不存在另一实例
BEGIN
Tag:=0;
if LowerCase(ParamStr(1))='/a' then
Tag:=1
else if LowerCase(ParamStr(1))='/p' then
Tag:=2
else if LowerCase(ParamStr(1))='/c' then
Tag:=3
else if LowerCase(ParamStr(1))='/s' then
Tag:=4;
// /a 在显示属性对话框中单击他就可以修改口令
// /p 每当选中显示属性对话框中屏幕保护程序标签时,在对话框显示预览效果
// /c 在显示属性对话框中单击他进行设置
// /s 在显示属性对话框中单击预览按钮或系统掉用屏保
case Tag of
4:
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
0,1,3:
begin
Application.Initialize;
Application.CreateForm(TForm2, Form2);
Application.Run;
end;
end;Top
5 楼Java_SCU(Java)回复于 2001-03-12 20:52:00 得分 0
是利用程序的参数,我是这样做的:
Mutex:=CreateMutex(NIL,True,'SingleApp');
IF GetLastError<>ERROR_ALREADY_EXISTS THEN//如果不存在另一实例
BEGIN
Tag:=0;
if LowerCase(ParamStr(1))='/a' then
Tag:=1
else if LowerCase(ParamStr(1))='/p' then
Tag:=2
else if LowerCase(ParamStr(1))='/c' then
Tag:=3
else if LowerCase(ParamStr(1))='/s' then
Tag:=4;
// /a 在显示属性对话框中单击他就可以修改口令
// /p 每当选中显示属性对话框中屏幕保护程序标签时,在对话框显示预览效果
// /c 在显示属性对话框中单击他进行设置
// /s 在显示属性对话框中单击预览按钮或系统掉用屏保
case Tag of
4:
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
0,1,3:
begin
Application.Initialize;
Application.CreateForm(TForm2, Form2);
Application.Run;
end;
end;
END;
ReleaseMutex(Mutex);
end.Top
6 楼Kingron(单身走我路……)回复于 2001-03-12 20:54:00 得分 0
发送一个屏幕保护的消息即可!
SendMessage(HWND_BROADCAST,WM_SYSCOMMAND,SC_SCREENSAVE,0);Top
7 楼Java_SCU(Java)回复于 2001-03-12 21:01:00 得分 0
是利用程序的参数,我是这样做的:
Mutex:=CreateMutex(NIL,True,'SingleApp');
IF GetLastError<>ERROR_ALREADY_EXISTS THEN//如果不存在另一实例
BEGIN
Tag:=0;
if LowerCase(ParamStr(1))='/a' then
Tag:=1
else if LowerCase(ParamStr(1))='/p' then
Tag:=2
else if LowerCase(ParamStr(1))='/c' then
Tag:=3
else if LowerCase(ParamStr(1))='/s' then
Tag:=4;
// /a 在显示属性对话框中单击他就可以修改口令
// /p 每当选中显示属性对话框中屏幕保护程序标签时,在对话框显示预览效果
// /c 在显示属性对话框中单击他进行设置
// /s 在显示属性对话框中单击预览按钮或系统掉用屏保
case Tag of
4:
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
0,1,3:
begin
Application.Initialize;
Application.CreateForm(TForm2, Form2);
Application.Run;
end;
end;
END;
ReleaseMutex(Mutex);
end.
其实屏保程序就是一个exe,只是扩展名不同Top
8 楼Kingron(单身走我路……)回复于 2001-03-12 21:09:00 得分 20
给我分..........................
测试通过的。Top
9 楼Lin(林)回复于 2001-03-12 22:54:00 得分 0
分数就给Kingron(WinAPI) 吧,他说得不错。Top
10 楼lldwolf(铁背苍狼)回复于 2001-03-13 00:12:00 得分 0
同意kingrouTop




