Elevate through ShellExecute
						, from Vista Compatibility Team Blog.
				
						We often get the question how to elevate a process through ShellExecute. From the docs it is not immediately clear. The trick is passing in “runas” in the lpVerb.
						Here is a snippet to run notepad elevated. 
				
				
						#include “stdafx.h”
#include “windows.h”
#include “shellapi.h”
				
				int _tmain(int argc, _TCHAR* argv[])
{
    SHELLEXECUTEINFO shExecInfo;
				    shExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
				    shExecInfo.fMask = NULL;
    shExecInfo.hwnd = NULL;
    shExecInfo.lpVerb = L”runas“;
    shExecInfo.lpFile = L”notepad.exe”;
    shExecInfo.lpParameters = NULL;
    shExecInfo.lpDirectory = NULL;
    shExecInfo.nShow = SW_MAXIMIZE;
    shExecInfo.hInstApp = NULL;
				    ShellExecuteEx(&shExecInfo);
				    return 0;
}
				Here is some screenshot:
				
						 
				
				
				Popularity: 31% [?]