На STDIN до STDOUT та STDERR-перенаправлення не працюють у WOW64 дочірнього процесу, якщо функцію CreateProcessWithTokenW, створює дочірній процес

Застосовується до: Windows Server 2008 for Itanium-Based SystemsWindows Server 2008 DatacenterWindows Server 2008 Enterprise

Причини


Розглянемо таку ситуацію:
  • У вас на комп'ютері під керуванням 64-розрядних версіях Windows Server 2008, Windows Vista, Windows 7 або Windows Server 2008 R2.
  • На цьому комп'ютері в будь-який процес викликає CreateProcessWithTokenW функції для створення дочірніх процес, який працює з Windows 32-розрядні, на 64-розрядної Windows (WOW64).
  • Дочірній процес WOW64 створено переспрямування стандартний вхід (STDIN), стандартний вивід (STDOUT) і стандартна помилка (STDERR).
У цьому випадку в перенаправлення не працюють у процесі WOW64 дочірній. Таким чином, будь-які програми або служби, які залежать від функція переспрямування не працюють.

Причина


Є два процес середовище блоків (PEBs) для кожного процесу, WOW64child. Один PEB, що використовується для 64-розрядних процесів, а також в інших PEB, що використовується для 32-розрядних процесів запущено WOW64 емуляції середовища.

CreateProcessWithTokenW функції лише дублікатів маркери STDIN, STDOUT та STDERR від батьківського процесу для PEB, для 64-розрядних процесів. Ця функція не дублювати цих маркерів PEB, для 32-розрядних-процесів запущено WOW64 емуляції середовища. Це спричиняє дочірніх процес, який працює з WOW64 буде неможливо використати переспрямованих ручки. Таким чином, не з перенаправлення.

Вирішення


Відомості про виправлення

Виправлення доступне від корпорації Майкрософт. Проте це виправлення призначена для вирішення проблеми, описаної в цій статті. Застосовуйте це виправлення лише до систем, які відчувають проблеми, описані в цій статті. Це виправлення може отримати додаткове тестування. Тому, якщо ця проблема не сильно впливає на вас, ми рекомендуємо почекати наступного оновлення програмного забезпечення, що містить це виправлення.

Якщо Виправлення доступне для завантаження, є розділ "Виправлення доступне для завантаження" на початку цієї статті бази знань. Якщо цей розділ не відображається, зверніться до служби підтримки клієнтів Microsoft, щоб отримати виправлення.

Примітка. Якщо виникають додаткові проблеми, або потрібно виявлення проблем, можливо, доведеться створити окремий запит на обслуговування. Звичайні кошти на технічну підтримку будуть застосовуватися для додаткових питань і проблем, які не пов'язані з цим виправленням. Повний список телефонів служби підтримки користувачів і технічної підтримки, або створити окремий запит на обслуговування відвідайте веб-сайт корпорації Майкрософт:Примітка. У формі "Виправлення доступне для завантаження" відображається список мов, для яких це виправлення доступне. Якщо потрібна мова не відображається, то виправлення недоступне для даної мови.

Попередні вимоги

Для застосування цього виправлення, комп'ютер має працювати під керуванням одне з таких операційних систем:
  • Windows Vista-пакет оновлень 1 (SP1)
  • Windows Vista з пакетом оновлень 2 (SP2)
  • ОС Windows Server 2008
  • Windows Server 2008 із пакетом оновлень 2 (SP2)
  • Windows 7
  • Windows Server 2008 R2

Необхідність перезавантаження

Після застосування цього виправлення комп'ютер необхідно перезавантажити.

Інформація про реєстр

Вам не потрібно вносити зміни до реєстру.

Відомості про файли

Англійська (США) версії цього виправлення на комп'ютері буде інстальовано файли з атрибутами, зазначеними в наведених нижче таблицях. Значення дати й часу для цих файлів наведено за всесвітнім координованим часом (UTC). Значення дати й часу для цих файлів на локальному комп'ютері відображаються за місцевим часом разом з врахуванням поточного переходу на літній час (DST). Крім того, значення дати й часу можуть змінюватися після виконання певних дій із файлами.
Відомості про файли Windows Vista і Windows Server 2008
Увага! Виправлення для Windows Vista і Windows Server 2008, які входять до одного пакета. Однак, тільки "Windows Vista" зазначено на сторінці виправлення запит. Запит на отримання пакета виправлень для однієї або обох операційних систем, на, виберіть виправлення, указане в розділі "Windows Vista". Завжди звертайтесь до розділу "Застосовується до", щоб визначити до якої саме операційної системи застосовується виправлення.
  • Файли, які стосуються певного продукту, випуску (RTM, SP-n), і типу підтримки (LDR, GDR), можна визначити за властивістю номерами версій, указаними в наведеній нижче таблиці.
    ВерсіяПродуктSR_LevelГалузь
    6.0.600
    1.
    22 XXX
    Windows Vista і Windows Server 2008SP1LDR
    6.0.600
    2.
    22 XXX
    Windows Vista і Windows Server 2008SP2LDR
  • Пакет оновлень 1 інтегровано до остаточної версії Windows Server 2008.
  • Файли з розширеннями MANIFEST (. MANIFEST) і MUM (. MUM), які інсталюються в кожній системі, які, зазначаються окремо в розділі "Додаткові файл інформацію для Windows Server 2008 і Windows Vista". МАМІ файлів і файли з розширеннями MANIFEST і на пов'язані файли каталогу безпеки (. cat), є надзвичайно важливі для відстеження стану оновлюваних компонентів. Файли каталогу безпеки, для яких не вказано атрибути, підписані цифровим підписом корпорації Майкрософт.
Для всіх підтримуваних версій x64-процесорів, Windows Server 2008 і Windows Vista
Ім'я файлуВерсія файлуРозмір файлуДатаЧасПлатформа
Seclogon.dll6.0.6001.2243129,18412-May-200916:06x64
Seclogon.dll6.0.6002.2213429,18412-May-200915:41x64
Для всіх підтримуваних версій Windows Server 2008 на базі Itanium
Ім'я файлуВерсія файлуРозмір файлуДатаЧасПлатформа
Seclogon.dll6.0.6001.2243157,85612-May-200915:46IA-64
Seclogon.dll6.0.6002.2213457,85612-May-200915:33IA-64
Відомості про файли Windows 7 і Windows Server 2008 R2
Увага! Виправлення для ОС Windows 7 і Windows Server 2008 R2 входять до одного пакета. Однак, термінові виправлення зазначені на сторінці запиту виправлення списку для обох операційних систем. Щоб отримати пакет виправлень для однієї або обох операційних систем виберіть виправлення вказане в розділі "Windows 7/Windows Server 2008 R2". Завжди звертайтесь до розділу "Застосовується до", щоб визначити до якої саме операційної системи застосовується виправлення.
  • Файли з розширеннями MANIFEST (. MANIFEST) і MUM (. MUM), які інсталюються в кожній системі, які, зазначаються окремо в розділі "Додаткові файл відомості для ОС Windows 7 і Windows Server 2008 R2". Файли з РОЗШИРЕННЯМ і файли з розширеннями MANIFEST і на пов'язані файли каталогу безпеки (. cat), є надзвичайно важливі для відстеження стану оновлюваних компонентів. Файли каталогу безпеки, для яких не вказано атрибути, підписані цифровим підписом корпорації Майкрософт.
Для всіх підтримуваних версій x64-процесорів, Windows 7 і Windows Server 2008 R2
Ім'я файлуВерсія файлуРозмір файлуДатаЧасПлатформа
Seclogon.dll6.1.7600.2078730,72021-Aug-201007:24x64
Для всіх підтримуваних версій Windows Server 2008 R2 на базі IA-64-процесорів
Ім'я файлуВерсія файлуРозмір файлуДатаЧасПлатформа
Seclogon.dll6.1.7600.2078765,02421-Aug-201006:29IA-64

Виправлення помилок


Щоб вирішити цю проблему, зверніться до CreateProcessAsUser функцію, щоб створити дочірній.

Стан


Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".

Додаткові відомості


Щоб отримати додаткові відомості про функцію CreateProcessWithTokenW відвідайте веб-сайт корпорації Майкрософт:Щоб отримати додаткові відомості про функцію CreateProcessAsUser відвідайте веб-сайт корпорації Майкрософт:Щоб отримати додаткові відомості, клацніть номер статті в базі знань Microsoft:

824684 Опис стандартну термінологію, яка використовується для опису оновлень програмних продуктів Майкрософт


Додаткові відомості про файли

Відомості про додаткові файли для ОС Windows Vista і Windows Server 2008

Додаткові файли для всіх підтримуваних x64-процесорів версій операційної системи Windows Vista і Windows Server 2008
Ім'я файлуAmd64_4a7908b357eecad45497e7a614da5ab2_31bf3856ad364e35_6.0.6001.22431_none_eff62086a34ac976.manifest
Версія файлуНе застосовується
Розмір файлу713
Дата (UTC)13-May-2009
Час (UTC)03:32
ПлатформаНе застосовується
Ім'я файлуAmd64_e18aeae085cca5f39361c0ace1ecfedf_31bf3856ad364e35_6.0.6002.22134_none_c800fbe0d1aafeca.manifest
Версія файлуНе застосовується
Розмір файлу713
Дата (UTC)13-May-2009
Час (UTC)03:32
ПлатформаНе застосовується
Ім'я файлуAmd64_microsoft-windows-secondarylogonservice_31bf3856ad364e35_6.0.6001.22431_none_48ed2db26d293c6b.manifest
Версія файлуНе застосовується
Розмір файлу7,582
Дата (UTC)12-May-2009
Час (UTC)19:30
ПлатформаНе застосовується
Ім'я файлуAmd64_microsoft-windows-secondarylogonservice_31bf3856ad364e35_6.0.6002.22134_none_4ad6a0786a4cdd94.manifest
Версія файлуНе застосовується
Розмір файлу7,582
Дата (UTC)12-May-2009
Час (UTC)19:25
ПлатформаНе застосовується
Ім'я файлуUpdate.mum
Версія файлуНе застосовується
Розмір файлу2,598
Дата (UTC)13-May-2009
Час (UTC)03:32
ПлатформаНе застосовується
Додаткові файли для всіх підтримуваних IA-64-процесорів версій ОС Windows Server 2008
Ім'я файлуIa64_23caceaa3d7286a9ff4a23775ef4da54_31bf3856ad364e35_6.0.6002.22134_none_d01b4e8816bf0190.manifest
Версія файлуНе застосовується
Розмір файлу711
Дата (UTC)13-May-2009
Час (UTC)03:32
ПлатформаНе застосовується
Ім'я файлуIa64_68069bedf1d5a4bd9f3dc637561ff507_31bf3856ad364e35_6.0.6001.22431_none_349d44d96d664fea.manifest
Версія файлуНе застосовується
Розмір файлу711
Дата (UTC)13-May-2009
Час (UTC)03:32
ПлатформаНе застосовується
Ім'я файлуIa64_microsoft-windows-secondarylogonservice_31bf3856ad364e35_6.0.6001.22431_none_ecd03624b4c9d431.manifest
Версія файлуНе застосовується
Розмір файлу7,572
Дата (UTC)12-May-2009
Час (UTC)19:14
ПлатформаНе застосовується
Ім'я файлуIa64_microsoft-windows-secondarylogonservice_31bf3856ad364e35_6.0.6002.22134_none_eeb9a8eab1ed755a.manifest
Версія файлуНе застосовується
Розмір файлу7,572
Дата (UTC)12-May-2009
Час (UTC)19:07
ПлатформаНе застосовується
Ім'я файлуUpdate.mum
Версія файлуНе застосовується
Розмір файлу1,924
Дата (UTC)13-May-2009
Час (UTC)03:32
ПлатформаНе застосовується

Відомості про додаткові файли для ОС Windows 7 і Windows Server 2008 R2

Додаткові файли для всіх підтримуваних x64-розрядних версій ОС Windows 7 і Windows Server 2008 R2
Ім'я файлуAmd64_445df96a83014fe57068b08a79da6683_31bf3856ad364e35_6.1.7600.20787_none_20591bc8c261086c.manifest
Версія файлуНе застосовується
Розмір файлу713
Дата (UTC)21-Aug-2010
Час (UTC)12:03
ПлатформаНе застосовується
Ім'я файлуAmd64_microsoft-windows-secondarylogonservice_31bf3856ad364e35_6.1.7600.20787_none_48e4f3e3ce639760.manifest
Версія файлуНе застосовується
Розмір файлу4,810
Дата (UTC)21-Aug-2010
Час (UTC)08:37
ПлатформаНе застосовується
Ім'я файлуUpdate.mum
Версія файлуНе застосовується
Розмір файлу1,886
Дата (UTC)21-Aug-2010
Час (UTC)12:03
ПлатформаНе застосовується
Додаткові файли для всіх підтримуваних IA-64-процесорів версій ОС Windows Server 2008 R2
Ім'я файлуIa64_a48ab9ecdf2f4b1206e2ae93b7bb6a43_31bf3856ad364e35_6.1.7600.20787_none_172788f1fbdb93a7.manifest
Версія файлуНе застосовується
Розмір файлу711
Дата (UTC)21-Aug-2010
Час (UTC)12:03
ПлатформаНе застосовується
Ім'я файлуIa64_microsoft-windows-secondarylogonservice_31bf3856ad364e35_6.1.7600.20787_none_ecc7fc5616042f26.manifest
Версія файлуНе застосовується
Розмір файлу4,808
Дата (UTC)21-Aug-2010
Час (UTC)08:17
ПлатформаНе застосовується
Ім'я файлуUpdate.mum
Версія файлуНе застосовується
Розмір файлу1,684
Дата (UTC)21-Aug-2010
Час (UTC)12:03
ПлатформаНе застосовується