Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/25: Рейтинг темы: голосов - 25, средняя оценка - 4.68
84 / 11 / 7
Регистрация: 10.02.2012
Сообщений: 225
Записей в блоге: 3

Открыть файл Word

29.06.2016, 10:00. Показов 5213. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Cреда разработки RAD XE3, не могу открыть никак файл MS Word. В Buildere 6 все работало нормально.
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
String str_errors;
String str="d:\\ttt.docx";
Variant VarApp,VarDoc;
  try
  {
   VarApp=CreateOleObject("Word.Application");
   VarDoc=VarApp.OlePropertyGet("Documents");
   VarDoc.OleProcedure("Open",str.c_str());
   VarApp.OlePropertySet("Visible",true);
 
  }
  catch(Exception &ex)
  {
  str_errors=ex.Message;
  ShowMessage(str_errors);
 
 }
Выдает ошибку файл d:\ttt не найден. Пробовал еще вариант str.w_str() и просто строка str. Кто сталкивался помогите плиз?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.06.2016, 10:00
Ответы с готовыми решениями:

Как открыть html-файл через MS Word и MS Excel?
Здравствуйте, вопрос в заголовке темы. Конкретно интересует как это сделать с ShellExecute. Буду благодарен за пример. Добавлено через...

Открыть папку и выделить файл/открыть файл в Excel
Привет, как программно открыть папку и выделить файл ? также как заставить Excel открыть файл ? в Delphi делал это так: ...

Открыть документ word
Подскажите пожалуйста каким компонентом и как открыть документ .doc на чтение?

10
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33374 / 21499 / 8235
Регистрация: 22.10.2011
Сообщений: 36,894
Записей в блоге: 12
29.06.2016, 10:44
Лучший ответ Сообщение было отмечено kelabod как решение

Решение

C++
1
VarDoc.OleProcedure("Open", WideString(str));
(хотя вообще-то Open - это функция, а не процедура, следовательно по-хорошему нужно использовать OleFunction)
1
279 / 156 / 52
Регистрация: 30.06.2011
Сообщений: 1,712
29.06.2016, 13:01
Цитата Сообщение от volvo Посмотреть сообщение
это функция, а не процедура
Уважаемый volvo, объясните пожалуйста в чем разница между функцией и процедурой.
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
29.06.2016, 13:23
Цитата Сообщение от d7d1c Посмотреть сообщение
Уважаемый volvo, объясните пожалуйста в чем разница между функцией и процедурой
Уважаемый, вот я смотрю, вы на форуме программистов зареганы давно уже. Откуда такие вопросы всплывают ?
0
279 / 156 / 52
Регистрация: 30.06.2011
Сообщений: 1,712
29.06.2016, 13:56
Цитата Сообщение от Почтальон Посмотреть сообщение
Откуда такие вопросы всплывают ?
Все вопросы от не знания, но желания знать. А Вы, видимо, ответ на вопрос знаете. Поделитесь.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33374 / 21499 / 8235
Регистрация: 22.10.2011
Сообщений: 36,894
Записей в блоге: 12
29.06.2016, 14:38
Цитата Сообщение от d7d1c Посмотреть сообщение
в чем разница между функцией и процедурой
Метод, возвращающий значение - функция, не возвращающий - процедура. Documents.Open возвращает значение...
3
279 / 156 / 52
Регистрация: 30.06.2011
Сообщений: 1,712
29.06.2016, 16:03
Цитата Сообщение от volvo Посмотреть сообщение
Метод, возвращающий значение - функция, не возвращающий - процедура.
А если метод через свои параметры возвращает значение (как в ниже приведенном примере), то тогда это процедура?
C++
1
2
3
4
void metod(int &data)
{
 data = 10;
}
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
29.06.2016, 16:10
Процедура - это подпрограмма, выполнение кода возвращается туда, откуда была вызвана процедура.

Добавлено через 30 секунд
d7d1c, вы привели процедуру.
0
279 / 156 / 52
Регистрация: 30.06.2011
Сообщений: 1,712
29.06.2016, 16:26
Цитата Сообщение от Почтальон Посмотреть сообщение
выполнение кода возвращается туда, откуда была вызвана процедура
После выполнения функции, выполнение кода тоже возвращается туда, откуда эта функция была вызвана.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33374 / 21499 / 8235
Регистрация: 22.10.2011
Сообщений: 36,894
Записей в блоге: 12
29.06.2016, 16:42
Цитата Сообщение от d7d1c Посмотреть сообщение
А если метод через свои параметры возвращает значение
Это называется побочный эффект, и не предназначено для использования настолько часто, как оно используется.

Цитата Сообщение от Почтальон Посмотреть сообщение
Процедура - это подпрограмма, выполнение кода возвращается туда, откуда была вызвана процедура
Нет. Разница не в этом. Разница - в том, что процедуру нельзя использовать в выражениях, а функцию можно. Скажем, для приведенной выше подпрограммы нельзя написать:
C++
1
some_var = metod(param);
, а если будет функция - то можно будет.
1
84 / 11 / 7
Регистрация: 10.02.2012
Сообщений: 225
Записей в блоге: 3
05.07.2016, 16:09  [ТС]
спасибо за обсуждение, volvo отдельное за помощь!!!!! Добавил код в примеры, но сделал на visual basic 6, как оказалось меньше гемора. Задача была такая:есть 200 файлов в Worde нужно было пробежаться по документам найти нужные слова и заменить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.07.2016, 16:09
Помогаю со студенческими работами здесь

Открыть файл с по-мощью...
Добрый вечер всем! Хочу сделать, чтобы по клику по файлу он открывался в моей программе. Как это сделать???

Открыть файл в ворде
Есть такой код, ошибки не выдает, но файл не открывает, в чем проблема? ...

Открыть файл!ы! с помощью...?
Воя могу сделать так, что бы кликнув по файлу - открывалась моя прога и в ней открывался мой файл. if(ParamStr(1)!="") { ...

Открыть файл в мемо
Доброго времени суток!Помогите, пожалуйста, с вопросом. Допустим, я создал на пустой форме Edit, Memo, Button и TOpenDialog.С помощью...

Открыть папку, а не файл
С помощью OpenDialog можно добавить файл. А как добавить всю папку с файлами?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru