4D v13.2SMTP_SetPrefs |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v13.2
SMTP_SetPrefs
|
SMTP_SetPrefs ( retornoLinha ; tipoCorpo ; longLinha ) -> Resultado | ||||||||
Parâmetro | Tipo | Descrição | ||||||
retornoLinha | Inteiro |
![]() |
1 = [por padrão] Adicionar, 0 = Não adicionar, -1 = Não mudar | |||||
tipoCorpo | Inteiro |
![]() |
Body-Content-Type (1 = [por padrão] Detecção automática, -1 = Nenhuma modificação) | |||||
longLinha | Inteiro longo |
![]() |
Longitude de linha máxima (0 = [por padrão] Detecção automática, -1 = Nenhuma modificação) | |||||
Resultado | Inteiro |
![]() |
Código de erro | |||||
O comando SMTP_SetPrefs define as preferências das mensagens SMTP a enviar. O comando tem um alcance global e interprocesso e afeta a todas as mensagens posteriores criadas com os comandos SMTP. As opções configuráveis afetam o formato de uma mensagem que é enviada a um servidor SMTP com os comandos SMTP_QuickSend ou SMTP_Send. A configuração das preferências tem um alcance interprocesso e afeta a criação de mensagens em qualquer processo 4D.
Os servidores SMTP requerem a combinação de caracteres retorno de carro/retorno de linha (CR/LF) para indicar o final de uma linha. Isto difere da maioria das aplicações Macintosh, que consideram um retorno de carro como um marcador de fim de linha ou de parágrafo.
retornoLinha é um valor inteiro que especifica como lidar com os retornos de carro no corpo de uma mensagem. Passar um valor de zero neste parâmetro deixa o texto do corpo da mensagem intacto, o que permite ao desenvolvedor controlar suas próprias adiciones de retornos de linha. Um valor de 1 (parâmetro por padrão), substitui automaticamente todos os retorno de carro/retorno linha por retornos de carro sozinhos. Um valor de -1 deixa o valor atual da preferência intacto. Se não está seguro de qual opção escolher, deve escolher 1, o valor por padrão.
tipoCorpo especifica o conjunto de caracteres usado no corpo da mensagem a enviar (Body-Content-Type), assim como a codificação a aplicar ao corpo da mensagem (Content-Transfer-Encoding), de acordo com os valores da tabela de abaixo. Por exemplo, "US-ASCII de 7 bits" (valor 2) significa que o conjunto de caracteres utilizado é o ASCII US (uso dos 128 primeiros caracteres da tabela ASCII exclusivamente) e que 4D CI codifica o corpo da mensagem utilizando a codificação de 7 bits. Leve em conta que o comando SMTP_SetPrefs não converte o corpo da mensagem utilizando o conjunto de caracteres especificado, caso seja necessário, o usuário deve garantir a conformidade do conjunto de caracteres. Se deseja converter o conjunto de caracteres utilizado em uma mensagem, consulte a descrição do comando SMTP_Charset.
Por padrão, este parâmetro tem o valor 1, os comandos SMTP detectam automaticamente os parâmetros apropriados em função do conteúdo do corpo da mensagem.
-1 | Nenhuma modificação |
0 | Aplicação e binário; sem codificação |
1 | Valor por padrão; seleção de "US-ASCII & 7 bits" ou "ISO-8859-1 & quotable-printable", em função do conteúdo da mensagem. |
2 | US-ASCII & 7 bits |
3 | US-ASCII & quotable-printable |
4 | US-ASCII & base64 |
5 | ISO-8859-1 & quotable-printable |
6 | ISO-8859-1 & base64 |
7 | ISO-8859-1 & 8 bits |
8 | ISO-8859-1 & binário |
9 | Reservado |
10 | ISO-2022-JP (Japonês) & 7 bit |
11 | ISO-2022-KR (Coreano) & 7 bit |
12 | ISO-2022-CN (Tradicional e Chinês simplificado) & 7 bit |
13 | HZ-GB-2312 (Chinês simplificado) & 7 bit |
14 | Shift-JIS (Japonês) & base64 |
15 | UTF-8 & quoted-printable |
16 | UTF-8 & base64 |
O parâmetro longLinha especifica a longitude máxima de linha no corpo da mensagem. Os comandos SMTP "forçam" a nova linha no texto mediante a inserção de um retorno de carro/salto de linha depois da palavra mais próxima antes da longitude máxima de linha. Pode ser especificado qualquer número, mas é recomendado que a longitude das linhas não supere os 80 caracteres. Um valor de -1 deixa o valor atual intacto.
O valor por padrão do parâmetro longLinha é zero. Um valor de zero fará que os comandos SMTP utilizem os valores recomendados especificados nas definições RFC para tipoCorpo. Se o parâmetro longLinha vale zero, o ajuste será realizado com base na seguinte tabela:
Tipo de corpo | Passa a linha |
Base64 | 76 |
Quoted-Printable | 76 |
Outros… | não passar a linha |
O ajuste de linha é recomendado como muitos sistemas e programas de correio têm problemas para lidar com mensagens com linhas de longitude ilimitada. Além disso, leve em conta que o correio as vezes viaja através de uma série de sistemas antes de chegar a seu destino final e qualquer computador ao longo da via de entrega pode rejeitar uma mensagem se não é capaz de lidar com o formato da mensagem.
O seguinte código envia uma mensagem em UTF-8 codificado em quotedprintable:
$err:=SMTP_SetPrefs(-1;15;-1)
$err:=SMTP_QuickSend(...)
Produto: 4D
Tema: IC Send Mail
Número
88994
Modificado: 4D Internet Commands v11.2