Предыстория: понадобилось тут мне MS AD из питоновского скрипта кой о чем поспрошать: мол, "Подай-ка мне, о Великая, информацию во-о-оон о том сукином сынепользователе!", а чтоб знала, с-сссобака, кто тебя спрашивает - вот тебе мое каноническое имя в качестве параметра скрипта, да не просто -u 'CN=user,<...>', пользователя по имени "user", члена группы "Domain guests" с соответствующими правами, а то самое, полноценное.
Крикнул - а в ответ, натурально, тишина. User'у безродному, сталбыть, отвечает, а мне - не хочет.
Смотрим внутрь скрипта - ага, понятно. CN у меня фамилия с именем на русском языке - почти наверняка проблема с кодировками. Что там использует родной виндовый cmd.exe по умолчанию?
c:\chcp
'Текущая кодовая страница: 866'
ОК. Декодируем, преобразуем в юникод, спрашиваем домен, выводим на экран результат в той же 866... упс! И еще раз упс! И еще.
Пока я, готовясь уже завыть на луну не набил случайно <>.decode('cp151') - вуаля! Сработало.
Смотрим, что происходит:
Откуда взялись эти квадраты мне лично решительно непонятно - объясните люди добрые, кто тут дурак, а? А то ведь так и помру от любопытства, MS во всех смертных грехах обвиняя...
Крикнул - а в ответ, натурально, тишина. User'у безродному, сталбыть, отвечает, а мне - не хочет.
Смотрим внутрь скрипта - ага, понятно. CN у меня фамилия с именем на русском языке - почти наверняка проблема с кодировками. Что там использует родной виндовый cmd.exe по умолчанию?
c:\chcp
'Текущая кодовая страница: 866'
ОК. Декодируем, преобразуем в юникод, спрашиваем домен, выводим на экран результат в той же 866... упс! И еще раз упс! И еще.
Пока я, готовясь уже завыть на луну не набил случайно <>.decode('cp151') - вуаля! Сработало.
Смотрим, что происходит:
Откуда взялись эти квадраты мне лично решительно непонятно - объясните люди добрые, кто тут дурак, а? А то ведь так и помру от любопытства, MS во всех смертных грехах обвиняя...