Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 7 из 7
  1. #1
    Аватар для KrutoyKrosch
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.02.2016
    Сообщений
    301
    Репутация:
    7 ±

    Открытие файла

    Как можно сделать программку на C++ которая бы открывала Word (не записывало в массив содержимое, а именно открывала Word и в Word'e этот файл) файл (если на компе есть офис, если нет то ошибку бы выбивала) и выполняла какие то другие действия? И именно что бы этот Word файл был внутри нее, а не отдельно на диске.

  2. #2
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    У меня сейчас подобный проект. MS - умеют делать адовую вещь. .doc очень трудно распарсить, есть 3 варианта: написать свой парсер, использовать OLE и вообще хардкордный - выпилить открытие файлов из OpenOffice/LibreOffice (придется часа 3 поискать по файлам, чтобы найти где открывается файл + там много зависимостей их придется тоже выпилить, что бы заработало) Что касается docx, то это openxml и его не так трудно распарсить.



    А, теперь по теме:
    • Файл находится в папке с программой или как?

    Если так, то можно попробовать:
    PHP код:
    system("START example.doc"); 
    Я не уверен, что это сработает, но можно попробовать ради эксперимента.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  3. Пользователь сказал cпасибо:
    KrutoyKrosch (04.02.2017)
  4. #3
    Аватар для KrutoyKrosch
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.02.2016
    Сообщений
    301
    Репутация:
    7 ±
    Пишет что файл не найден. Я хочу что бы он вместе с программой компилировался (ну или как правильней сказать), а не как отдельный файл.



    - - - Добавлено - - -

    Подумал, понял что так не реально. А можно хотя бы сделать так, что бы при запуске программы этот Word файл распаковывался из этой программы (если их вместе копилировать) в ту же папку где лежит программа и уже открывался ?

  5. #4
    Аватар для KrutoyKrosch
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.02.2016
    Сообщений
    301
    Репутация:
    7 ±
    Дошло как сделать можно, спасибо за подсказку с

    PHP код:
    system("START example.doc"); 
    Сработало.

    - - - Добавлено - - -

    Что бы уж вторую тему не создавать, помогите написать код который крашнет винду... Деление на 0 - Error: деление на 0 не возможно, строка ...

    Потом пробовал:
    PHP код:
    int 
    INT_MIN
    / -1
    Это тоже не крашит, просто выводит число INT_MIN и все... Как еще предложите? Может можно как то с памятью поиграться ?
    Последний раз редактировалось KrutoyKrosch; 04.02.2017 в 05:26.

  6. #5
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Старый трюк с делением на ноль не пройдет. Они пофиксили его. Раньше проходил (статью на хабру оставил), а щас я не имею представление, что может уронить OS. Да и зачем это? Пишешь программу, которая нарушает работу OS пользователя?
    Цитата Сообщение от KrutoyKrosch Посмотреть сообщение
    PHP код:
    int 
    INT_MIN
    / -1
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

  7. #6
    Аватар для KrutoyKrosch
    Пользователь

    Статус
    Оффлайн
    Регистрация
    26.02.2016
    Сообщений
    301
    Репутация:
    7 ±
    Там долгая история, но это для благих целей... Просто написал программку которая вносить небольшие изменения в систему, а что бы они применились нужно перезагрузить комп насильно и не заметно. Мне в голову пришел самый лучший вариант положить винду, что бы она как бы и перезагрузилась и пользователь не понял что произошло. Хехе

  8. #7
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Это зачем такое? Если это нужно для благих целей, то можно перезагрузить систему с предупреждением и все.
    Цитата Сообщение от KrutoyKrosch Посмотреть сообщение
    Там долгая история, но это для благих целей... Просто написал программку которая вносить небольшие изменения в систему, а что бы они применились нужно перезагрузить комп насильно и не заметно. Мне в голову пришел самый лучший вариант положить винду, что бы она как бы и перезагрузилась и пользователь не понял что произошло. Хехе
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •