使用VBA和CDO邮件对象通过短信向iPhone发送箭头"↑"字符

8 iphone sms vba utf-8

我需要?使用VBA和CDO邮件对象通过短信向iPhone 发送向上箭头.

我的尝试如下:

统一:

subj =  ChrW(8593) & " Up " & ChrW(8593)
Run Code Online (Sandbox Code Playgroud)

HTML:

subj =  "↑ Up ↑"
Run Code Online (Sandbox Code Playgroud)

上述两种方法都会导致iPhone接收? Up ?Unicode或↑ Up ↑字符串文字.

有没有人知道向上箭头的正确语法?

小智 8

解:

我正在寻找一些"特殊字符"语法,但问题不在于构造消息.我需要添加.BodyPart.Charset = "utf-8"到CDO.Message对象并使用Chrw(8593)我需要它的Unicode .

Sub sendMSSG(sbj As String, mssg As String)
    Dim cdoMail As New CDO.Message
    On Error GoTo err_Report

    With cdoMail
        With .Configuration.Fields
            .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort '2
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "my.smtpserverserver.net"
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic  '1
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
            .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = sFROM
            .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = sFROMPWD
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 6
            .Update
        End With
        .BodyPart.Charset = "utf-8"     '<~~ THIS WAS REQUIRED
        .Subject = sbj
        .From = sFROM
        .To = sPHONEMSSGNO
        .Bcc = vbNullString
        .Cc = vbNullString
        .TextBody = mssg
        .Send
    End With

    Exit Sub

err_Report:
    Debug.Print Err.Number & ": " & Err.Description

End Sub
Run Code Online (Sandbox Code Playgroud)

显然,.BodyPart.Charset涵盖了主题和消息体,因为我能够在两者中使用unicode.


任何计划将此代码用于其自身目的的人都需要通过Tools,References 将Microsoft CDO for Windows 2000库添加到他们的项目中.