Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Çağrı işlemini, belirtilen işlemin konsoluna istemci uygulaması olarak ekler.
Sözdizimi
BOOL WINAPI AttachConsole(
_In_ DWORD dwProcessId
);
Parametreler
dwProcessId [in]
Konsolu kullanılacak işlemin tanımlayıcısı. Bu parametre aşağıdaki değerlerden biri olabilir.
| Değer | Anlamı |
|---|---|
| pid | Belirtilen işlemin konsolunu kullanın. |
ATTACH_PARENT_PROCESS(DWORD)-1 |
Geçerli işlemin ana sürecinin konsolunu kullanın. |
Dönüş değeri
İşlev başarılı olursa, dönüş değeri sıfır değildir.
İşlev başarısız olursa, dönüş değeri sıfır olur. Genişletilmiş hata bilgilerini almak için GetLastError'ı arayın.
Açıklamalar
Bir işlem en fazla bir konsola eklenebilir. Çağırma işlemi zaten bir konsola bağlıysa, döndürülen hata kodu ERROR_ACCESS_DENIED. Belirtilen işlemin konsolu yoksa, döndürülen hata kodu ERROR_INVALID_HANDLE. Belirtilen işlem yoksa, döndürülen hata kodu ERROR_INVALID_PARAMETER.
Bir işlem, kendisini konsolundan ayırmak için FreeConsole işlevini kullanabilir. Diğer işlemler konsolu paylaşıyorsa, konsol yok olmaz, ancak FreeConsole olarak adlandırılan işlem buna başvuramaz. Bir konsola eklenen son işlem sonlandırıldığında veya FreeConsole'yi çağırdığında kapatılır. Bir işlem FreeConsole'u çağırdıktan sonra AllocConsole işlevini çağırarak yeni bir konsol oluşturabilir veya AttachConsole'u başka bir konsola iliştirebilir.
Bu işlev öncelikle /SUBSYSTEM:WINDOWS ile bağlantılı uygulamalar için yararlıdır. Bu, işletim sistemine programın ana yöntemine girmeden önce bir konsolun gerekli olmadığını gösterir. Bu örnekte, GetStdHandle ile alınan standart tanıtıcılar AttachConsole çağrılana kadar büyük olasılıkla başlangıçta geçersiz olacaktır. Bunun istisnası, uygulamanın ana işlemi tarafından kulp devralma ile başlatılmasıdır.
Bu işlevi kullanan bir uygulamayı derlemek için _WIN32_WINNT veya üzeri olarak 0x0501 tanımlayın. Daha fazla bilgi için bkz. windows üst bilgilerini kullanma .
Gereksinimler
| Desteklenen en düşük düzeydeki istemci | Windows XP [yalnızca masaüstü uygulamaları] |
| Desteklenen en düşük sunucu | Windows Server 2003 [yalnızca masaüstü uygulamaları] |
| Başlık | ConsoleApi.h (WinCon.h aracılığıyla Windows.h'yi dahil edin) |
| Kütüphane | Kernel32.lib |
| DLL | Kernel32.dll |