Я выполняю приложение, скажем, блокнот, используя createprocess.
Мне нужно переопределить размер и позицию по умолчанию для этого приложения, поэтому я изменил STARTUPINFO и указал dwX, dwY, dwYSize, dwXSize и добавил STARTF_USEPOSITION || STARTF_USESIZE для dwFlags.
Но приложение вообще не открывается.
Если я поставлю одну из STARTF_USEPOSITION и STARTF_USESIZE, приложение откроется, но не будет перемещено или изменено в размерах.
Есть ли в любом случае это сделать ??
{
STARTUPINFO siStartupInfo;
PROCESS_INFORMATION piProcessInfo;
memset(&siStartupInfo, 0, sizeof(siStartupInfo));
memset(&piProcessInfo, 0, sizeof(piProcessInfo));
siStartupInfo.cb = sizeof(siStartupInfo);
siStartupInfo.dwFlags = STARTF_USEPOSITION|STARTF_USESIZE;//||STARTF_USESHOWWINDOW;
siStartupInfo.wShowWindow=SW_SHOWDEFAULT;
siStartupInfo.dwX=900;
siStartupInfo.dwY=300;
siStartupInfo.dwXSize=1000;
siStartupInfo.dwYSize=1000;
if(CreateProcess("H:\\WINXP\\system32\\notepad.exe", // Application name
NULL , // Application arguments
0,
0,
FALSE,
NORMAL_PRIORITY_CLASS,
0,
0, // Working directory
&siStartupInfo,
&piProcessInfo) )
printf("Sucessful\n");
else
printf("Error");
}