cdosys و ارسال نامه فارسي

mahdijalili

New Member
با سلام
آيا كسي ميدونه كه با cdosys چطوري ميشه نامه فارسي - يوني كد ارسال كرد؟
من كه هنگام ارسال نامه كاركترها به علامت سوال تبديل ميشن
 

AliReza26

Active Member
1 - فايل محتواي كدت با UTF-8 ذخيره شده؟؟؟؟؟؟
2 - فرمت نامه چيه؟؟؟؟؟؟؟؟
3 - كدت را بذار.....
 

mahdijalili

New Member
AliReza26 گفت:
1 - فايل محتواي كدت با UTF-8 ذخيره شده؟؟؟؟؟؟
2 - فرمت نامه چيه؟؟؟؟؟؟؟؟
3 - كدت را بذار.....

با تشكر از شما
1- اطلاعات از ديتابيس اكسس كه به صورت utf-8 ذخيره شده استخراج مي شود
2- ؟
3-
کد:
			'Dimension variables
			Dim objCDOSYSCon
			Dim intSendUsing
			
			'Calculate the port we are sendusing (1=localhost 2=network)
			If LCase(strOutgoingMailServer) = "localhost" OR strOutgoingMailServer = "http://127.0.0.1" OR strOutgoingMailServer = "127.0.0.1" Then
				intSendUsing = 1
			Else
				intSendUsing = 2
			End If
			
			'Create the e-mail server object
			Set objCDOSYSMail = Server.CreateObject("CDO.Message")
		    	Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")
		    	
		    	'Set and update fields properties
		    	With objCDOSYSCon
		    	 	
					' Specify the authentication mechanism to basic (clear-text) authentication cdoBasic = 1
					.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
					
					'SMTP Server username
					.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "my username"
					
					'SMTP Server password
					.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") ="my password"
		        	
		        	'Out going SMTP server
		        	.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = My OutgoingMailServer
		        	
		        	'SMTP port
		        	.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport")  = 25
		        	
		        	'CDO Port (1=localhost 2=network)
		        	.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = intSendUsing
		        	
		        	'Set CDO pickup directory if using localhost (CDO Port 1)
		        	If intSendUsing = 1 Then
		        		'CDO pickup directory (used for localhost service)
		        		.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverpickupdirectory") = "e:\pickup" 
		        	End If
		        	
		        	'Timeout
		        	.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
		        	
					.Fields("http://schemas.microsoft.com/cdo/configuration/languagecode") = "fa"
					
	        		'Update CDO configuration
	        		.Fields.Update 
	        	End With
			
			'Update the CDOSYS Configuration
			Set objCDOSYSMail.Configuration = objCDOSYSCon

			With objCDOSYSMail
				'Who the e-mail is from
				.From = strFromEmailName 
				'Who the e-mail is sent to
				.To = strRecipientName 
				'The subject of the e-mail
				.Subject = strSubject

				'Set the e-mail body format (HTMLBody=HTML TextBody=Plain)
				If blnHTML = True Then
				 	.HTMLBody = strEmailBodyMessage & strEmailBodyAppendMessage
				Else
					.TextBody = strEmailBodyMessage & strEmailBodyAppendMessage
				End If

				'Send the e-mail
				If NOT strOutgoingMailServer = "" Then .Send
			End with

			'Close the server mail object
			Set objCDOSYSMail = Nothing
 

behdadkh

New Member
دو تا كار ميشه كرد
اول اينكه توي خود كدي كه مينويسيد charset رو روي utf-8 تنظيم كنيد و حالا هر html رو كي ميخوايد باهاش بفرستيد يا اينكه charset رو توي body اون صفحه html كه ميخوايد بفرستيد تنظيم كنيد .

كه اصولا ست كردن charset توي خود ابجكت ميل تون دقيق تر و بهتر بنظر ميرسه .
 

AliReza26

Active Member
mahdijalili گفت:
AliReza26 گفت:
1 - فايل محتواي كدت با UTF-8 ذخيره شده؟؟؟؟؟؟
2 - فرمت نامه چيه؟؟؟؟؟؟؟؟
3 - كدت را بذار.....

با تشكر از شما
1- اطلاعات از ديتابيس اكسس كه به صورت utf-8 ذخيره شده استخراج مي شود
2- ؟
3-

منظورم از سوال اول اينه كه صفحه اي كه كد ارسال توش قرار ميگيره بايد در داخل تگ <head> كد زير قرار داشته باشه(اولين خط زياذ مهم نيست اما خط دوم وجودش در صفحه محتواي كدت ضروري است)...

کد:
<meta http-equiv="Content-Language" content="fa">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 

mahdijalili

New Member
MSDN ميكروسافت در مورد زبان فارسي چيزي ننوشته و فقط ضاهرا زباتهاي زيرو ساپورت مي كنه:
[align=left:6610b1f839]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cdosys/html/_cdosys_schema_configuration_languagecode.asp[/align:6610b1f839]

[align=left:6610b1f839]Arabic (Saudi Arabia) 1025 (0x401) ar-sa
Chinese 1028 (0x404) zh-tw
Czech 1029 (0x405) cs
Danish 1030 (0x406) da
German 1031 (0x407) de
Greek 1032 (0x408) el
US English 1033 (0x409) en-us
Finnish 1035 (0x40B) fi
French 1036 (0x40C) fr
Hebrew 1037 (0x40D) he
Hungarian 1038 (0x40E) hu
Italian 1040 (0x410) it
Japanese 1041 (0x411) ja
Korean 1042 (0x412) ko
Dutch 1043 (0x413) nl
Norwegian 1044 (0x414) no
Polish 1045 (0x415) pl
Portuguese (Brazil) 1046 (0x416) pt-br
Russian 1049 (0x419) ru
Swedish 1053 (0x41D) sv
Chinese 2052 (0x804) zh-cn
Potruguese (Portugal) 2070 (0x816) pt
Spanish 3082 (0xC0A) es
[/align:6610b1f839]

درمورد Headصفحه هم utf-8 قرار دادم ولي ظاهرا نتيجه اي نداشت
همين فروم از چه ابجكتي استفاده مي كنه ؟ CDOSYS يا CDONTS
 

hoom

Active Member
سلام

اون راهي كه عليرضا گفت درسته. فقط بايد فرمت ايميل رو HTML كني. همه اون تنظيمات بالا هم لازم نيستن. من قديما يه برنامه نوشتم كه بايد به همه زبونهاي اروپاي شرقي و يوناني و روسي ايميل ميفرستاد اونم از يه كلاينت لاتين از همين روش استفاده كردم و جواب داد. يه تيكه از كدم رو همينجا براتون ميذارم:

کد:
    Dim iMsg   ' New CDO.message
    Set iMsg  = CreateObject("CDONTS.NewMail")

    strHTMLBody = "<html>" & vbCrLf & "<head>" & vbCrLf
                
    Select Case UCase(strLoggedLanguage)
       Case "EL"
           strHTMLBody = strHTMLBody & " <META http-equiv=Content-Type content=""text/html; charset=ISO-8859-7"">" & vbCrLf
       Case "PL", "CS", "HU"
           strHTMLBody = strHTMLBody & " <META http-equiv=Content-Type content=""text/html; charset=ISO-8859-2"">" & vbCrLf
       Case "RU"
           strHTMLBody = strHTMLBody & " <META http-equiv=Content-Type content=""text/html; charset=ISO-8859-5"">" & vbCrLf
       Case Else
           strHTMLBody = strHTMLBody & " <META http-equiv=Content-Type content=""text/html; charset=ISO-8859-1"">" & vbCrLf
    End Select

    strHTMLBody = strHTMLBody & _
            " <title>" & strSubject & "</title>" & vbCrLf & _
            "</head>" & vbCrLf & _
            "<body>" & vbCrLf & _
            "<pre>" & vbCrLf & _
            "<font face=arial size=2>" & vbCrLf & _
            "<b>" & vbCrLf & _
            "</font>" & vbCrLf & _
            "</pre>" & vbCrLf & _
            "</body>" & vbCrLf & _
            "</html>" & vbCrLf

    With iMsg
        .To = strEmailAddress
        .From = """CDS Dealer Feedback"" <" & conFromEmailAddress & ">"
        .Subject = strEmailSubject & ": " & strSubject
        .Body = strHTMLBody
        .MailFormat = 0
        .BodyFormat = 0
    End With

    iMsg.Send

    Set iMsg = Nothing

ارادتمند
 

جدیدترین ارسال ها

بالا