database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 2464 게시물 읽기
No. 2464
이거 여기 적어도 될라나? C언어로 email에 파일첨부하는건데요~
작성자
이태웅
작성일
2001-03-21 17:38
조회수
5,299

#include <stdio.h>

#include "qDecoder.h"

 

int main()

{

char *from="보내는사람주소", *to="받는사람주소";

char *subj="파일첨부 테스트";

char *filename="첨부파일.txt";

char *sp1, *sp2;

char header[250];

int i, spsize;

FILE *fp;

 

qDecoder();

 

sprintf(header,"From: %s\nTo: %s\nSubject: %s\n", from, to, subj);

sp1 = qReadFile("인코딩.uue", &spsize); // uuencode /m 첨부파일 인코딩.uue

// /m으로 인코딩하면 base64방법으로 된데용~

sp2 = &sp1[0];

for (i=0;i<spsize;i++) // 앞의 헤더를 제거..(단지 한줄뿐임..)

{

if (sp2++[0]==0x0A) break;// ('\n'을 찾는 루틴)

}

fp=popen("/usr/sbin/sendmail /t /ba","w"); // sendmail 파이프통신 준비

fprintf(fp,header);

fprintf(fp,"MIME/Version: 1.0\n");

fprintf(fp,"Content/Type: multipart/mixed;\n\t");

fprintf(pf,"boundary="99999.TodayMailer."");

// multipart/mixed가 중요.. 바운더리는 각각의 요소를 구분하는 키!

fprintf(fp,"\nMime Prologue\n\n//99999.TodayMailer."); // // 두개를 앞에..

fprintf(fp,"\nContent/Type: text/plain; charset=euc/kr\n");

fprintf(fp,"Content/Transfer/Encoding: 8bit\n"); // 메일의 본문 부분..

fprintf(fp,"\nHi~\n\n");

fprintf(fp,"//99999.TodayMailer.\n"); // 두번째 요소..(첨부파일)

fprintf(fp,"Content/Type: application/octet/stream\n");

fprintf(fp,"name="%s"\n",filename);

// octet/stream으로 설정하면 그냥.. 파일임.. image/gif등으로 설정하면 걍! 보임

// 물론 gif파일이여야겠죠?

fprintf(fp,"Content/Transfer/Encoding: base64\nContent/Disposition");

// 인코딩방법을 표기

fprintf(fp,": attachment;\n\tfilename="%s"\n\n",filename);

fprintf(fp,"%s",sp2); // 인코딩된 파일의 데이터 부분만..

fprintf(fp,"\n//99999.TodayMailer.//\nMime Epilogue");

free(sp1);free(sp2); // sp2도 해줘야 하남? //; 해주잣!

 

pclose(fp);

return 1;

}

 

아거.. 며칠동안 자료수집과 연구.. 노가다를 거쳐서 그럭 저럭 작성하긴했는데..

다른 분들은 그런 짓 안했으면 좋겠네요.

리눅스에 C언어함수로(리눅스깔때 있던 라이브러리중에) 파일첨부하는 함수 있으면

죽어버릴꺼야.. ㅠ.ㅠ

하다못해.. uuencode해주는 함수라도 있으면.. ㅠ.ㅠ

하여간.. 위에 to,from등등은 뭐.. 다른 방법으로 만들수도있고..

sql서버에서 읽어올수도 있으니까요~ 뭐.. 전 테스트를 하기위해..

그냥 문자열을 썼는데.. 이거 참조하시는 분들은 sql서버에 email주소를

왕창~ 저장해놓고.. 1:1로 메일보내는데 사용하세요~

음.. 같은 편지라고 하더라도 1:1로 온 편지와 참조에 주루륵 도매급으로 온

메일이랑은 벌써 느낌부터가 틀리니까용~

 

근데.. 크레이지보드 소스에 이거있다고 하던데.. 그 소스 보신분?

좀 알려주세요~ ㅠ.ㅠ

행복하세요~

[Top]
No.
제목
작성자
작성일
조회
2471## varchar데이타타입의 최대길이는? ##
궁금한자
2001-03-23
3814
2472┕>Re: ## varchar데이타타입의 최대길이는? ##
정재익
2001-03-23 13:45:57
3913
2466date type을 가공할때
이동기
2001-03-22
3417
2467┕>Re: date type을 가공할때
정재익
2001-03-23 00:56:55
3883
246598에서 코끼리 실행시 에러가 납니다 ('04/30/2001' is not a valid date)라구여
김용운
2001-03-22
3763
2485┕>그건 win2000 pro 나 server에서도 마찬가지네여...ㅋㅋ 나두 몰러여..
아롱이
2001-03-25 17:47:38
3850
2508┕>Re: Window용 pgsql '04/30/2001' is not a valid date 문제 해결책
박성민
2001-03-29 11:32:21
3753
2464이거 여기 적어도 될라나? C언어로 email에 파일첨부하는건데요~
이태웅
2001-03-21
5299
2468┕>Re: 이거 여기 적어도 될라나? C언어로 email에 파일첨부하는건데요~
정재익
2001-03-23 01:00:01
4253
2462PostgreSQL7.0.3을 Windows2000에서 소스 커파일하는 법.
유창재
2001-03-21
4171
2463┕>Re: Thanx a lot ! :-)
정재익
2001-03-21 16:30:48
4163
2457[질문]postgresql 用 JDBC 2.0 드라이버 문제
김교식
2001-03-20
4235
2458┕>Re: [질문]postgresql 用 JDBC 2.0 드라이버 문제
정재익
2001-03-20 10:08:04
4086
2459 ┕>Re: Re: [질문]postgresql 用 JDBC 2.0 드라이버 문제
김교식
2001-03-20 10:16:14
4243
2455postgres 설치시 initdb 에서 에러
김신일
2001-03-19
5249
2456┕>Re: postgres 설치시 initdb 에서 에러
정재익
2001-03-19 19:45:24
5564
2460┕>Re: postgres 설치시 initdb 에서 에러
이태웅
2001-03-20 14:12:11
5643
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다