How to escape ' , ' in the message - sent from command line
-
- Posts: 2
- Joined: August 16th, 2017, 6:20 am
How to escape ' , ' in the message - sent from command line
I'm writing a small VBA code that composes an email message.
Thanks to this support, I was able to do that using a command line.
e.g.
fullpath-thunderbird -compose "to='john@example.com,kathy@example.com',cc='britney@example.com',subject='dinner',body='How about dinner tonight?'" ... woks fine as I expected
Everything looks fine - I can set To, Cc, subject, body text - it's almost perfect.
Then I found that when a comma ( , ) is in the body text, the message is truncated at that position.
e.g.
fullpath-thunderbird -compose "to='john@example.com,kathy@example.com',cc='britney@example.com',subject='dinner',body='ABC, How about dinner tonight?'" ... message body is truncated like "ABC"
Is there any way I can compose a message body text that contains ' , ' via command line?
Thank you,
-Sami
Thanks to this support, I was able to do that using a command line.
e.g.
fullpath-thunderbird -compose "to='john@example.com,kathy@example.com',cc='britney@example.com',subject='dinner',body='How about dinner tonight?'" ... woks fine as I expected
Everything looks fine - I can set To, Cc, subject, body text - it's almost perfect.
Then I found that when a comma ( , ) is in the body text, the message is truncated at that position.
e.g.
fullpath-thunderbird -compose "to='john@example.com,kathy@example.com',cc='britney@example.com',subject='dinner',body='ABC, How about dinner tonight?'" ... message body is truncated like "ABC"
Is there any way I can compose a message body text that contains ' , ' via command line?
Thank you,
-Sami
-
- Posts: 6432
- Joined: February 3rd, 2009, 6:29 pm
Re: How to escape ' , ' in the message - sent from command l
It works for me.
I got a vbs script working with a comma as well.
You can use the message argument to specify a plain text or an HTML file for the body of the mail.
Multiline body via command line
http://forums.mozillazine.org/viewtopic ... &t=3030498
Thunderbird 52.2.1
Windows 7 SP1 32-bit
Code: Select all
thunderbird.exe -compose "to='john@example.com,kathy@example.com',cc='britney@example.com',subject='dinner',body='ABC, How about dinner tonight?'"
Code: Select all
Option Explicit
Dim objShell
Set objShell = CreateObject("WScript.Shell")
objShell.Exec("%ProgramFiles%\Mozilla Thunderbird\thunderbird.exe -compose" & _
" preselectid='id1'" & _
",from=''" & _
",to='foo <foo@invalid.com>'" & _
",cc=''" & _
",bcc=''" & _
",newsgroups=''" & _
",subject='Example'" & _
",body='ABC, DEFGHIJKLMNOPQRSTUVWXYZ'" & _
",message=''" & _
",attachment=''" & _
",bodyislink='false'" & _
",type='0'" & _
",format='1'" & _
",originalMsg=''" & _
"")
Set objShell = Nothing
Multiline body via command line
http://forums.mozillazine.org/viewtopic ... &t=3030498
Thunderbird 52.2.1
Windows 7 SP1 32-bit
-
- Posts: 2
- Joined: August 16th, 2017, 6:20 am
Re: How to escape ' , ' in the message - sent from command l
Thank you for your input. It turned out that the issue was caused by my coding. I forgot to enclose the body text using '
Then it looks working fine if the body text doesn't contain ' , '
After i modified my code to do so, then everything starts working fine.
Sorry for the confusion and thank you for your support!
-Sami
Then it looks working fine if the body text doesn't contain ' , '
After i modified my code to do so, then everything starts working fine.
Sorry for the confusion and thank you for your support!
-Sami
-
- Posts: 2
- Joined: April 4th, 2010, 9:00 pm
Re: How to escape ' , ' in the message - sent from command l
Hi,
some more problems to this issue. I tried several versions I found in some postings but could not solve all problems at the same time.
The problems are
- cr&lf
- comma in body
- special characters in body äöü...
- attachment
If I use a comma to separate the parameters like
cr & lf not working
comma is ok
special characters ok
attachment not working.
If I use
everything ok if there is no comma in body!
If the message is in a file like
everthing ok but no special characters in body.
They are allowed in the subject .
Maybe my "try and error" was not totally complete but I haven´t found a solution for all of my problems.
Someone´s got an idea or hint
Marc
some more problems to this issue. I tried several versions I found in some postings but could not solve all problems at the same time.
The problems are
- cr&lf
- comma in body
- special characters in body äöü...
- attachment
If I use a comma to separate the parameters like
Code: Select all
strMail = "...\Thunderbird.exe" & _
" -compose format=2,preselectid=id1" & _
",to='" & strAn & "x',subject='" & strBetr & "'" & _
",body='" & strBody & "',attachment='file:///" & strDatei & "'"
comma is ok
special characters ok
attachment not working.
If I use
Code: Select all
strCommand = " -compose format=2,preselectid=id1"
strCommand = strCommand & ",to='" & strAn & "y'"
strCommand = strCommand & ",subject='" & strBetr & "'"
strCommand = strCommand & ",body=" & Chr(34) & strBody & Chr(34)
strCommand = strCommand & ",attachment='" & strDatei & "'"
If the message is in a file like
Code: Select all
strCommand = " -compose format=2,preselectid=id1"
strCommand = strCommand & ",to='" & strAn & "y'"
strCommand = strCommand & ",subject='" & strBetr & "'"
strCommand = strCommand & ",message=" & Chr(34) & strDateiBody & Chr(34)
strCommand = strCommand & ",attachment='" & strDatei & "'"
They are allowed in the subject .
Maybe my "try and error" was not totally complete but I haven´t found a solution for all of my problems.
Someone´s got an idea or hint
Marc
-
- Posts: 2
- Joined: April 4th, 2010, 9:00 pm
Re: How to escape ' , ' in the message - sent from command l
Some things I forgot:
the code for subject an body is
I tried another version without the single ' and different body construction:
the result looks like
Marc
the code for subject an body is
Code: Select all
strBetr = "Subject"
strBody = "Text with comma," & vbNewLine & vbNewLine
strBody = strBody & "Text" & vbNewLine & vbNewLine
strBody = strBody & "Text with äöü" & vbNewLine & vbNewLine & "Text"
Code: Select all
strBody = "&body=" & Chr$(34) & "Body line 1" & Chr$(34) & _
"&body=" & Chr$(34) & "Line 2 " & Chr$(34)
"&body=" & Chr$(34) & "Body line 3" & Chr$(34) & _
"&body=" & Chr$(34) & "special line öäü , " & Chr$(34) & _
"&body=" & Chr$(34) & "Line 4" & Chr$(34)
strCommand = "...\Thunderbird.exe"
strCommand = strCommand & " -compose " & Chr$(34) & "mailto:" & strTo & "?"
strCommand = strCommand & "subject=" & Chr$(34) & strSubject & Chr$(34)
strCommand = strCommand & "body=" & Chr$(34) & strBody & Chr$(34)
strCommand = strCommand & " ,attachment=" & strDatei
the attachment parameter was inside of the bodyBody line 1
Line 2 Body line 3
special line öäü , Line 4" ,attachment=filemane.pdf
Marc
-
- Posts: 6432
- Joined: February 3rd, 2009, 6:29 pm
Re: How to escape ' , ' in the message - sent from command l
Why are you using the file and mailto uri schemes?
WRONG: attachment='file:///C:/example.txt'
RIGHT: attachment='C:\example.txt'
WRONG: to='mailto:foo <foo@invalid.com>'
RIGHT: to='foo <foo@invalid.com>'
You are omitting the single quote characters.
WRONG: preselectid=id1
RIGHT: preselectid='id1'
I got the example.vbs file working with body='ABC, äöü' and attachment='C:\example.txt' in Thunderbird 60.
WRONG: attachment='file:///C:/example.txt'
RIGHT: attachment='C:\example.txt'
WRONG: to='mailto:foo <foo@invalid.com>'
RIGHT: to='foo <foo@invalid.com>'
You are omitting the single quote characters.
WRONG: preselectid=id1
RIGHT: preselectid='id1'
I got the example.vbs file working with body='ABC, äöü' and attachment='C:\example.txt' in Thunderbird 60.
-
- Posts: 2
- Joined: September 16th, 2019, 6:08 am
Re: How to escape ' , ' in the message - sent from command l
Dear All!
I have a VBA code in Excel what I use to call Thunderbird-compose. Here is:
It's working fine, until the attachment path doesn't contain coma.
Path of the file(s):
I can't rename the folder, because this is on a network drive. And there are many excel files with a link between workbooks.
What is the solution?
I have a VBA code in Excel what I use to call Thunderbird-compose. Here is:
Code: Select all
thund = "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe" & _
" -compose " & """" & _
"to='" & email & "'," & _
"cc='" & cc & "'," & _
"bcc='" & bcc & "'," & _
"subject='" & subj & "'," & _
"attachment='" & attch & "'," & _
"body='" & body & "'" & """"
Path of the file(s):
Code: Select all
Z:\..\Árjegyzékek, terméklisták\2019\...
What is the solution?
-
- Posts: 6432
- Joined: February 3rd, 2009, 6:29 pm
Re: How to escape ' , ' in the message - sent from command l
A comma is used to separate attachment files.
I think it isn't possible to use a comma in a folder name without an error.
You can use the batch short path without the comma.
Path Full: C:\ABC, DEFGHIJKLM
Path Short: C:\ABC_DE~1
Code: Select all
",attachment='C:\alpha.txt,C:\beta.txt,C:\gamma.txt'" & _
You can use the batch short path without the comma.
Path Full: C:\ABC, DEFGHIJKLM
Path Short: C:\ABC_DE~1
Code: Select all
rem show full path and short path in command prompt window
cd /d C:\ABC, DEFGHIJKLM
for %i in (.) do @echo Path Full: %~fi
for %i in (.) do @echo Path Short: %~si
Last edited by morat on September 21st, 2019, 7:44 am, edited 1 time in total.
-
- Posts: 2
- Joined: September 16th, 2019, 6:08 am
Re: How to escape ' , ' in the message - sent from command l
Thank you for your helping. It's working.
The easiest way to find the short path name is "dir /x" command in CMD. But I found only blank fields...
So the solution (we are using Windows Server 2012 R2):
Somebody opened an document from folder "Árjegyzékek, terméklisták". After I closed, it worked.
The easiest way to find the short path name is "dir /x" command in CMD. But I found only blank fields...
So the solution (we are using Windows Server 2012 R2):
- Verify if the feature to create short path is enabled or not. Run the command by invoking command prompt in administrative mode: 0 enabled, 1 disabled, 2 per volume setting - default
Code: Select all
fsutil 8dot3name query
- Enable the short name
Code: Select all
fsutil behavior set disable8dot3 0
- Create short name for the folder
Code: Select all
fsutil file setshortname "Z:\Árjegyzékek, terméklisták" ARJEGY~1
- Restore the original state of the short name future.
Code: Select all
fsutil behavior set disable8dot3 2
Somebody opened an document from folder "Árjegyzékek, terméklisták". After I closed, it worked.