c# pdf library itextsharp : Edit multiple pdf metadata control application system web page html azure console Visual_CUT_User_Manual4-part540

©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 41 
Attaching Multiple Files 
To attach multiple files to a single email message, simply specify multiple files and separate  
them with a semi-colon (
;
) Without any spaces.   
If all files are under the same folder, it's enough to specify the full path only for the 1
st
file.   
For example: c:\temp\Sales.pdf;Returns.pdf 
You can also specify file names using wild cards.   
For example, in a bursting scenario, to send all pdf files in the current month folder under the 
current customer:  
C:\VC_Exports\{customer.customer_id}\{@Month}\*.pdf 
and to send all files that start with the current Customer ID:  
C:\VC_Exports\{customer.customer_id}*.* 
Attaching Optional Files 
You can indicate that an email attachment is optional by prefixing <Opt> to the file path & 
name.  For example, if you need to email Sales.pdf (always) and Returns.pdf (if it exists), use: 
c:\temp\Sales.pdf;<Opt>c:\temp\Returns.pdf   
- or - 
c:\temp\Sales.pdf;<Opt>Returns.pdf  
Edit multiple pdf metadata - add, remove, update PDF metadata in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# Developers to Read, Add, Edit, Update and Delete PDF Metadata
pdf metadata reader; adding metadata to pdf
Edit multiple pdf metadata - VB.NET PDF metadata library: add, remove, update PDF metadata in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata
modify pdf metadata; batch edit pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 42 
Specifying Multiple (Simple/Composite) Email Addresses  
You specify multiple email address destinations in the ToCC, or BCC emailing options, by 
separating them with a semi-colon (
;
) Without any spaces.   
You can also specify composite (display name as well as address) email destinations.   
For example: "Ido Millet" <ido@MilletSoftware.com>
;
"Jane Doe" <Jane@aol.com>  
Specifying Email Distribution Lists in Text Files  
To facilitate emailing to a long list of recipients, you can specify in the  
ToCC, and BCC emailing options a file name containing a distribution list.     
For example, using Notepad you can create a file such as: 
You then specify that Visual CUT should use that file as a distribution list by entering 
File:c:\temp\test_email_list.txt    
in the ToCC, or BCC emailing options.  
Notes:  
you use the word "File:" followed by the path & name of the text file containing the 
email addresses.  Each address should be on a separate line and it can be specified as 
an email address only or as a composite (display name and address) as shown in the 
example above. 
As always, you can include references to dynamic fields and formulas.  For example,  
File:c:\distribution_lists\Department_{@DeptID}.txt 
would allow you to burst a report by department and use a different distribution list for 
each department. 
VB.NET PDF Library SDK to view, edit, convert, process PDF file
NET empowers VB.NET developers to implement fast and high quality PDF conversions to or from multiple supported images and PDF Hyperlink Edit. PDF Metadata Edit.
change pdf metadata; edit pdf metadata
VB.NET PDF File Split Library: Split, seperate PDF into multiple
Divide PDF file into multiple files by outputting PDF file size. Split Split PDF Document into Multiple PDF Files Demo Code in VB.NET. You
view pdf metadata in explorer; pdf xmp metadata editor
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 43 
Specifying Email Distribution Lists in SQL Queries 
In cases where you wish to dynamically retrieve the list of email addresses using an SQL query 
against an ODBC data source, you can specify in the To, CC, and/or BCC emailing options an 
expression such as: 
MS Access Example: 
ODBC:Customers::User_ID::Password::SELECT [email] FROM 
[Contacts] WHERE [Customer_ID] = '{Customer_ID}'  
SQL Server Example: 
ODBC:CONTACTS::sa::xxxxx::SELECT DISTINCT AHD.ctct.c_email_addr FROM 
AHD.ctct where AHD.ctct.c_email_addr IS NOT NULL 
The expression starts with 
ODBC:
followed by 4 elements separated by 
::
1. 
ODBC DSN
(Note: could be different from the DSN used for the Crystal report) 
2. 
User ID
(use a single space if not needed) 
3. 
Password
(use a single space if not needed) 
4. 
SQL Statement
Notes:  
If the SQL statement returns multiple rows, Visual CUT takes care of concatenating the 
email addresses from all the rows to a single string with semi-colon as the delimiter. 
The SQL statement syntax depends on your database.  For example, as shown in the 
samples above, MS Access uses [ ] around field/table names but SQL Server doesn't. 
You can embed dynamic fields/formula values anywhere inside the expression.  
In the MS Access example, the list of contacts for the Customer in the current bursting 
cycle would be retrieved. This offers powerful email distribution management options... 
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
Free online C#.NET source code for combining multiple PDF pages together in .NET framework. C# Demo Code: Combine and Merge Multiple PDF Files into One in .NET.
remove metadata from pdf online; edit pdf metadata online
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
RaterEdge HTML5 PDF Editor empower C#.NET users to edit PDF pages with multiple manipulation functionalities in ASP.NET application.
pdf xmp metadata; remove pdf metadata online
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 44 
Specifying Bursting email Addresses in a Formula 
In bursting scenarios, if the database doesn’t contain an email address for each Group Level 1, 
you can use a suppressed Crystal formula (in GH1 or GF1 sections) to return a different email 
destination for each Group. For example: 
Select {Branch_Manager.ID} 
Case 101: 
"Jim@Acme.com" 
Case 103: 
"Amy@Acme.com;Don@Acme.com" 
Case 204: 
"Veronique@Acme.com" 
Default: 
 "serge@Acme.com"; 
Specifying an Email Reconnect Option for Email Bursting 
During Email bursting, the default behavior is to disconnect from the email server after each 
message. This avoids scenarios where the SMTP server imposes a limit on how many messages 
can be sent within a single connection. If you know your server doesn’t impose such
a limitation, 
or if the number of emails you are sending during a burst operation is always below that limit, 
you can set an Email_SMTP_Disconnect_After_Send option (in DataLink_Viewer.ini) to 
FALSE.  
Specifying a Different Character Set 
In order to override the default character set (iso-8859-1) you should add an entry to the 
[Options] section of DataLink_Viewer.ini.  For example, in order to support Chinese characters, 
you should add the following entry: 
Email_Char_Set=big5 
Skipping Emails (VC_Skip_Email) 
If you wish to skip the sending of an email message, you can include the text VC_Skip_Email  
anywhere inside the Email_To option. For example, you can create a formula that, depending on 
customer or order status skips the email messages to certain customers. In those cases, instead of 
returning the customer’s email address, the formula would return 
"VC_Skip_Email". You can 
drag that formula into the Email_To option and Visual CUT would then skip the emails for those 
cases.   
The advantage of this approach, compared to filtering the report, is that you may want the skip 
just the emailing while keeping exporting or printing functionality.  
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
Able to add and insert one or multiple pages to existing adobe PDF document in VB.NET. Add and Insert Multiple PDF Pages to PDF Document Using VB.
view pdf metadata; remove metadata from pdf acrobat
C# Create PDF from images Library to convert Jpeg, png images to
Component for combining multiple image formats into one or multiple PDF file in C#.NET. Any piece of area is able to be cropped and pasted to PDF page.
edit pdf metadata acrobat; edit multiple pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 45 
New Email  Engine   
Starting 2011, extra options are available via 
the ‘Email 2’ tab  in the Options dialog:
Key Features 
With the new email engine, when sending messages to multiple recipients, if the SMTP server 
rejects one of the recipients as a bad email address the process still continues emailing to 
the other recipients.   
You can also use secure connections to the SMTP server 
(NTLM, CRAM-MD5, SSL, STARTTLS). 
The StartTLS option allows you to communicate securely with SMTP servers that require that 
option. Note: use the Email_StartTLS command line argument ("True", "False", or dynamic 
reference) to override the default specified in the Options dialog.  
The Encrypt Email Messages option allows you to encrypt the message so that only the 
recipient can open it. Visual CUT automatically searches for and uses the public key found in the 
first non-expired certificate matching the recipient's email address (the recipient will be using 
their private key).  The search for matching key 
includes the Current User’s personal certificate 
store and then the Local Machine's personal certificate store.  Use the Email_Send_Encrypted 
command line argument ("True", "False", or dynamic reference) to override the default specified 
in the Options dialog.   
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
Combine multiple specified PDF pages in into single one file. using RasterEdge.XDoc. PDF; VB.NET Demo code to Combine and Merge Multiple PDF Files into One.
read pdf metadata; c# read pdf metadata
C# PDF Library SDK to view, edit, convert, process PDF file for C#
XDoc.PDF SDK for .NET empowers C# developers to implement fast and high quality PDF conversions to or from multiple supported images C#.NET: Edit PDF Metadata.
adding metadata to pdf files; embed metadata in pdf
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 46 
The Sign Email Messages option allows you to sign (using your private key) the message so that 
the recipient can verify (using your public key) that a) you are the true sender of the message, 
and b) the message content hasn’t been altered.
Note: use the Email_Send_Signed command 
line argument ("True", "False", or dynamic reference) to override the default specified in the 
Options dialog. 
The Email Bounced Message Notification To option allow you to specify a destination for 
bounced messages.  Note: use the Note: use the Email_Bounce_Address command line 
argument (static or dynamic reference) to override the default specified in the Options dialog. 
The SMTP Domain option allow you to specify a domain in cases where the SMTP server 
used integrated authentication.  Note: use the Email_SMTP_Domain command line argument 
(static or dynamic reference) to override the default specified in the Options dialog. 
C# PDF File Split Library: Split, seperate PDF into multiple files
The following C# codes explain how to split a PDF file into multiple ones by PDF bookmarks or outlines. Split PDF Document into Multiple PDF Files in C#.
add metadata to pdf; batch pdf metadata editor
VB.NET PDF Converter Library SDK to convert PDF to other file
mechanisms, it can be used for multiple PDF to image PDF barcode reading, PDF barcode generation, PDF content extraction and metadata editing if
add metadata to pdf programmatically; endnote pdf metadata
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 47 
Queuing Emails & The smtpQ Service 
With the new email engine, you can queue outgoing email messages in a
n ‘Outgoing’ folder 
monitored by a new smtpQ service.  If you enter any path in the Outgoing Folder option in 
the ‘Email 2’ tab
, Visual CUT would use that approach. You can also activate this behavior by 
using the command line argument of "Email_Outgoing_Folder:Path_to_Some_Folder".  
A special smtpQ Service (a separate process that always runs in the background) is responsible 
fo
r handling the email messages queued in the ‘
Outgoing
’ folder.  You 
can install, start/stop, and 
administer the smtpQ Service by clicking on the ‘Administer smtpQ Service’ button
or by 
double-clicking the status labels on the right: 
Note: you need to have Administrator rights 
to manage the smtpQ service. Also, I’ve seen one 
case where the user had to lower the Windows ‘
User Access Control
’ security settings before the 
machine allowed Visual CUT to manage the smtpQ service.  
Monitoring Email Queuing 
If an Outgoing Folder is specified, Visual CUT shows the number of email messages in the 
Outgoing and Undeliverable folders  in the first 2 panels of the status bar.   
The panel showing the number of messages in the Outgoing Folder, also indicates if the smtpQ 
service is Not InstalledStopped, or Running. The information is refreshed every 5 seconds: 
If the Visual CUT & smtpQ Folder don’t match, the status bar indicates there is a problem:
As an added convenience, you can open the Outgoing folder or the Undeliverable folder in  
File Explorer by double-clicking their panel. 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 48 
smtpQ Administration 
Clicking on the Administer smtpQ Service button brings up the following window: 
The Install Service button installs the service so that each time your computer starts the service 
will start automatically. Once the service is installed, you can Start or Stop the service using the 
appropriate buttons.  You can also stop and start the service from the Windows Control Panel, 
Administrative Tools, Services.. (it will show up as Chilkat SMTPQ): 
Important: while the Outgoing Folder  option in Visual CUT controls where Visual CUT 
deposits outgoing email messages (as .eml files), the Outgoing Folder  option in the smtpQ 
Service controls what folder is monitored by the service. Obviously, these two options should 
point at the same folder if you wish to actually send emails automatically.   
Keep the Max Threads option low unless you are sure the SMTP server would allow you to 
send a high volume of emails through many concurrent sessions. 
The Max Retries option allows you to specify how many attempts would be made to send a 
failing email message (for example, if connectivity to your SMTP Server was lost). The delays 
before each retry keep increasing from 1 to 10
th
{5 sec, 10 sec, 15 sec, 1 min, 1.5, 2, 5, 10, 15,  
20 minutes}. 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 49 
As soon as a new .eml file appears in the Outgoing Folder,  the smtpQ Service will attempt to 
send it. If it succeeds, it will either move the file to a Sent folder  or you can elect to have 
successful messages deleted. If after several minutes of repeated retries, the service fails to send 
the message, it will move it to an Undeliverable folder.   
These email messages are deposited as .eml files that can be opened in Windows Mail or 
Outlook Express and manually transferred between folders.  For example, if you copy .eml 
files from the ‘Sent’ folder to the ‘Outgoing’ folder, they will be emailed again
.  This can be 
useful in cases where the receiver junked your original message by mistake.  Among other 
benefits, this allows you to archive outgoing emails and easily recover from email service 
disruptions. For example, your email server may be down or your email service provider may 
not allow more than 100 messages per hour.  
After making changes to the options in the smtpQ Service Manager dialog, you should click the 
Apply button, and then stop and restart the service to have these changes take effect.   
Naming Scheme of .eml Files 
To facilitate the process of locating specific messages, the .eml files are named using three parts:  
a)  
the name and address of the first email recipient  
b)  
[the Subject of the email message] 
c)  
{the date and time the message was generated} 
d)         [The group number being processed] 
Remember that these .eml files can be opened using software such as Windows Live Mail, 
Outlook Express, etc.. 
Here’s an
example: 
©2002-2016,   Ido Millet,   ido@MilletSoftware.com
Page 50 
smtpQ Service Failure Action Properties 
Each time the smtpQ service is installed or reinstalled, it is a good idea to set Recovery 
properties in case it fails. Locate Chilkat SMTPQ in the Component Services panel in Windows:  
Right-
click the service, select ‘Properties’ and go to the Recovery tab.  Change the
failure 
options from ‘Take No Action’ to ‘Restart the Service’
Documents you may be interested
Documents you may be interested