Newsgroup: it.comp.appl.access
Titolo: Posizionamento immagini direttamente nel testo del messaggio di Microsoft Outlook

Salve,
sto utilizzando una routine per l'inserimento di allegati nelle e
mail, ma mentre in ricezione Outlook Express visualizza l'immagine
anche nel corpo del messaggio, in Microsoft Outlook invece si limita a
presentare l'allegato.
Sarebbe importante per me invece far sì che il corpo del messaggio
presentasse già le immagini senza dover costringere l'utente a
cliccare l'allegato per visualizzarle.
Posso approfittare per fare i miei complimenti ad Alessandro Baraldi,
Roberto da casa,Karl e tutti quei personaggi che dedicano il loro
tempo a questo newsgroup.
Se non ci foste voi, probabilmente adesso farei il parcheggiatore.


I dubbi mi assalgono:
1) Ho fatto una domanda cretina.
2) La risposta è già nella newsgroup, basta ostinarsi a esplorare
meglio gli argomenti.
3) Ho fatto una domanda a cui non è possibile dare risposta.
4) Ho esposto male l'argomento.
Se mi scrivete qualsiasi cosa, anche brevissima, non vi ripropongo più
questa domanda.


http://www.pcanswers.co.uk/tips/default.asp?pagetypeid=2&articleid=45383&subsectionid=616
puo' essere utile?
-- 
ac
y-1=x

 - Mostra testo tra virgolette -
E' il problema contrario.
Io vorrei che chi riceve una email inviata dal mio db tramite VBA e ha
come programma di posta MS outlook possa già vedere l'immagine nel
corpo del messaggio, proprio come fa outlook express che appunto,
visualizza l'immagine sia nel corpo che come allegato.
In pratica mi serve la simulazione dell'evento sendkeys che allega
l'immagine in Outlook in modo che sia parte integrante proprio del
corpo del messaggio...
Mi serve che l'utente, senza aprire l'allegato, possa già vedere
l'immagine (trattasi di promozioni pubblicitarie e quindi scritte e
immagini personalizzate in un unico jpeg)
Questo problema non si pone con Outlook Express.
Grazie.

 ac


 E' il problema contrario.
Urca! Prova  a leggere l'articolo dal basso verso l'alto.
Se non erro il problema e' spiegato. Fare il rovescio non dovrebbe 
essere difficile.
-- 
ac
y-1=x

 - Mostra testo tra virgolette -
Stando con le indicazioni e inserendo un valore 0 nella chiave DWORD
Automatically Inline Images ho solo disattivato la possibilità di
vedere l'allegato in ricezione posta (fra l'altro inserendo 1 al posto
di 0 non cambia nulla e poi questa cosa la faccio a pappagallo senza
capire cosa sto facendo).
Siccome leggo la posta con Outlook Express a parte questo nulla è
cambiato (visto che le immagini già le vedevo nel corpo del
messaggio).
L'invio ad un utente Microsoft Outlook invece non consente la
visualizzazione nel corpo del messaggio dell'immagine e comunque non
vieta la visualizzazione dell'allegato ( cosa che però non mi
interessa, quello che mi interessa è che l'utente veda immediatamente
la promo nel corpo del messaggio).
Portate pazienza....
...

 Portate pazienza....
Punti salienti
"The simplest way to eliminate the image from the body of your email is 
to select Insert > File Attachment instead of Insert > Picture, Tom."
Cosa dice? Che invece di usare "Insert > File Attachment"  si deve usare 
"Insert > Picture". Lui dice il contrario perche' lo  scopo era diverso
Cosa altro dice?
"Instead, you should format any email containing pictures as plain text"
Che le email inviate "non" devono essere in plain-text
Lui aridice il contrario. Ma lo scopo era diverso
Di grazia. quale' il codice che usi per inviare la E-mail? Hai 
controllato se c'e' la proprieta' "Picture"? Hai verificato che "non" 
invii plain-text?
-- 
ac
y-1=x



Il modulo è questo:
+++++++++++++++++++++++++++++++++++++++
Option Compare Database
Option Explicit
Type MAPIMessage
   Reserved As Long
   Subject As String
   NoteText As String
   MessageType As String
   DateReceived As String
   ConversationID As String
   flags As Long
   RecipCount As Long
   FileCount As Long
End Type
Type MapiRecip
   Reserved As Long
   RecipClass As Long
   Name As String
   Address As String
   EIDSize As Long
   EntryID As String
End Type
Type MapiFile
   Reserved As Long
   flags As Long
   Position As Long
   PathName As String
   FileName As String
   FileType As String
End Type
Global Dialogue As MAPIMessage
Declare Function MAPISendMailOE _
                 Lib "C:\Programmi\Outlook Express\Msoe.dll" _
                 Alias "BMAPISendMail" _
                 (ByVal Session&, _
                  ByVal UIParam&, _
                  Message As MAPIMessage, _
                  Recipient() As MapiRecip, _
                  File() As MapiFile, _
                  ByVal flags&, _
                  ByVal Reserved&) As Long
Declare Function MAPISendMail _
                 Lib "MAPI32.DLL" _
                 Alias "BMAPISendMail" (ByVal Session&, _
                 ByVal UIParam&, _
                 Message As MAPIMessage, _
                 Recipient() As MapiRecip, _
                 File() As MapiFile, _
                 ByVal flags&, _
                 ByVal Reserved&) As Long
Global Const SUCCESS_SUCCESS = 0
Global Const MAPI_TO = 1
Global Const MAPI_CC = 2
Global Const MAPI_CCO = 3
Global Const MAPI_LOGON_UI = &H1
Global Const MAPI_DIALOG = &H8
Function SendMail(sSubject As String, _
                  sTo As String, _
                  sCC As String, _
                  sCCO As String, _
                  sAttach As String, _
                  sMessage As String, _
                  Optional sImmediateSend As Boolean = True) _
                  As Long
   Dim MAPI_Message As MAPIMessage
   Dim i As Integer
   Dim cTo As Integer
   Dim cCC As Integer
   Dim cCCO As Integer
   Dim cAttach As Integer
   Dim strTipoPosta As String
   cTo = CountWords(sTo, ";")
   cCC = CountWords(sCC, ";")
   cCCO = CountWords(sCCO, ";")
   cAttach = CountWords(sAttach, ";")
   ReDim rTo(0 To cTo) As String
   ReDim rCC(0 To cCC) As String
   ReDim rCCO(0 To cCCO) As String
   ReDim rAttach(0 To cAttach) As String
   ParseWords rTo(), sTo, ";"
   ParseWords rCC(), sCC, ";"
   ParseWords rCCO(), sCCO, ";"
   ParseWords rAttach(), sAttach, ";"
   ReDim MAPI_Recip(0 To cTo + cCC + cCCO - 1) As MapiRecip
   For i = 0 To cTo - 1
      MAPI_Recip(i).Name = rTo(i)
      MAPI_Recip(i).RecipClass = MAPI_TO
   Next i
   For i = 0 To cCC - 1
      MAPI_Recip(cTo + i).Name = rCC(i)
      MAPI_Recip(cTo + i).RecipClass = MAPI_CC
   Next i
   For i = 0 To cCCO - 1
      MAPI_Recip(cTo + cCC + i).Name = rCCO(i)
      MAPI_Recip(cTo + cCC + i).RecipClass = MAPI_CCO
   Next i
   ReDim MAPI_File(0 To cAttach) As MapiFile
   MAPI_Message.FileCount = cAttach
   For i = 0 To cAttach - 1
      MAPI_File(i).Position = -1
      MAPI_File(i).PathName = rAttach(i)
   Next i
   MAPI_Message.Subject = sSubject
   MAPI_Message.NoteText = sMessage
   MAPI_Message.RecipCount = cTo + cCC + cCCO
    If sImmediateSend = True Then
        Dialogue.flags = MAPI_LOGON_UI
    Else
        Dialogue.flags = MAPI_LOGON_UI + MAPI_DIALOG
    End If
  strTipoPosta = Nz(DLookup("PostaUtilizzata", "Operatori",
"NomeComputer=""" & Environ("Computername") & """"), "Outlook")
  Select Case strTipoPosta
  Case "Outlook Express"
      SendMail = MAPISendMailOE(0&, 0&, _
                                MAPI_Message, _
                                MAPI_Recip(), _
                                MAPI_File(), _
                                Dialogue.flags, 0)
 Case "Outlook", "Outlook"
      SendMail = MAPISendMail(0&, 0&, _
                                MAPI_Message, _
                                MAPI_Recip(), _
                                MAPI_File(), _
                                Dialogue.flags, 0)
  Case Else
      MsgBox "Votre client de messagerie n'est pas supporté"
  End Select
End Function
Function CountWords(ByVal sSource As String, _
                    ByVal sDelim As String) _
                    As Integer
Dim iDelimPos As Integer
Dim iCount As Integer
 If sSource = "" Then
    CountWords = 0
 Else
    iDelimPos = InStr(1, sSource, sDelim)
    Do Until iDelimPos = 0
        iCount = iCount + 1
        iDelimPos = InStr(iDelimPos + 1, sSource, sDelim)
    Loop
        CountWords = iCount + _
                     IIf(Right(sSource, 1) = sDelim, 0, 1)
 End If
End Function
Function GetWords(sSource As String, _
                  ByVal sDelim As String) _
                  As String
        Dim iDelimPos As Integer
        iDelimPos = InStr(1, sSource, sDelim)
    If (iDelimPos = 0) Then
        GetWords = Trim$(sSource)
        sSource = ""
    Else
        GetWords = Trim$(Left$(sSource, iDelimPos - 1))
        sSource = Mid$(sSource, iDelimPos + 1)
    End If
End Function
Sub ParseWords(mArray() As String, _
               ByVal sTokens As String, _
               ByVal sDelim As String)
        Dim i As Integer
        For i = LBound(mArray) To UBound(mArray)
        mArray(i) = GetWords(sTokens, sDelim)
        Next i
End Sub
+++++++++++++++++++++++++++++++++++++++++++
e questa è la riga di comando
retVal = SendMail(Titolo, txtA, "", strCCN, NomeImmagine1,
TestoMessaggio, False)
ma non c'è una proprietà picture.
Grazie...