CreateProcess и кодовая страница

Тема в разделе "WASM.WIN32", создана пользователем 7mm, 15 авг 2010.

  1. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Друзья, каким образом можно осуществить вывод информации на английском языке при запуске "ipconfig /all" с использованием CreateProcess?...

    Т.е. мне нужно получить результат эквивалентный выполнению такой команды:
    Код (Text):
    1. chcp 437 && ipconfig /all
    Не знаю что и делать... =(
     
  2. ntcdm

    ntcdm New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2007
    Сообщения:
    247
    попробуй запусти

    cmd.exe /c "chcp 437 && ipconfig /all"
     
  3. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Код (Text):
    1. CreateProcessA(0, "cmd.exe /c \"chcp 437 && ipconfig /all\"", 0, 0, 1, CREATE_NO_WINDOW, 0, 0, &sInfo, &pInfo);
    Результат тот же, вывод информации на русском :dntknw:
     
  4. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Код (Text):
    1. C:\Documents and Settings\n0name>chcp 437 && ipconfig /all
    2. Текущая кодовая страница: 437
    3.  
    4. Настройка протокола IP для Windows
    5.  
    6.         Имя компьютера  . . . . . . . . . : nnm
    7.         Основной DNS-суффикс  . . . . . . :
    8.         Тип узла. . . . . . . . . . . . . : неизвестный
    9.         IP-маршрутизация включена . . . . : да
    10.         WINS-прокси включен . . . . . . . : нет
    11.  
    12. VMware Network Adapter VMnet8 - Ethernet адаптер:
    13.  
    14.         DNS-суффикс этого подключения . . :
    15.         Описание  . . . . . . . . . . . . : VMware Virtual Ethernet Adapter for
    16. VMnet8
    17.         Физический адрес. . . . . . . . . : 00-50-56-C0-00-08
    18.         Dhcp включен. . . . . . . . . . . : нет
    19.         IP-адрес  . . . . . . . . . . . . : 192.168.120.1
    20.         Маска подсети . . . . . . . . . . : 255.255.255.0
    21.         Основной шлюз . . . . . . . . . . :
    22.  
    23. VMware Network Adapter VMnet1 - Ethernet адаптер:
    24.  
    25.         DNS-суффикс этого подключения . . :
    26.         Описание  . . . . . . . . . . . . : VMware Virtual Ethernet Adapter for
    27. VMnet1
    28.         Физический адрес. . . . . . . . . : 00-50-56-C0-00-01
    29.         Dhcp включен. . . . . . . . . . . : нет
    30.         IP-адрес  . . . . . . . . . . . . : 192.168.174.1
    31.         Маска подсети . . . . . . . . . . : 255.255.255.0
    32.         Основной шлюз . . . . . . . . . . :
    33.  
    34. freebsd - Ethernet адаптер:
    35.  
    36.         DNS-суффикс этого подключения . . :
    37.         Описание  . . . . . . . . . . . . : Realtek PCIe GBE Family Controller
    38.         Физический адрес. . . . . . . . . : 00-17-31-91-74-2A
    39.         Dhcp включен. . . . . . . . . . . : нет
    40.         IP-адрес  . . . . . . . . . . . . : 192.168.0.100
    41.         Маска подсети . . . . . . . . . . : 255.255.255.0
    42.         Основной шлюз . . . . . . . . . . : 192.168.0.1
    43.         DNS-серверы . . . . . . . . . . . : 192.168.0.1
    44.  
    45. Сеть Bluetooth - Ethernet адаптер:
    46.  
    47.         Состояние сети  . . . . . . . . . : сеть отключена
    48.         Описание  . . . . . . . . . . . . : Драйвер сервера доступа к локальной
    49. сети Bluetooth
    50.         Физический адрес. . . . . . . . . : 00-1B-10-00-2A-96
    как видишь, выводится по-русски.
     
  5. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Это наверное в FAR? :) Если да, то chcp его внутренняя команда. Запустите либо в CMD, либо так:
    Код (Text):
    1. cmd.exe /c chcp 437 && ipconfig /all
     
  6. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    это в cmd.
     
  7. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Хз, у меня так выводит по-английски.
     
  8. sometime

    sometime Odessa

    Публикаций:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    227
    Адрес:
    sunday
    попробуй ShellExecute(),
    или
    Код (Text):
    1.     CreateProcess( L"c:\\windows\\system32\\cmd.exe",
    2.                    L"\"/c chcp 437 && ipconfig /all\"",
    3.                    NULL,
    4.                    NULL,
    5.                    FALSE,
    6.                    CREATE_NEW_CONSOLE,
    7.                    NULL,
    8.                    NULL,
    9.                    &si,
    10.                    &pi );
    вывело на англ...

    занулил флаги и... все на англ, но с некоторыми "????????" - видимо там на русском было))