Gedeon |
Отправлено: 09.03.2006, 16:22 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Если файл с неюникодной кодировкой в ворде открывать руками, то он спрашивает какую выбрать, правильную если ткнуть все ОК, если я открываю док программно, то он скотина ставит ему по моему вьетнамскую виндовс, вместо ср1251, как-то его можно образумить?
|
|
avc* |
Отправлено: 09.03.2006, 17:07 |
|
Не зарегистрирован
|
А Encoding метода Open пробовал?
|
|
Gedeon |
Отправлено: 10.03.2006, 08:50 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Пробовал вчера но как-то неактивно, слету не получилось, сеня понастойчивее займусь.
|
|
Gedeon |
Отправлено: 10.03.2006, 12:15 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Все, получилось
CODE |
CoInitialize(NULL);
Variant vMSWord;
vMSWord = Variant::CreateObject("word.application");
vMSWord.OlePropertySet("Visible", true);
// начало обработки fbal1.prn
AnsiString fname = ExtractFilePath(Application->ExeName) + "cfbal1.prn";
OleVariant vFileName;
Variant vWDocuments,
vWDocument,
vReadOnly,
vConfirmConversions,
vAddToRecentFiles,
vReadPass,
vTemplPass,
vRevert,
vWritePasswordDocument,
vWritePasswordTemplate,
vFormat,
vEncoding;
vFileName = fname;
vConfirmConversions = false;
vAddToRecentFiles = false;
vReadOnly = true;
vReadPass = "";
vTemplPass = "";
vRevert = true;
vWritePasswordDocument = "";
vWritePasswordTemplate = "";
vFormat = "wdOpenFormatText";
vEncoding = 1251;
vWDocuments = vMSWord.OlePropertyGet("Documents");
vWDocument = vWDocuments.OleFunction("Open",
vFileName,
vConfirmConversions,
vReadOnly,
vAddToRecentFiles,
vReadPass,
vTemplPass,
vRevert,
vWritePasswordDocument,
vWritePasswordTemplate,
vFormat,
vEncoding); |
|
|
avc* |
Отправлено: 10.03.2006, 13:05 |
|
Не зарегистрирован
|
Отлично, поздравляю!
vFormat = "wdOpenFormatText";
vEncoding = 1251;
Все оказалось так просто
|
|
Gedeon |
Отправлено: 10.03.2006, 14:28 |
|
Ветеран
Группа: Модератор
Сообщений: 1742
|
Вот не зря говорят, если что-то долго не получается почитай наконец документацию .
|
|
|