델파이 사용자 입니다.
그런데 일반 ERP 프로그램만 하다 보니
메일 보내기 등의 프로그램에 대한 지식이 없어요
좋은샘플있으면 고수님들의 조언 부탁 합니다
!꾸벅!
DELPHI6, 혹은 7버젼도 관계 없고요
보통 고수님들이 다른다람에게 알려는는것을 보면 이미 많은
부분은 알고 있는것으로 간주 하고 요점만 알려주시는 경향이 있는데
저는 풀소스 샘플및 자세한 설명이 필요해요
왜냐면 꼴통이라 상세한 설명이 없으면 잘 이해를 못해요
혹!
다음에 ERP관련 프로그램은 제가 언제든지 알려드릴께요
인사/급여/영업/생산/자재/물류...
프로그램개발은 잘 못하야도 LOGIC에는 수십년 경험및 개발 소스가 있어요!
요구 하신 간단한 셈플을 올려 봅니다...
예전에 어딘가에서 받은 셈플인데..
제가 만든건 어디가고 이것만 있네여,,,,
물론 이거보다도 간단하게 처리할수 있긴 한데...
조금 귀챠니즘 때문에...
그럼.. 즐코 하세요...
일본에서.... 류... 가 올립니다..
<!--CodeS-->
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,Mapi, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function SendMailMAPI(const Subject, Body, FileName, SenderName, SenderEMail,
RecepientName, RecepientEMail: String) : Integer;
var
message: TMapiMessage;
lpSender,
lpRecepient: TMapiRecipDesc;
FileAttach: TMapiFileDesc;
SM: TFNMapiSendMail;
MAPIModule: HModule;
begin
FillChar(message, SizeOf(message), 0);
with message do
begin
if (Subject<>'') then
begin
lpszSubject := PChar(Subject)
end;
if (Body<>'') then
begin
lpszNoteText := PChar(Body)
end;
if (SenderEMail<>'') then
begin
lpSender.ulRecipClass := MAPI_ORIG;
if (SenderName='') then
begin
lpSender.lpszName := PChar(SenderEMail)
end
else
begin
lpSender.lpszName := PChar(SenderName)
end;
lpSender.lpszAddress := PChar('SMTP:'+SenderEMail);
lpSender.ulReserved := 0;
lpSender.ulEIDSize := 0;
lpSender.lpEntryID := nil;
lpOriginator := @lpSender;
end;
if (RecepientEMail<>'') then
begin
lpRecepient.ulRecipClass := MAPI_TO;
if (RecepientName='') then
begin
lpRecepient.lpszName := PChar(RecepientEMail)
end
else
begin
lpRecepient.lpszName := PChar(RecepientName)
end;
lpRecepient.lpszAddress := PChar('SMTP:'+RecepientEMail);
lpRecepient.ulReserved := 0;
lpRecepient.ulEIDSize := 0;
lpRecepient.lpEntryID := nil;
nRecipCount := 1;
lpRecips := @lpRecepient;
end
else
begin
lpRecips := nil
end;
if (FileName='') then
begin
nFileCount := 0;
lpFiles := nil;
end
else
begin
FillChar(FileAttach, SizeOf(FileAttach), 0);
FileAttach.nPosition := Cardinal($FFFFFFFF);
FileAttach.lpszPathName := PChar(FileName);
nFileCount := 1;
lpFiles := @FileAttach;
end;
end;
MAPIModule := LoadLibrary(PChar(MAPIDLL));
if MAPIModule=0 then
begin
Result := -1
end
else
begin
try
@SM := GetProcAddress(MAPIModule, 'MAPISendMail');
if @SM<>nil then
begin
Result := SM(0, Application.Handle, message, MAPI_DIALOG or
MAPI_LOGON_UI, 0);
end
else
begin
Result := 1
end;
finally
FreeLibrary(MAPIModule);
end;
end;
if Result<>0 then
begin
MessageDlg('Error sending mail ('+IntToStr(Result)+').', mtError, [mbOk],
0)
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
SendMailMAPI('test','dkjfdkfdkfdjkf','','trtrtr','antipax@naver.com','antipax@naver.com','antipax@naver.com');
end;
end.
<!--CodeE-->