Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    45

    Aprire una sequenza di indirizzi e-mail

    Salve a tutti vorrei realizzare la funzione che descrivo: leggere in sequenza vari indirizzi e-mail e aprire di volta in volta fa finestra di outlook, ma mi sono bloccato, non riesco ad andare avanti, chiedevo se gentilmente c'è qualcuno che mi può aiutare a sistemare queste poche righe di codice che allego.
    Vi ringrazio infinitamente.

    codice:
    Private Sub btnInviaMail_M_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInviaMail_M.Click 
    
    
    
    Dim rstEmail As New SqlClient.SqlDataAdapter 
    Dim Mail = From EMail In Mail_DB.tbElencoAziende 
    OutlookNamespace = OApp.GetNamespace("MAPI") 
    
    
    tbTabella.DataSource = Mail 
    IndirizzoComboBox.DataSource = Mail 
    
    
    
    
    
    Do Until rstEmail.AcceptChangesDuringFill 
    
    oMail = rstEmail![mail] 'qua mi dice che non può essere indicizzata perchè non contiene proprietà predefinite 
    
    If Not oMail.To = "" Then 
    
    
    oMail = CType(CType(OApp.CreateItemFromTemplate(conPercorso & "RicercaLavoro.oft"), Global.System.Linq.IQueryable(Of Global.InvioMailAuto.tbElencoAziende)), Outlook.MailItem) 
    
    With oMail 
    .To = CStr(oMail) 'perchè mi da errore di runtime 
    ' .Attachments.Add (contsAllegato) 
    .Send() 
    End With 
    Mail = Nothing 
    
    End If 
    rstEmail.???????() 'cosa metto? 
    
    Exit Do 'è giusto mettere questo? io vorrei che esaurito l'elenco si fermasse 
    
    Loop 
    
    MessageBox.Show("Gli inviii sono avvenuti con successo") 
    ''MessageBox.Show(Inviato) 
    
    .Display() 'mostra la finestra di outlook 
    '.Send() 
    End With
    Grazie di cuore

  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Mi sembra che stai chiamando l'oggetto con un nome diverso da quello con cui l'hai creato:

    codice:
    Dim Mail  = From EMail In Mail_DB.tbElencoAziende 
    ...
    oMail  = rstEmail![mail]
    Inoltre, per leggere solo gli indirizzi non ha senso usare un DataAdapter,
    secondo me è meglio un DataReader (a meno che non ci devi fare altre cose...)

    Comunque mi pare parecchio confuso il tuo codice...

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    45
    Ti ringrazio per avermi risposto, in effetti avevo già messo il nome corretto all'oggeto ma l'errore resta e comunque in effetti è un po confuso il codice, ma proprio per questo ho chiesto un aiuto per uscirne.
    Ti sarei veramente grato se potresti correggermi quegli errori che ho fatto, sono andato un po in tilt con questa funzione.
    Grazie ancora.

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Onestamente non riesco a capire la logica del tuo codice...

    Esempio, tu hai scritto:

    leggere in sequenza vari indirizzi e-mail
    Ma dove sono questi indirizzi?
    Tu dichiari solamente un DataAdapter:
    codice:
    Dim rstEmail As New SqlClient.SqlDataAdapter
    ma poi? A cosa ti serve, dato che non è popolato da nessuna parte?

    Perchè usi la proprietà AcceptChangesDuringFill ? A che scopo?
    http://msdn.microsoft.com/it-it/libr...uringfill.aspx


    ti consiglio di fare una ricerca sul forum con 'mail VB.NET'
    troverai un sacco di discussioni.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    45
    Ciao, non devo popolare nulla, giusto per sfizio per vedere i record che scorrono, popolare una gridview, ma quello non è un problema.
    Io avrei la necessità di un ciclo "For Each.......Next" oppure "Do...Loop" che mi legga semplicemente l'elenco delle e-mail che ho in una tabellla e mi apra di conseguenza tante finestre di messaggio di outlook quante sono le e-mail, questa funzione mi serve semplicemente per mandare hai mie clienti dell news piuttosto che le fatture mensili di contratto ecc.,
    Tutto quello che riguarda il corpo del messaggio l'oggeto piuttosto che gli allegati ho già fatto tutto, infatti nella mia form ho due punsalti "e-mail singola" e "e-mail multipla" e la singola funziona perfettamente, quello che mi serve è un ciclo automatico, voleva essere anche un modo per me per capire meglio il meccanismo di un ciclo, non credo che sia particolarmente complicato, ma come ti ho detto in testa ho l'idea ma non riesco a svilupparla, chiedevo un aiuto in quel senso.
    Grazie ancora.
    Spero di essere stato abbastanza chiaro nell'esposizione del problema.

  6. #6
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Allora, come ti ho già scritto precedentemente, usa un DataReader, nel tuo caso sarà un SqlDataReader:

    http://lmgtfy.com/?q=sqldatareader

    Anche nel mio progetto OleDB2008 viene usato un DataReader, puoi guardare anche lì.


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.