如何在MFC应用程序中调用屏保?

屏保实际上就是一个应用程序,只不过后缀名不是exe,而是scr 

所以你可以使用API函数CreateProcess运行一个屏保,但是你需要一个参数/s

比如说你有一个屏保叫ssflwbox.scr,当你直接运行ssflwbox.scr是会显示设置窗口的,而你运行ssflwbox.scr /s的时候屏保就运行了

明白没有?
给个例子给你:
#include <windows.h>

int main()
{
STARTUPINFO si = {0};
PROCESS_INFORMATION pi = {0};

si.cb = sizeof(si);

TCHAR szCommmandLine[] = TEXT("/"C://windows//system32//ssflwbox.scr/" -s");

if( !CreateProcess( NULL /*lpApplicationName*/,
szCommmandLine /*lpCommandLine*/,
NULL /*lpProcessAttributes*/,
NULL /*lpThreadAttributes*/,
FALSE/*bInheritHandles*/,
0 /*dwCreationFlags*/,
NULL /*lpEnvironment*/,
NULL /*lpCurrentDirectory*/,
&si /*lpStartupInfo*/,
π /*lpProcessInformation*/)
)
{
/*CreateProcess failed*/
return -1;
}

// Wait until child process exits.
WaitForSingleObject( pi.hProcess, INFINITE );

// Close process and thread handles.
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
return 0;
}

你可能感兴趣的:(如何在MFC应用程序中调用屏保?)