Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Invio sms

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376

    Invio sms

    Salve a tutti ho sviluppato un codice che invia sms di avviso ai clienti e fin qui tutto ok, ma quando inserisco un testo un pò più lungo l'sms non parte, sembra che supporti massimo 26 parole, qualcuno sà aiutarmi; di seguito posto il codice:

    CellNew = Rs.Fields("Cellulare").Value + """"
    'CellNew = "3331122334" + """"
    'INIZIO CODICE PER INVIO SMS
    NewTX "AT" & vbCrLf
    NewTX "AT+CMGF = 1" & vbCrLf
    NewTX "AT+CMGS = """ & CellNew & vbCrLf 'METODO INVIO SMS CON NUMERO DA RECORDSET AGGIUNGO APICE ALL'INIZIO DEL NUMERO
    PauseTime = 1 ' Imposta la durata
    Start = 350 ' Imposta inizio
    ' CICLO PER RITARDARE L'INVIO ALTRIMENTI I DUE COMANDI(AT+CMGS E IL TESTO DEL MESSAGGIO) SI SOVRAPPONGONO
    Do While PauseTime <> Start
    DoEvents ' Passa il controllo ad altri processi
    Start = Start - 1
    Loop
    NewTX "" & TestoPromo & vbCrLf
    NewTX "CONTATTACI ALLO 0123456789" & vbCrLf
    NewTX "" & """" & vbCrLf
    Chi Crede in Me non Perirà MAI

  2. #2
    Utente bannato
    Registrato dal
    Jul 2013
    Messaggi
    290
    con "database" non credo c'entri molto.
    Hai verificato che non sia limitato a 159 caratteri (ovvero un singolo invio?)
    prova a mandare stringhe via via più lunghe, tipo
    111111111111111111111111111111111111111111111
    1111111111111111111111111111111111111111111111
    11111111111111111111111111111111111111111111111
    finquando non si ferma

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376
    ok grazie della risposta, allora dove dovrei spostare la discussione?
    Questo è il codice che effettua quando chiama la sub NewTX:

    Private Sub NewTX(txtString As String)
    ' trasmette una stringa (txtString) sulla porta seriale, dopo
    ' averla impacchettata in un buffer di byte
    Dim BytesToBeSent As Long
    Dim SentBytes As Long
    Dim Buffer() As Byte
    Dim i As Long
    Dim fSuccess As Integer
    Dim ferror As Integer


    If txtString = "" Then Exit Sub
    BytesToBeSent = Len(txtString)
    ReDim Buffer(1 To BytesToBeSent)
    For i = 1 To BytesToBeSent
    Buffer(i) = Asc(Mid(txtString, i, 1))
    Next i


    ' scrive sulla porta seriale; in particolare, imposta a 0 (NULL)
    ' l'ultimo parametro della WriteFile, poiche' la comunicazione
    ' sara' sincrona (non overlapped)
    fSuccess = WriteFile(hCom, Buffer(1), BytesToBeSent, SentBytes, 0)
    If fSuccess = 0 Then MsgBox "Errore in Tx"
    If (fSuccess <> 0) And (SentBytes = BytesToBeSent) Then
    FlushFileBuffers (hCom)
    Else
    ferror = Err.LastDllError
    ' gestione errore
    End If

    End Sub
    Chi Crede in Me non Perirà MAI

  4. #4
    Utente di HTML.it L'avatar di comas17
    Registrato dal
    Apr 2002
    Messaggi
    6,522
    Quote Originariamente inviata da devil946 Visualizza il messaggio
    ok grazie della risposta, allora dove dovrei spostare la discussione?

    Il regolamento mi sembra abbastanza chiaro no ?

    "In questo forum NON si parla di alcune funzionalità peculiari di Microsoft Access (macro, maschere, report, etc) che continueranno ad essere trattate nel forum "Windows e software""

    Chiudo (non si capisce nemmeno cosa tu stia usando, Access forse ?)
    Riapri in Windows e software

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.