@DWZ

Как подружить fciv.exe под Win 7 с русскимим именами файлов?

Утилита командной строки fciv.exe под Windows 7 SP1 Pro 64 bit Rus не понимает маленькие буквы в русских именах файлов. chcp 1251 уже есть. Благодаря chcp 1251 имеем нормальный русский язык при выводе, но fciv.exe преобразует передаваемые русские имена по каким-то своим правилам и в результате не может их открыть.
C:\Program Files (x86)\Hash>fciv.exe АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
//
// File Checksum Integrity Verifier version 2.05.
//
аБВГДЕИЖзиЙКлМНОпРСТуфхЦЧШЩЪыьЭЮя\*


С большими буквами почти всё в порядке, только "Ё" почему-то переводится в "И", а вот с маленькими - засада

C:\Program Files (x86)\Hash>fciv.exe абвгдеёжзийклмнопрстуфхцчшщъыьэюя
//
// File Checksum Integrity Verifier version 2.05.
//
абвдеё кмностуфхцъьэюя\*


Смотрим
C:\Program Files (x86)\Hash>fciv.exe АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ > CHARSET
C:\Program Files (x86)\Hash>fciv.exe абвгдеёжзийклмнопрстуфхцчшщъыьэюя >> charset

5db8289693651146389242.png

и видим, что "г" преобразуется в символ с кодом 0x03, "з", "и", "й" в 0x7, 0x08, 0x09, "л" в 0x0B, "р", "с" в 0x0F, 0x10, "ч", "ш", "щ" в 0x17, 0x18, 0x19, "ы" в 0x1B соответственно. То есть из кодов этих букв зачем-то вычитается 0xE0.

(Я не из-под FAR'а запускал, если что. Просто смотрел в нём)

Переводить имена в верхний регистр или переименовывать в латиницу - не выход. Неужели ничего нельзя сделать?
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
tsklab
@tsklab
Здесь отвечаю на вопросы.
RunFCIV.cmd абвгдеёжзийклмнопрстуфхцчшщъыьэюя
cmd:
fciv.exe %~s1
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы