Sample code for 30+ languages & platforms
DataFlex

Transition from Email.CreateDsn to Email.ToDsn

Provides instructions for replacing deprecated CreateDsn method calls with ToDsn.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoEmail
    String sExplanation
    String sStatusFieldsXml
    Boolean iHeaderOnly
    Variant vEmailObj
    Handle hoEmailObj
    Variant vDsnEmail
    Handle hoDsnEmail
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    Get Create (RefClass(cComChilkatEmail)) To hoEmail
    If (Not(IsComObjectCreated(hoEmail))) Begin
        Send CreateComObject of hoEmail
    End

    // ...
    // ...

    Move "..." To sExplanation
    Move "..." To sStatusFieldsXml
    Move False To iHeaderOnly

    // ------------------------------------------------------------------------
    // The CreateDsn method is deprecated:

    Get ComCreateDsn Of hoEmail sExplanation sStatusFieldsXml iHeaderOnly To vEmailObj
    If (IsComObject(vEmailObj)) Begin
        Get Create (RefClass(cComChilkatEmail)) To hoEmailObj
        Set pvComObject Of hoEmailObj To vEmailObj
    End
    Get ComLastMethodSuccess Of hoEmail To bTemp1
    If (bTemp1 = False) Begin
        Get ComLastErrorText Of hoEmail To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    // ...
    // ...

    Send Destroy of hoEmailObj

    // ------------------------------------------------------------------------
    // Do the equivalent using ToDsn.
    // Your application creates a new, empty Email object which is passed 
    // in the last argument and filled upon success.

    Get Create (RefClass(cComChilkatEmail)) To hoDsnEmail
    If (Not(IsComObjectCreated(hoDsnEmail))) Begin
        Send CreateComObject of hoDsnEmail
    End
    Get pvComObject of hoDsnEmail to vDsnEmail
    Get ComToDsn Of hoEmail sExplanation sStatusFieldsXml iHeaderOnly vDsnEmail To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoEmail To sTemp1
        Showln sTemp1
        Procedure_Return
    End



End_Procedure