Esporti l'swf come proiettore (exe).
Crei un progetto in visual basic in cui inserirai:
un form:
codice:
Private Sub Form_Load()
RunMail Me, "nome@dominio.it", "Oggetto della mia mail"
Unload Me
End Sub
un modulo:
codice:
Public Const ERROR_FILE_NOT_FOUND = 2&
Public Const ERROR_PATH_NOT_FOUND = 3&
Public Const ERROR_BAD_FORMAT = 11&
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Public Sub RunMail(oOwner As Object, sEmailAddress As String, Optional sSubject As String, _
Optional sText As String, Optional eWindowStyle As VbAppWinStyle = vbNormalFocus)
On Error GoTo Errore
Dim sMsg As String, sRunMail As String
Dim lRet As Long
' costruisco la stringa di invio E-mail
sRunMail = "mailto:" & Trim(sEmailAddress)
' SE è stato specificato l'oggetto
If (sSubject <> Empty) Then
sRunMail = sRunMail & "?subject=" & sSubject
End If
' SE è stato specificato il testo
If (sText <> Empty) Then
sRunMail = sRunMail & "&body=" & sText
End If
' richiamo l'applicazione predefinita di sistema
lRet = ShellExecute(oOwner.hwnd, Empty, sRunMail, Empty, Empty, eWindowStyle)
Select Case lRet
Case 0 ' System out of memory or resources
sMsg = "Memoria o risorse del sistema esaurite. "
Case 31 ' No association exists
sMsg = "Il sistema in uso non presenta alcuna associazione per questo tipo di file. " & vbCr & vbCr
sMsg = sMsg & "Installare un'applicazione appropriata oppure creare un'associazione. " & vbCr
sMsg = sMsg & "Per creare un'associazione, selezionare il file sottoindicato. Tenendo " & vbCr
sMsg = sMsg & "premuto il tasto Shift, cliccare col pulsante destro del mouse sul file. " & vbCr
sMsg = sMsg & "Selezionare la voce ""Apri con..."" e spuntare la casella ""Utilizza " & vbCr
sMsg = sMsg & "sempre..."". Selezionare l'applicazione appropriata e scegliere [Ok]. "
Case ERROR_FILE_NOT_FOUND
sMsg = "Impossibile trovare il file. "
Case ERROR_PATH_NOT_FOUND
sMsg = "Impossibile trovare la cartella. "
Case ERROR_BAD_FORMAT
sMsg = "Il formato del file non è valido. "
' case > 32 ' On success
End Select
' SE si è verificato un errore
If (sMsg <> Empty) Then
sMsg = sMsg & vbCr & vbCr
sMsg = sMsg & "E-mail: '" & Trim(sEmailAddress) & Chr(39) & vbCr
If (Trim(sSubject) <> Empty) Then
sMsg = sMsg & "Oggetto: '" & Trim(sSubject) & Chr(39) & vbCr & vbCr
End If
MsgBox sMsg, vbCritical, "RunMail: Errore di esecuzione"
DoEvents
End If
Exit Sub
Errore:
sMsg = "[" & Err.Number & "]: " & Err.Description & vbCr & vbCr
sMsg = sMsg & "E-mail: '" & Trim(sEmailAddress) & Chr(39) & vbCr
If (Trim(sSubject) <> Empty) Then
sMsg = sMsg & "Oggetto: '" & Trim(sSubject) & Chr(39) & vbCr & vbCr
End If
MsgBox sMsg, vbCritical, "RunMail: Errore di esecuzione"
DoEvents
End Sub
Compili il progetto in un eseguibile.
Poi da flash usi il comando fscommand per richiamare quell'eseguibile.
Questo da quel che so è l'unico metodo, se qualcun altro ne conosce un altro più semplice ben venga perchè può interessare anche a me.