Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (все версии) - часть 4

Модерирует : ShIvADeSt

ShIvADeSt (28-06-2009 02:10): Продолжение в http://forum.ru-board.com/topic.cgi?forum=33&topic=10477  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

morder11

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
При отладке оказалось что формы имеют имена Form4 и Form4_1, вместо Form4TRADE и  Form4GENTRADE
 
Почему так произошло?
Подскажите плиз литературу по работе с несколькими экземплярами динамических форм, возможно неправильно их создаю

Всего записей: 3 | Зарегистр. 12-04-2009 | Отправлено: 16:37 12-04-2009
ZBEP



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins, спс.
Немного подругому решил эту проблемку, но эффект тотже))
Теперь вместа 13 метров Unit10.pas занимает 907 КБ. ))

Всего записей: 186 | Зарегистр. 09-04-2009 | Отправлено: 16:40 12-04-2009
Frodo_Torbins

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
morder11
Немного не в тему, но возможно поможет: Жизнь и смерть в режиме run-time.
ZBEP
Рад за вас, хотя нет предела совершенству

Всего записей: 2319 | Зарегистр. 24-05-2007 | Отправлено: 17:26 12-04-2009 | Исправлено: Frodo_Torbins, 17:28 12-04-2009
morder11

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Frodo_Torbins
Спасибо покопаюсь.  
Проблему не решил но придумал способ попрорще и обошелся без этих мудрений)

Всего записей: 3 | Зарегистр. 12-04-2009 | Отправлено: 18:33 12-04-2009
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
С днём космонавтики! Всех программистов.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 20:06 12-04-2009
SANIOK_AV



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток!
такой вопрос:
можно ли как-то автоматизировать (в Делфи) и как это лучше сделать:
создание нового письма в MS Outlook
загнав в тему письма определённую информацию, в текст письма текст из файла (либо из RichEdit) и прикрепить к письму определённый файл
?
Заранее благодарен!

Всего записей: 485 | Зарегистр. 31-03-2009 | Отправлено: 12:19 13-04-2009 | Исправлено: SANIOK_AV, 12:22 13-04-2009
greenpc

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SANIOK_AV

Цитата:
создание нового письма в MS Outlook  

тяжело - перехват чужого приложения
ShellExecute(Handle, 'open', 'mailto:email1&cc=email3?subject=Это%20тема&body=это%20текст%20письма%0dЭто%20другая%20строка ',
nil, nil, SW_SHOWNORMAL);
а если самому создавать и отправлять, то
indy или похожие компоненты в помощь

Всего записей: 401 | Зарегистр. 18-04-2003 | Отправлено: 12:27 13-04-2009 | Исправлено: greenpc, 12:48 13-04-2009
SANIOK_AV



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
greenpc

Цитата:
а если самому создавать и отправлять

что имется в виду?

Цитата:
indy или похожие компоненты в помощь

что за компонент и что он делает?
 

Всего записей: 485 | Зарегистр. 31-03-2009 | Отправлено: 12:31 13-04-2009
DmitryKz

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
тяжело - перехват чужого приложения  

Ну, вряд ли прямо так тяжело. В конце концов COM-интерфейс у офисных приложений никто не отменял. А с ВинАПИ у меня был такой код, откуда брал не помню:
SANIOK_AV

Код:
ShellExecute(GetDesktopWindow(),
              'open',
              PChar('mailto:address@address.com'+ //заполняю мыло
              '?subject=Здесь%20тема%20письма'+
              '&body=Сам%20Текст%20письма%20'+Edit1.Text+' '+Edit2.Text+
              '%0d%0aЕще%20что-нибудь'),
              nil, nil, SW_SHOWNORMAL);

Всего записей: 3145 | Зарегистр. 29-09-2005 | Отправлено: 12:42 13-04-2009 | Исправлено: DmitryKz, 12:43 13-04-2009
Coltrain

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SANIOK_AV

Цитата:
можно ли как-то автоматизировать (в Делфи) и как это лучше сделать:
создание нового письма в MS Outlook
загнав в тему письма определённую информацию, в текст письма текст из файла (либо из RichEdit) и прикрепить к письму определённый файл  

 
Можно при помощи MAPI.  Примерно так:
 

Цитата:
 
uses MAPI;
 
....
 
type
 TPathName=Array[0..MAX_PATH] of Char;
 
....
 
Function SendMail(ARecepients, ASubject, AMessage, AFiles: string): integer;
var tmpName2     : TPathName;
    MapiMessage : TMapiMessage;
    MapiFileDesc : TMapiFileDesc;
    ToRec        : TMapiRecipDesc;
    MError       : Cardinal;
    MAPI_Session : Cardinal;
    Flag         : Integer;
    WndList      : Pointer;
 
begin
  MError := MapiLogon(Application.Handle,PChar(''),PChar(''),
                       MAPI_LOGON_UI or MAPI_NEW_SESSION, 0, @MAPI_Session);
 
  if MError <> SUCCESS_SUCCESS then
    begin
      result := MError;
      MessageDlg('Ошибка при установлении сесси. Связывайтесь с разработчиком программы',mtError,[mbOK],0);
      Exit;
    end;
 
  FillChar(MapiMessage,SizeOf(MapiMessage),#0);
  FillChar(ToRec,SizeOf(ToRec),#0);
  FillChar(MapiFileDesc,SizeOf(MapiFileDesc),#0);
 
  ToRec.ulReserved := 0;
  ToRec.ulRecipClass := 0;
  ToRec.lpszName := PChar('');
  ToRec.lpszAddress := Pchar(ARecepients);
  ToRec.ulRecipClass := MAPI_TO;
  ToRec.ulEIDSize := 0;
  ToRec.lpEntryID := nil;
 
  With MapiFileDesc do
  begin
    ulReserved:=0;
    flFlags:=0;
    nPosition:=Cardinal(-1);
    lpszPathName:=PChar(AFiles);
    StrPCopy(tmpName2,ExtractFileName(AFiles));
    lpszFileName:=tmpName2;
    lpFileType:=nil;
  end;
 
  with MapiMessage do
  begin
    ulReserved := 0;
    lpszSubject := PChar(ASubject);
    lpszNoteText := nil;
    lpszMessageType := nil;
    lpszDateReceived := nil;
    lpszConversationID := nil;
    flFlags := 0;
    lpOriginator := nil;
    nRecipCount := 1;
    lpRecips := @ToRec;  
    nFileCount := 1;
    lpFiles := @MapiFileDesc;
  end;
 
  WndList := DisableTaskWindows(0);
 
//  Flag := MAPI_DIALOG or MAPI_LOGON_UI or MAPI_NEW_SESSION
//  Flag := MAPI_LOGON_UI
    Flag := MAPI_DIALOG;
 
  try
    MError:=MapiSendMail(0, Application.Handle,
      MapiMessage,
      Flag, 0);
  finally
    EnableTaskWindows(WndList);
  end;
 
  MAPILogOff(MAPI_Session, Application.Handle,0,0);
  result := MError;
end;
 

Всего записей: 160 | Зарегистр. 31-07-2002 | Отправлено: 12:43 13-04-2009
kirmalex

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Этот авто выпросил бан

Всего записей: 14 | Зарегистр. 03-04-2009 | Отправлено: 13:34 13-04-2009 | Исправлено: ShIvADeSt, 14:20 13-04-2009
SANIOK_AV



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
DmitryKz

Цитата:
 
Код:ShellExecute(GetDesktopWindow(),  
              'open',  
              PChar('mailto:address@address.com'+ //заполняю мыло  
              '?subject=Здесь%20тема%20письма'+  
              '&body=Сам%20Текст%20письма%20'+Edit1.Text+' '+Edit2.Text+  
              '%0d%0aЕще%20что-нибудь'),  
              nil, nil, SW_SHOWNORMAL);  

при выполнении этого кода сразу произойдёт отправка?
мне просто нужно только создание нового письма...заполнение темы...самого содержимого письма...и прикрепление файла...
а выбор адреса и отправка эт вручную предпологается сделать...

Всего записей: 485 | Зарегистр. 31-03-2009 | Отправлено: 13:40 13-04-2009
kirmalex

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Этот автор выпросил бан.

Всего записей: 14 | Зарегистр. 03-04-2009 | Отправлено: 13:46 13-04-2009 | Исправлено: ShIvADeSt, 14:21 13-04-2009
SANIOK_AV



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Coltrain
пока ругается на:

Цитата:
 
 TPathName=Array[0..MAX_PATH] of Char;  

 
expected ':' but '=' found
 
я эту строку пытаюсь вставить в блок type
в своей программе...
может я чёт не так понял...

Всего записей: 485 | Зарегистр. 31-03-2009 | Отправлено: 13:50 13-04-2009 | Исправлено: SANIOK_AV, 13:56 13-04-2009
DmitryKz

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SANIOK_AV
Запустится только Оутлук с уже готовым текстом письма, заполненной темой письма и адресом. Отправлять надо вручную, то есть, если не хочешь автоматизировать. Адрес, конечно, ничто не мешает править вручную.

Всего записей: 3145 | Зарегистр. 29-09-2005 | Отправлено: 14:01 13-04-2009
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Запустится только Оутлук с уже готовым текстом письма, заполненной темой письма и адресом. Отправлять надо вручную, то есть, если не хочешь автоматизировать. Адрес, конечно, ничто не мешает править вручную.

Поэтому я для этих целей либо юзаю The bat (он умеет сразу отправлять) либо есть консольный клиент (не помню имя) он тоже это умеет делать.

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 14:23 13-04-2009
DmitryKz

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ShIvADeSt
Ну, скорее всего, я неправильно выразился - запустится почтовый клиент по умолчанию, насколько я понял - так как, например, когда на системе офиса нет запускается Outlook Express. С Бэтом не проверял Но вроде автору вопроса надо именно вручную письма отправлять.

Всего записей: 3145 | Зарегистр. 29-09-2005 | Отправлено: 14:28 13-04-2009
Coltrain

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SANIOK_AV

Цитата:
я эту строку пытаюсь вставить в блок type
в своей программе...
может я чёт не так понял...

 
Да нет. Все так.
Попробуй напрямую задать тип переменной.
 
Добавлено:
Ну т.е. вместо  
 tmpName2 : TPathName;
Делай
 tmpName2 :Array[0..MAX_PATH] of Char;  
а объявление типа убери

Всего записей: 160 | Зарегистр. 31-07-2002 | Отправлено: 14:28 13-04-2009 | Исправлено: Coltrain, 14:30 13-04-2009
SANIOK_AV



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Coltrain

Цитата:
В теле функции они не используются

 
а как же:
 
StrPCopy(tmpName2,ExtractFileName(AFiles));  
lpszFileName:=tmpName2;  
 
Coltrain

Цитата:
Добавлено:  
Ну т.е. вместо  
 tmpName2 : TPathName;  
Делай  
 tmpName2 :Array[0..MAX_PATH] of Char;  
а объявление типа убери

 
понял))

Всего записей: 485 | Зарегистр. 31-03-2009 | Отправлено: 14:36 13-04-2009 | Исправлено: SANIOK_AV, 14:39 13-04-2009
DmitryKz

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята, а вот такой вопрос по коду, который я привел:
скажем, если хочется добавить к сообщению вложению, то, вроде как в командную строку нужно еще добавить параметр &attach=FileName.
Например, я так сделал для теста:

Код:
'mailto:aaaa@bbb.com?subject&body=bodytext&CC=aaaa&bcc=dddd&attach=''c:\1.txt'''

Но тем не менее это не работает - вложение не появляется в письме.
Что может быть не так?
 
SANIOK_AV
В дополнение к сообщению Coltrain можно привести еще такую выдержку из электронной справки Архангельского - Подробнее...

Всего записей: 3145 | Зарегистр. 29-09-2005 | Отправлено: 18:16 13-04-2009 | Исправлено: DmitryKz, 18:18 13-04-2009
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (все версии) - часть 4
ShIvADeSt (28-06-2009 02:10): Продолжение в http://forum.ru-board.com/topic.cgi?forum=33&topic=10477


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru