2014-11-13 3 views
0

Я занимаюсь программой на C++ и вам нужно создать электронное письмо внутри программы C++, которое будет отправлено в Outlook. код им пытаются использовать до сих пор что-то вроде этогоотправить адрес электронной почты электронной почты внутри C++

system("cmd /c OUTLOOK.EXE /c ipm.note /m \"[email protected]&[email protected]&subject=\"TestEmail\"&body=Hello%20World\""); 

При запуске этого он будет генерировать электронную почту и заполнить в поле, но не ЦК, предмет, или тело. Скорее он говорит, что не распознает эти поля

Также любой знает, как я могу передать их в виде строки в функцию?

Спасибо

+0

Это не функция. Это функция CALL. Вы просто вызываете outlook через аргументы командной строки. И, похоже, нет аргументов командной строки для указания тела электронной почты через CLI. http://office.microsoft.com/en-ca/outlook-help/command-line-switches-HP001003110.aspx возможно '/ f' для загрузки файла .msg –

+0

Знаете ли вы, что похожий вызов или функция, которая может выполнить это? – Lightning77

+0

MS Office - это целая ошибка программирования apis, до такой степени, что офис - это скорее api, из которых слово/excel/outlook - это конкретные реализации/интерфейсы. В Outlook появится apis. –

ответ

0

Так это выглядит, как ваш недостаток является отсутствие «?» перед «субъект» в соответствии с: http://support2.microsoft.com/default.aspx?scid=kb;en-us;181991

const string to{"[email protected]"}; 
const string cc{"[email protected]"}; 
const string subject{"TestEmail"}; 
const string body{"Hello%20World"}; 
const string test{"cmd /c OUTLOOK.EXE /c ipm.note /m \"" + to + "&cc=" + cc + "?subject=" + subject + "&body=" + body + '"'}; 

cout << test; 
system(test); 

В качестве временного изменения в код можно добавить test. Это напечатает строку. Перейдите в папку OUTLOOK.exe в командной строке (мой: C: \ Program Files (x86) \ Microsoft Office \ Office14). Затем введите std::string test, который был распечатан, удалив префикс «cmd/c», который должен запускаться. Если в командной строке не нужно при необходимости при необходимости отрегулировать команду, то соответствующим образом скорректируйте свой код. Моя команда, например, выглядит следующим образом:

OUTLOOK.EXE/с IPM.NOTE/м "[email protected] & [email protected]?subject=TestEmail & тело = Hello% 20World"

+0

Спасибо, он позволит мне передать в качестве строки сейчас, но я все еще получаю это. ***. 'cc' не распознается как внутренняя или внешняя команда, операционная программа или командный файл. «субъект» не распознается как внутренняя или внешняя команда, действующая программа или командный файл. «тело» не распознается как внутренняя или внешняя команда, исполняемая программа или командный файл. – Lightning77

+0

@ Lightning77 Я отредактировал свой ответ, надеюсь, что вы начнете. –

Смежные вопросы