ICorDebug::CreateProcess – metoda
Spustí proces a jeho primární vlákno pod kontrolou ladicího programu.
Syntaxe
HRESULT CreateProcess (
[in] LPCWSTR lpApplicationName,
[in] LPWSTR lpCommandLine,
[in] LPSECURITY_ATTRIBUTES lpProcessAttributes,
[in] LPSECURITY_ATTRIBUTES lpThreadAttributes,
[in] BOOL bInheritHandles,
[in] DWORD dwCreationFlags,
[in] PVOID lpEnvironment,
[in] LPCWSTR lpCurrentDirectory,
[in] LPSTARTUPINFOW lpStartupInfo,
[in] LPPROCESS_INFORMATION lpProcessInformation,
[in] CorDebugCreateProcessFlags debuggingFlags,
[out] ICorDebugProcess **ppProcess
);
Parametry
lpApplicationName
[v] Ukazatel na řetězec ukončený hodnotou null, který určuje modul, který má být spuštěn procesem spuštění. Modul se provádí v kontextu zabezpečení volajícího procesu.
lpCommandLine
[v] Ukazatel na řetězec ukončený hodnotou null, který určuje příkazový řádek, který má být spuštěn procesem spuštění. Název aplikace (například "SomeApp.exe") musí být prvním argumentem.
lpProcessAttributes
[v] Ukazatel na strukturu Win32 SECURITY_ATTRIBUTES
, která určuje popisovač zabezpečení procesu. Pokud lpProcessAttributes
je null, proces získá výchozí popisovač zabezpečení.
lpThreadAttributes
[v] Ukazatel na strukturu Win32 SECURITY_ATTRIBUTES
, která určuje popisovač zabezpečení pro primární vlákno procesu. Pokud lpThreadAttributes
je null, vlákno získá výchozí popisovač zabezpečení.
bInheritHandles
[v] Nastavte na true
označení, že každý zděděný popisovač v volajícím procesu je zděděn spuštěným procesem nebo false
indikuje, že popisovače nejsou zděděny. Zděděné popisovače mají stejnou hodnotu a přístupová práva jako původní popisovače.
dwCreationFlags
[v] Bitové kombinace příznaků vytvoření procesu Win32, které řídí třídu priority a chování spuštěného procesu.
lpEnvironment
[v] Ukazatel na blok prostředí pro nový proces
lpCurrentDirectory
[v] Ukazatel na řetězec ukončený hodnotou null, který určuje úplnou cestu k aktuálnímu adresáři procesu. Pokud má tento parametr hodnotu null, nový proces bude mít stejnou aktuální jednotku a adresář jako volající proces.
lpStartupInfo
[v] Ukazatel na strukturu Win32 STARTUPINFOW
, která určuje stanici oken, plochu, standardní úchyty a vzhled hlavního okna pro spuštěný proces.
lpProcessInformation
[v] Ukazatel na strukturu Win32 PROCESS_INFORMATION
, která určuje identifikační informace o procesu, který se má spustit.
debuggingFlags
[v] Hodnota CorDebugCreateProcessFlags výčtu, která určuje možnosti ladění.
ppProcess
[ven] Ukazatel na adresu ICorDebugProcess objektu, který představuje proces.
Poznámky
Parametry této metody jsou stejné jako parametry metody Win32 CreateProcess
.
Pokud chcete povolit nespravované ladění ve smíšeném režimu, nastavte dwCreationFlags
na DEBUG_PROCESS | DEBUG_ONLY_THIS_PROCESS. Pokud chcete použít pouze spravované ladění, nenastavujte tyto příznaky.
Pokud ladicí program a proces, který se má ladit (připojený proces), sdílí jednu konzolu a pokud se používá ladění vzájemné spolupráce, je možné, aby připojený proces přidržil zámky konzoly a zastavil při události ladění. Ladicí program pak zablokuje všechny pokusy o použití konzoly. Chcete-li se tomuto problému vyhnout, nastavte příznak CREATE_NEW_CONSOLE v parametru dwCreationFlags
.
Ladění spolupráce není podporováno na platformách Win9x a jiných platformách než x86, jako jsou platformy založené na IA-64 a AMD64.
Požadavky
Platformy: Viz požadavky na systém.
Hlavička: CorDebug.idl, CorDebug.h
Knihovna: CorGuids.lib
Verze rozhraní .NET Framework: Dostupné od verze 1.0