18 / 18 / 5
Регистрация: 08.10.2009
Сообщений: 94

Запуск почтового клиента c++

06.07.2011, 00:31. Показов 3260. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День добрый!

Возникла следующая задача: при клике по объекту (не важно по какому, да и не важно при каком триггере) должно происходить следующее:

открываться почтовый клиент по-умолчанию с уже заполненными данными (которые я туда подсуну - из переменной, или файла или свойства какого другого объекта): "Кому" и Тело самого письма.

Как реализовать на C++? Среда - Microsoft Visual Studio 2010

Просьба - если Вы в своем совете будете использовать функции из каких-либо библиотек, пишите какой #include нужно сделать. Либо, если библиотека нестандартная (может Ваша, а может еще чья-то) прикладывайте ее, или давайте ссылку на нее, или хотя бы тот отрезок библиотеки, где есть объявление/описание и тело используемой функции.

Заранее премного благодарен!!!

Добавлено через 45 секунд
Буду рад также отдельным примерам (особенно для MS Outlook 2003-2010)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.07.2011, 00:31
Ответы с готовыми решениями:

Определение и запуск почтового клиента
Подскажите, как программно определить почтового клиента, установленного на компьютере, и запустить его. Другими словами, на форме есть...

Запуск почтового клиента из приложения
Не могу понять, пытаюсь запустить из приложения почтовый клиент для отправки текста, но активность при наличии данного кода вылетает,...

Открытие почтового клиента
Доброго времени суток. есть такая ссылка: <a href="mailto:test@mail.ru?subject=Тестовый%20заголовок">Отправить...

7
 Аватар для xAtom
935 / 760 / 299
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
06.07.2011, 01:37
Вот держи.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <Windows.h>
#include <shellapi.h>
 
void  main(void) {
 
   char email[512];
   char*  mail    = "mother@mail.ru";
   char*  subject= "Я сдал экзамен"; 
   char*  body  = "Привет Мама, я здал на пять все экзамены.";
 
   wsprintf(email, "mailto:%s?subject=%s&cc=%s&bcc=%s&body=%s", mail, subject, mail, mail, body);
 
   ShellExecute(NULL, "open", email,NULL,NULL, SW_SHOWDEFAULT);
}
1
18 / 18 / 5
Регистрация: 08.10.2009
Сообщений: 94
06.07.2011, 23:11  [ТС]
Спасибо, но Visual Studio 2010 выдает следующие ошибки:

1>SpiceWorks Parser.cpp(44): error C2664: 'wsprintfW' : cannot convert parameter 1 from 'char [512]' to 'LPWSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>SpiceWorks Parser.cpp(46): error C2664: 'ShellExecuteW' : cannot convert parameter 2 from 'const char [5]' to 'LPCWSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
0
Каратель
Эксперт С++
6610 / 4029 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
07.07.2011, 00:04
замени char на wchar_t
0
18 / 18 / 5
Регистрация: 08.10.2009
Сообщений: 94
07.07.2011, 01:58  [ТС]
Не помогла замена(
0
18 / 18 / 5
Регистрация: 08.10.2009
Сообщений: 94
08.07.2011, 23:52  [ТС]
Так все таки в чем проблема? Что исправить в коде?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12841 / 7590 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
09.07.2011, 01:31
Цитата Сообщение от Neonjke Посмотреть сообщение
Так все таки в чем проблема? Что исправить в коде?
вот так отработало:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <Windows.h>
#include <shellapi.h>
 
int main(void) {
 
   char email[512];
   char*  mail    = "mother@mail.ru";
   char*  subject= "Я сдал экзамен"; 
   char*  body  = "Привет Мама, я здал на пять все экзамены.";
 
   /*wsprintf(email, "mailto:%s?subject=%s&cc=%s&bcc=%s&body=%s", mail, subject, mail, mail, body);*/
   wsprintfA(email, "mailto:%s?subject=%s&cc=%s&bcc=%s&body=%s", mail, subject, mail, mail, body);
 
   ShellExecute(NULL, "open", email,NULL,NULL, SW_SHOWDEFAULT);
   
   return 0;
}


Кстати... Судя по
здал
что-то сомневаюсь, что
на пять все экзамены
0
5499 / 4894 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
03.04.2014, 17:32
Цитата Сообщение от Neonjke Посмотреть сообщение
Спасибо, но Visual Studio 2010 выдает следующие ошибки:
1>SpiceWorks Parser.cpp(44): error C2664: 'wsprintfW' : cannot convert parameter 1 from 'char [512]' to 'LPWSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
1>SpiceWorks Parser.cpp(46): error C2664: 'ShellExecuteW' : cannot convert parameter 2 from 'const char [5]' to 'LPCWSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
Юникод, в свойствах проекта, отключить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.04.2014, 17:32
Помогаю со студенческими работами здесь

Реализации почтового клиента
Пишу некоторое подобие почтового клиента. Задача следующая - по очереди подключится к 10 почтовым ящикам и вернуть количество писем в них....

Ошибка почтового клиента
Подскажите, пожалуйста, настроила 1с на прием и отправку почты, но при попытке отправить и получить письма выходит ошибка ...

Разработка почтового клиента
Передо мной встала задача разработать полноценный почтовый клиент на c++. Можете посоветовать с чего начать? Ибо с сетями на c++ никогда не...

Написание примитивного почтового клиента
нужно сделать примитивный почтовый клиент на java. будет графический интерфейс с деревом сообщений.сообщения будут хранится в sqlite базе...

определение и вызов Почтового клиента
Подскажите каким образом возможно из программы на Visual C, определить почтового клиента по умолчанию (бат там или Outlook или еще чего),...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Unity 4D
GameUnited 13.06.2025
Четырехмерное пространство. . . Звучит как что-то из научной фантастики, правда? Однако для меня, как разработчика со стажем в игровой индустрии, четвертое измерение давно перестало быть абстракцией из. . .
SSE (Server-Sent Events) в ASP.NET Core и .NET 10
UnmanagedCoder 13.06.2025
Кажется, Microsoft снова подкинула нам интересную фичу в новой версии фреймворка. Работая с превью . NET 10, я наткнулся на нативную поддержку Server-Sent Events (SSE) в ASP. NET Core Minimal APIs. Эта. . .
С днём независимости России!
Hrethgir 13.06.2025
Решил побеседовать, с утра праздничного дня, с LM о завоеваниях. То что она написала о народе, представителем которого я являюсь сам сначала возмутило меня, но дальше только смешило. Это чисто. . .
Лето вокруг.
kumehtar 13.06.2025
Лето вокруг. Наполненное бурями и ураганами событий. На фоне магии Жизни, священной и вечной, неумелой рукой человека рисуется панорама душевного непокоя. Странные серые краски проникают и. . .
Популярные LM модели ориентированы на увеличение затрат ресурсов пользователями сгенерированного кода (грязь -заслуги чистоплюев).
Hrethgir 12.06.2025
Вообще обратил внимание, что они генерируют код (впрочем так-же ориентированы разработчики чипов даже), чтобы пользователь их использующий уходил в тот или иной убыток. Это достаточно опытные модели,. . .
Топ10 библиотек C для квантовых вычислений
bytestream 12.06.2025
Квантовые вычисления - это та область, где теория встречается с практикой на границе наших знаний о физике. Пока большая часть шума вокруг квантовых компьютеров крутится вокруг языков высокого уровня. . .
Dispose и Finalize в C#
stackOverflow 12.06.2025
Работая с C# больше десяти лет, я снова и снова наблюдаю одну и ту же историю: разработчики наивно полагаются на сборщик мусора, как на волшебную палочку, которая решит все проблемы с памятью. Да,. . .
Повышаем производительность игры на Unity 6 с GPU Resident Drawer
GameUnited 11.06.2025
Недавно копался в новых фичах Unity 6 и наткнулся на GPU Resident Drawer - штуку, которая заставила меня присвистнуть от удивления. По сути, это внутренний механизм рендеринга, который автоматически. . .
Множества в Python
py-thonny 11.06.2025
В Python существует множество структур данных, но иногда я сталкиваюсь с задачами, где ни списки, ни словари не дают оптимального решения. Часто это происходит, когда мне нужно быстро проверять. . .
Работа с ccache/sccache в рамках C++
Loafer 11.06.2025
Утилиты ccache и sccache занимаются тем, что кешируют промежуточные результаты компиляции, таким образом ускоряя последующие компиляции проекта. Это означает, что если проект будет компилироваться. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru