如何启动通过shell执行最大化的Chrome?

我通过C ++启动了app="http://..."参数(Chrome应用程序快捷方式)的Chrome。 现在它似乎开放的大小约为400×800这是疯了。 我想打开它最大化,或者至less要记住它的大小。

有没有办法做到这一点?

Solutions Collecting From Web of "如何启动通过shell执行最大化的Chrome?"

如果您不介意使用默认浏览器(我认为这是最好的选择),而不是强制使用Chrome,那么您只需使用ShellExecute打开您的URL,指定您希望窗口最大化:

 #include <windows.h> #include <Shellapi.h> // requires linking towards Shell32.lib // ... if(ShellExecute(NULL, "open", "http://www.stackoverflow.com", NULL, NULL, SW_SHOWMAXIMIZED)<=32) { /* an error occurred */ } 

我必须打开Chrome浏览器,并且在变量中已知其路径。 我也需要指定一个参数。 这是一个问题吗?

那么,在这种情况下,最好使用CreateProcess

 #include <windows.h> // ... // Assuming that the path to chrome is inside the chromePath variable // and the URL inside targetURL // Important: targetURL *must be* a writable buffer, not a string literal // (otherwise the application may crash on Unicode builds) PROCESS_INFORMATION processInformation; STARTUPINFO startupInfo; memset(&processInformation, 0, sizeof(processInformation)); memset(&startupInfo, 0, sizeof(startupInfo)); startupInfo.cb = sizeof(startupInfo); startupInfo.wShowWindow = SW_SHOWMAXIMIZED; BOOL result= CreateProcess(chromePath, targetURL, NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &startupInfo, &processInformation); if(result) { WaitForSingleObject( processInformation.hProcess, INFINITE ); CloseHandle( processInformation.hProcess ); CloseHandle( processInformation.hThread ); } else { // An error happened } 

请注意,您可以尝试使用STARTUPINFO结构的dwX / dwY / dwXSize / dwYSize成员为窗口指定默认大小/位置,但是我不确定Chrome是否遵守这些设置。