<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Montaque - All Comments</title><link>http://msmvps.com/blogs/montaque/default.aspx</link><description>Nothing is impossible for MS .NET</description><dc:language>en</dc:language><generator>CommunityServer 2008 SP1 (Build: 30619.63)</generator><item><title>Get public key from certificate, and Convert the key to the RSAParameter</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/08/4767.aspx#1381168</link><pubDate>Wed, 05 Dec 2007 22:34:24 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1381168</guid><dc:creator>Get public key from certificate, and Convert the key to the RSAParameter</dc:creator><description>&lt;p&gt;Pingback from &amp;nbsp;Get public key from certificate, and Convert the key to the RSAParameter&lt;/p&gt;
&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1381168" width="1" height="1"&gt;</description></item><item><title>Message Queuing by MQSeries with C#</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/02/4550.aspx#1361940</link><pubDate>Tue, 27 Nov 2007 15:25:41 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1361940</guid><dc:creator>Message Queuing by MQSeries with C#</dc:creator><description>&lt;p&gt;Pingback from &amp;nbsp;Message Queuing by MQSeries with C#&lt;/p&gt;
&lt;img src="http://msmvps.com/aggbug.aspx?PostID=1361940" width="1" height="1"&gt;</description></item><item><title>re: How to skip Windows XP Login Splash Windows.</title><link>http://msmvps.com/blogs/montaque/archive/2004/02/18/3001.aspx#73574</link><pubDate>Mon, 31 Oct 2005 11:20:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:73574</guid><dc:creator>Montaque</dc:creator><description>Quiero algo mejor para Windows&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=73574" width="1" height="1"&gt;</description></item><item><title>re: A wonderful Web.config Editor</title><link>http://msmvps.com/blogs/montaque/archive/2004/03/16/3967.aspx#72860</link><pubDate>Wed, 26 Oct 2005 14:10:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:72860</guid><dc:creator>Montaque</dc:creator><description>A most wonderful .Net config editor is located at: www.idmnetcontrols.com&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=72860" width="1" height="1"&gt;</description></item><item><title>re: Sometimes, Hello world does not work;)</title><link>http://msmvps.com/blogs/montaque/archive/2004/12/30/28401.aspx#69037</link><pubDate>Thu, 06 Oct 2005 06:20:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:69037</guid><dc:creator>Montaque</dc:creator><description>Thank you  I am learning of new things all day! And it is good to know of my RSS already &lt;br&gt;&lt;br&gt;work. I think I need add button of RSS to make this thing clear.&lt;br&gt; But more work to do!&lt;br&gt;&lt;a target="_new" href="http://www.52z.com"&gt;http://www.52z.com&lt;/a&gt;&lt;br&gt;&lt;a target="_new" href="http://www.k198.com"&gt;http://www.k198.com&lt;/a&gt;&lt;br&gt;&lt;a target="_new" href="http://www.yxdown.com"&gt;http://www.yxdown.com&lt;/a&gt;&lt;br&gt;&lt;a target="_new" href="http://www.itcnw.com"&gt;http://www.itcnw.com&lt;/a&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=69037" width="1" height="1"&gt;</description></item><item><title>re: Remember to invoke  FlushFinalBlock() </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/09/4787.aspx#69033</link><pubDate>Thu, 06 Oct 2005 05:52:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:69033</guid><dc:creator>Montaque</dc:creator><description>Thank you  I am learning of new things all day! And it is good to know of my RSS already work. I think I need add button of RSS to make this thing clear.&lt;br&gt; But more work to do!&lt;br&gt;&lt;a target="_new" href="http://www.52z.com"&gt;http://www.52z.com&lt;/a&gt;&lt;br&gt;&lt;a target="_new" href="http://www.k198.com"&gt;http://www.k198.com&lt;/a&gt;&lt;br&gt;&lt;a target="_new" href="http://www.yxdown.com"&gt;http://www.yxdown.com&lt;/a&gt;&lt;br&gt;&lt;a target="_new" href="http://www.itcnw.com"&gt;http://www.itcnw.com&lt;/a&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=69033" width="1" height="1"&gt;</description></item><item><title>re:  using the Indexing Service with .Net</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4486.aspx#67356</link><pubDate>Thu, 22 Sep 2005 18:55:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:67356</guid><dc:creator>Montaque</dc:creator><description>Hi guys, &lt;br&gt;&lt;br&gt;I am using MSSEearch feature that incoperate with IIS. Problem is when I given criteria to search for C++ or C#, system is removing ++ and # from search criteria.&lt;br&gt;&lt;br&gt;The criteria shown as header is showing as &amp;quot;C &amp;quot; or &amp;quot;VC &amp;quot; instead &lt;br&gt;of &amp;quot;C++&amp;quot; or &amp;quot;VC++&amp;quot;.  It is also highlighting the phrase &amp;quot;C&amp;quot; or &amp;quot;VC&amp;quot; instead of &amp;quot;C++&amp;quot;  or &amp;quot;VC++&amp;quot;, in the Query Result screen, which is wrong as to the search  criteria.&lt;br&gt;&lt;br&gt;Here is the example link for you: (though you cannot access but for reference)&lt;br&gt;&lt;br&gt;&lt;a target="_new" href="http://192.168.2.4/null.htw?CiWebHitsFile=%2FTemp%2FBENE59591Resume%2Edoc&amp;amp;CiRestriction=%28%40CONTENTS+%28%22c++%22%29%29&amp;amp;CiBold=True&amp;amp;CiHiliteType=Full"&gt;http://192.168.2.4/null.htw?CiWebHitsFile=%2FTemp%2FBENE59591Resume%2Edoc&amp;amp;CiRestriction=%28%40CONTENTS+%28%22c++%22%29%29&amp;amp;CiBold=True&amp;amp;CiHiliteType=Full&lt;/a&gt;&lt;br&gt;&lt;br&gt;output&lt;br&gt;&lt;br&gt;&amp;quot;(@CONTENTS (&amp;quot;c &amp;quot;))&amp;quot; in &lt;br&gt;&lt;br&gt;/Temp/BENE59591Resume.doc &lt;br&gt;&lt;br&gt;....... text truncated .......&lt;br&gt;&lt;br&gt;Amit&lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=67356" width="1" height="1"&gt;</description></item><item><title>Pretty Good</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/08/4767.aspx#61541</link><pubDate>Thu, 04 Aug 2005 19:06:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:61541</guid><dc:creator>Montaque</dc:creator><description>excellent !! you fu'n rule, dude&lt;br&gt;contact me, please&lt;br&gt;nirvfan_mty (at) hot... blah blah blah&lt;br&gt;&lt;br&gt;cheers&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=61541" width="1" height="1"&gt;</description></item><item><title>re: Convert C code to C#? </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4497.aspx#56465</link><pubDate>Tue, 05 Jul 2005 00:34:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:56465</guid><dc:creator>Montaque</dc:creator><description>//&lt;br&gt;// CTS Electronics&lt;br&gt;// Corso Vercelli, 332 - 10015 Ivrea (TORINO) Italy&lt;br&gt;// January 2001&lt;br&gt;//&lt;br&gt;// Phone ++39 125 235611&lt;br&gt;// Telefax ++39 125 235623&lt;br&gt;//&lt;br&gt;// www.ctsgroup.it		techsupp@ctsgroup.it&lt;br&gt;//&lt;br&gt;//&lt;br&gt;// All rights reserved&lt;br&gt;//&lt;br&gt;// We reserve the right to vary technical specification&lt;br&gt;//&lt;br&gt;//  MODULE:   LSAPI.H&lt;br&gt;//&lt;br&gt;//  PURPOSE:  LS Include Interface&lt;br&gt;&lt;br&gt;&lt;br&gt;#ifndef LSAPI_H&lt;br&gt;#define LSAPI_H     1&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;//                     DEFINES&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;&lt;br&gt;// Parameter Type peripheral&lt;br&gt;#define LS_100_USB						100&lt;br&gt;#define LS_100_RS232					101&lt;br&gt;#define LS_200_SCSI						200&lt;br&gt;#define LS_200_USB						201&lt;br&gt;#define LS_5xx_SCSI						500&lt;br&gt;#define LS_510_TCPIP					501&lt;br&gt;#define LS_515_USB						502&lt;br&gt;#define LS_600_SCSI						600&lt;br&gt;#define LS_800_SCSI						800&lt;br&gt;#define LS_800_USB						801&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter FrontStamp&lt;br&gt;#define NO_STAMP						0&lt;br&gt;#define FRONT_STAMP						1&lt;br&gt;#define BACK_STAMP						2&lt;br&gt;#define FRONT_AND_BACK_STAMP			3&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Validate&lt;br&gt;#define NO_PRINT_VALIDATE				0&lt;br&gt;#define PRINT_VALIDATE					1&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Feed&lt;br&gt;#define AUTO_FEED						0&lt;br&gt;#define PATH_FEED						1&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Sorter&lt;br&gt;#define HOLD_DOCUMENT					0&lt;br&gt;#define SORTER_BAY1						1&lt;br&gt;#define SORTER_BAY2						2&lt;br&gt;#define SORTER_AUTOMATIC				3&lt;br&gt;#define SORTER_SWITCH_1_TO_2			4&lt;br&gt;#define EJECT_DOCUMENT					5&lt;br&gt;#define SORTER_ON_CODELINE_CALLBACK		6&lt;br&gt;&lt;br&gt;&lt;br&gt;// Specific for LS800&lt;br&gt;#define SORTER_0_SELECTED				0&lt;br&gt;#define SORTER_1_SELECTED				1&lt;br&gt;#define SORTER_2_SELECTED				2&lt;br&gt;#define SORTER_3_SELECTED				3&lt;br&gt;#define SORTER_4_SELECTED				4&lt;br&gt;#define SORTER_5_SELECTED				5&lt;br&gt;#define SORTER_6_SELECTED				6&lt;br&gt;#define SORTER_7_SELECTED				7&lt;br&gt;#define SORTER_8_SELECTED				8&lt;br&gt;#define SORTER_9_SELECTED				9&lt;br&gt;#define SORTER_10_SELECTED				10&lt;br&gt;#define SORTER_11_SELECTED				11&lt;br&gt;#define SORTER_12_SELECTED				12&lt;br&gt;#define SORTER_13_SELECTED				13&lt;br&gt;#define SORTER_14_SELECTED				14&lt;br&gt;#define SORTER_15_SELECTED				15&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Codeline&lt;br&gt;#define NO_READ_CODELINE				0&lt;br&gt;#define READ_CODELINE_MICR				1&lt;br&gt;#define READ_BARCODE_PDF417				2&lt;br&gt;#define READ_BARCODE_HW					6&lt;br&gt;#define READ_MICR_AND_BARCODE_HW		7&lt;br&gt;#define READ_CODELINE_OPTIC				21&lt;br&gt;#define READ_MICR_AND_OPTIC				22&lt;br&gt;#define READ_OPTIC_AND_PDF417			23&lt;br&gt;&lt;br&gt;#define READ_BARCODE_2_OF_5				50&lt;br&gt;#define READ_BARCODE_CODE39				51&lt;br&gt;#define READ_BARCODE_CODE128			52&lt;br&gt;#define READ_BARCODE_EAN13				53&lt;br&gt;&lt;br&gt;#define READ_CODELINE_HW_OCRA			0x41	//'A'&lt;br&gt;#define READ_CODELINE_HW_OCRB_NUM		0x42	//'B'&lt;br&gt;#define READ_CODELINE_HW_OCRB_ALFANUM	0x43	//'C'&lt;br&gt;#define READ_CODELINE_HW_E13B			0x45	//'E'&lt;br&gt;#define READ_CODELINE_HW_OCRB_ITALY		0x46	//'F'&lt;br&gt;#define READ_CODELINE_HW_E13B_X_OCRB	0x58	//'X'&lt;br&gt;#define READ_CODELINE_HW_MULTI_READ		0x4d	//'M'&lt;br&gt;&lt;br&gt;&lt;br&gt;#define READ_CODELINE_SW_OCRA			0x41	//'A'&lt;br&gt;#define READ_CODELINE_SW_OCRB_NUM		0x42	//'B'&lt;br&gt;#define READ_CODELINE_SW_OCRB_ALFANUM	0x43	//'C'&lt;br&gt;#define READ_CODELINE_SW_OCRB_ITALY		0x46	//'F'&lt;br&gt;#define READ_CODELINE_SW_E13B			0x45	//'E'&lt;br&gt;#define READ_CODELINE_SW_E13B_X_OCRB	0x58	//'X'&lt;br&gt;#define READ_CODELINE_SW_MULTI_READ		0x4d	//'M'&lt;br&gt;&lt;br&gt;#define READ_ONE_CODELINE_TYPE			0x4e	//'N'&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter OriginMeasureDoc&lt;br&gt;#define BOTTOM_LEFT_PIXEL				0&lt;br&gt;#define BOTTOM_RIGHT_MM					10&lt;br&gt;#define BOTTOM_RIGHT_INCH				20&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Unit&lt;br&gt;#define UNIT_MM							0&lt;br&gt;#define UNIT_INCH						1&lt;br&gt;&lt;br&gt;&lt;br&gt;// Value of height to decode a software Codeline&lt;br&gt;#define MAX_PIXEL_HEIGHT				42&lt;br&gt;#define OCR_VALUE_IN_MM					10.5&lt;br&gt;#define OCR_VALUE_IN_INCH				0.41&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter OCR_Image_Side&lt;br&gt;#define OCR_FRONT_IMAGE					0&lt;br&gt;#define OCR_BACK_IMAGE					1&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter ResetType&lt;br&gt;#define RESET_ERROR						0x30&lt;br&gt;#define RESET_FREE_PATH					0x31&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter ScanMode&lt;br&gt;#define SCAN_MODE_BW					1&lt;br&gt;#define SCAN_MODE_16GR100				2&lt;br&gt;#define SCAN_MODE_16GR200				3&lt;br&gt;#define SCAN_MODE_256GR100				4&lt;br&gt;#define SCAN_MODE_256GR200				5&lt;br&gt;#define SCAN_MODE_BW_TIFF				6&lt;br&gt;#define SCAN_MODE_COLOR_100				10&lt;br&gt;#define SCAN_MODE_COLOR_200				11&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter ReadMode&lt;br&gt;#define READMODE_BRUTTO					0&lt;br&gt;#define READMODE_NETTO					1&lt;br&gt;#define READMODE_ALL					2&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter ClearBlack&lt;br&gt;#define NO_CLEAR_BLACK					0&lt;br&gt;#define CLEAR_ALL_BLACK 				1&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Side&lt;br&gt;#define SIDE_NONE_IMAGE					'N'&lt;br&gt;#define SIDE_FRONT_IMAGE				'F'&lt;br&gt;#define SIDE_BACK_IMAGE					'B'&lt;br&gt;#define SIDE_ALL_IMAGE					'X'&lt;br&gt;#define SIDE_FRONT_BLUE_IMAGE			'G'&lt;br&gt;#define SIDE_BACK_BLUE_IMAGE			'C'&lt;br&gt;#define SIDE_ALL_BLUE_IMAGE				'Y'&lt;br&gt;#define SIDE_FRONT_GREEN_IMAGE			'H'&lt;br&gt;#define SIDE_BACK_GREEN_IMAGE			'D'&lt;br&gt;#define SIDE_ALL_GREEN_IMAGE			'W'&lt;br&gt;#define SIDE_FRONT_RED_IMAGE			'I'&lt;br&gt;#define SIDE_BACK_RED_IMAGE				'E'&lt;br&gt;#define SIDE_ALL_RED_IMAGE				'Z'&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Image Coordinate&lt;br&gt;#define IMAGE_MAX_WIDTH					1720&lt;br&gt;#define IMAGE_MAX_HEIGHT				848&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Method&lt;br&gt;#define ALGORITHM_CTS						4&lt;br&gt;#define ALGORITHM_CTS_2						5&lt;br&gt;#define ALGORITHM_NODITHERING				0x10&lt;br&gt;#define ALGORITHM_FLOYDSTEINDITHERING		0x11&lt;br&gt;#define ALGORITHM_STUCKIDITHERING			0x12&lt;br&gt;#define ALGORITHM_BURKESDITHERING			0x13&lt;br&gt;#define ALGORITHM_SIERRADITHERING			0x14&lt;br&gt;#define ALGORITHM_STEVENSONARCEDITHERING	0x15&lt;br&gt;#define ALGORITHM_JARVISDITHERING			0x16&lt;br&gt;&lt;br&gt;#define DEFAULT_POLO_FILTER					450&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Format&lt;br&gt;#define FORMAT_NORMAL					'N'&lt;br&gt;#define FORMAT_BOLD						'B'&lt;br&gt;&lt;br&gt;#define FORMAT_IATA						0x20	// Badge Track 1&lt;br&gt;#define FORMAT_ABA						0x40	// Badge Track 2&lt;br&gt;#define FORMAT_MINTS					0x80	// Badge Track 3&lt;br&gt;#define FORMAT_IATA_ABA					0x60	// Badge Track 1 and 2&lt;br&gt;#define FORMAT_ABA_MINTS				0xc0	// Badge Track 2 and 3&lt;br&gt;#define FORMAT_IATA_ABA_MINTS			0xe0	// Badge Track 1, 2 and 3&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Timeout&lt;br&gt;#define MIN_TIMEOUT						500&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Wait_com&lt;br&gt;#define WAIT_NO							'G'&lt;br&gt;#define WAIT_YES						'W'&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Beep&lt;br&gt;#define	NO_BEEP							0&lt;br&gt;#define	BEEP							1&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter SaveOnFile&lt;br&gt;#define	IMAGE_SAVE_ON_FILE				4&lt;br&gt;#define	IMAGE_SAVE_HANDLE				5&lt;br&gt;#define	IMAGE_SAVE_BOTH					6&lt;br&gt;#define	IMAGE_SAVE_NONE					7&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter FileFormat&lt;br&gt;#define	SAVE_JPEG						10&lt;br&gt;#define	SAVE_BMP						11&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter: Tiff type&lt;br&gt;#define FILE_TIF						3		// Tagged Image File Format&lt;br&gt;#define FILE_CCITT						25		// TIFF  CCITT&lt;br&gt;#define FILE_CCITT_GROUP3_1DIM			27		// CCITT Group3 one dimension&lt;br&gt;#define FILE_CCITT_GROUP3_2DIM			28		// CCITT Group3 two dimensions&lt;br&gt;#define FILE_CCITT_GROUP4				29		// CCITT Group4 two dimensions&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter: uSaveMulti&lt;br&gt;#define SAVE_OVERWRITE					0&lt;br&gt;#define SAVE_APPEND						1&lt;br&gt;#define SAVE_REPLACE					2&lt;br&gt;#define SAVE_INSERT						3&lt;br&gt;&lt;br&gt;&lt;br&gt;// Printer choise&lt;br&gt;#define PRINTER_FRONT					0&lt;br&gt;#define PRINTER_BACK					1&lt;br&gt;&lt;br&gt;&lt;br&gt;#define	CODE_LINE_LENGTH				256		// Max length of returned codeline&lt;br&gt;&lt;br&gt;#define MAX_OPTICAL_WINDOWS				5		// Nr. window * 5 bytes per window&lt;br&gt;#define MAX_CRITERIA					5		// Nr. max of selection criteria&lt;br&gt;#define MAX_CHAR_CHECK					10		// Nr. max of check char&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Sorter Criteria only for LS515&lt;br&gt;#define CRITERIA_NO								0x00&lt;br&gt;#define CRITERIA_ERROR_IN_CODELINE				0x01&lt;br&gt;#define CRITERIA_CODELINE_EQUAL_STR1			0x02&lt;br&gt;#define CRITERIA_CODELINE_DIFF_STR1				0x03&lt;br&gt;#define CRITERIA_CODELINE_GREAT_STR1			0x04&lt;br&gt;#define CRITERIA_CODELINE_MIN_STR1				0x05&lt;br&gt;#define CRITERIA_CODELINE_INTO_STR1_STR2		0x06&lt;br&gt;#define CRITERIA_CODELINE_OUT_STR1_STR2			0x07&lt;br&gt;#define CRITERIA_CODELINE_EQUAL_STR1_OR_STR2	0x08&lt;br&gt;#define CRITERIA_CODELINE_DIFF_STR1_AND_STR2	0x09&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter Double Leafing&lt;br&gt;#define DOUBLE_LEAFING_WARNING			0&lt;br&gt;#define DOUBLE_LEAFING_ERROR			1&lt;br&gt;&lt;br&gt;#define DOUBLE_LEAFING_LEVEL1			0x01&lt;br&gt;#define DOUBLE_LEAFING_LEVEL2			0x02&lt;br&gt;#define DOUBLE_LEAFING_LEVEL3			0x03&lt;br&gt;#define DOUBLE_LEAFING_DEFAULT			0x04&lt;br&gt;#define DOUBLE_LEAFING_LEVEL4			0x05&lt;br&gt;#define DOUBLE_LEAFING_LEVEL5			0x06&lt;br&gt;#define DOUBLE_LEAFING_DISABLE			0x07&lt;br&gt;&lt;br&gt;&lt;br&gt;// Parameter History&lt;br&gt;#define CMD_READ_HISTORY				1&lt;br&gt;#define CMD_ERASE_HISTORY				2&lt;br&gt;&lt;br&gt;&lt;br&gt;#define PERIPHERAL_LS100_SIZE_MEMORY	36 * 1024	//Total memory of the peripheral&lt;br&gt;#define PERIPHERAL_LS200_SIZE_MEMORY	80 * 1024	//Total memory of the peripheral&lt;br&gt;#define PERIPHERAL_LS5xx_SIZE_MEMORY	64 * 1024	//Total memory of the peripheral&lt;br&gt;#define PERIPHERAL_LS800_SIZE_MEMORY	24 * 1024	//Total memory of the peripheral&lt;br&gt;&lt;br&gt;&lt;br&gt;// String for identify the periferal connected&lt;br&gt;#define MODEL_LS100_1					&amp;quot;LS100USB&amp;quot;&lt;br&gt;#define MODEL_LS100_2					&amp;quot;LS100RS_&amp;quot;&lt;br&gt;#define MODEL_LS100_3					&amp;quot;LS100/3_&amp;quot;&lt;br&gt;#define MODEL_LS100_4					&amp;quot;LS100/4_&amp;quot;&lt;br&gt;&lt;br&gt;#define MODEL_LS200_USB					&amp;quot;LS200USB&amp;quot;&lt;br&gt;#define MODEL_LS200_1					&amp;quot;C.T.S.  LS200/1&amp;quot;&lt;br&gt;#define MODEL_LS200_2					&amp;quot;C.T.S.  LS200/2&amp;quot;&lt;br&gt;&lt;br&gt;#define MODEL_LS500						&amp;quot;C.T.S.  LS500&amp;quot;&lt;br&gt;#define MODEL_LS505						&amp;quot;C.T.S.  LS505&amp;quot;&lt;br&gt;#define MODEL_LS510S					&amp;quot;C.T.S.  LS510S&amp;quot;&lt;br&gt;#define MODEL_LS510D					&amp;quot;C.T.S.  LS510D&amp;quot;&lt;br&gt;#define MODEL_LS515						&amp;quot;C.T.S.  LS515&amp;quot;&lt;br&gt;&lt;br&gt;#define MODEL_LS800_1					&amp;quot;LS8/1&amp;quot;&lt;br&gt;#define MODEL_LS800_2					&amp;quot;LS8/2&amp;quot;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;//                          REPLY-CODE&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;&lt;br&gt;#define		LS_OKAY								0&lt;br&gt;&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;//                  ERRORS&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;#define		LS_SYSTEM_ERROR						-1&lt;br&gt;#define		LS_USB_ERROR						-2&lt;br&gt;#define		LS_PERIPHERAL_NOT_FOUND				-3&lt;br&gt;#define		LS_HARDWARE_ERROR					-4&lt;br&gt;#define		LS_PERIPHERAL_OFF_ON				-5&lt;br&gt;#define		LS_RESERVED_ERROR					-6&lt;br&gt;#define		LS_BOURRAGE							-7&lt;br&gt;#define		LS_PAPER_JAM						-7&lt;br&gt;#define		LS_TARGET_BUSY						-8&lt;br&gt;#define		LS_INVALID_COMMAND					-9&lt;br&gt;#define		LS_DATA_LOST						-10&lt;br&gt;#define		LS_COMMAND_IN_EXECUTION_YET			-11&lt;br&gt;#define		LS_JPEG_ERROR						-12&lt;br&gt;#define		LS_COMMAND_SEQUENCE_ERROR			-13&lt;br&gt;#define		LS_NOT_USED							-14&lt;br&gt;#define		LS_IMAGE_OVERWRITE					-15&lt;br&gt;#define		LS_INVALID_HANDLE					-16&lt;br&gt;#define		LS_NO_LIBRARY_LOAD					-17&lt;br&gt;#define		LS_BMP_ERROR						-18&lt;br&gt;#define		LS_TIFF_ERROR						-19&lt;br&gt;#define		LS_IMAGE_NO_MORE_AVAILABLE			-20&lt;br&gt;#define		LS_IMAGE_NO_FILMED					-21&lt;br&gt;#define		LS_IMAGE_NOT_PRESENT				-22&lt;br&gt;#define		LS_FUNCTION_NOT_AVAILABLE			-23&lt;br&gt;#define		LS_DOCUMENT_NOT_SUPPORTED			-24&lt;br&gt;#define		LS_BARCODE_ERROR					-25&lt;br&gt;#define		LS_INVALID_LIBRARY					-26&lt;br&gt;#define		LS_INVALID_IMAGE					-27&lt;br&gt;#define		LS_INVALID_IMAGE_FORMAT				-28&lt;br&gt;#define		LS_INVALID_BARCODE_TYPE				-29&lt;br&gt;#define		LS_OPEN_NOT_DONE					-30&lt;br&gt;#define		LS_INVALID_TYPE_COMMAND				-31&lt;br&gt;#define		LS_INVALID_CLEARBLACK				-32&lt;br&gt;#define		LS_INVALID_SIDE						-33&lt;br&gt;#define		LS_MISSING_IMAGE					-34&lt;br&gt;#define		LS_INVALID_TYPE						-35&lt;br&gt;#define		LS_INVALID_SAVEMODE					-36&lt;br&gt;#define		LS_INVALID_PAGE_NUMBER				-37&lt;br&gt;#define		LS_INVALID_NRIMAGE					-38&lt;br&gt;#define		LS_INVALID_STAMP					-39&lt;br&gt;#define		LS_INVALID_WAITTIMEOUT				-40&lt;br&gt;#define		LS_INVALID_VALIDATE					-41&lt;br&gt;#define		LS_INVALID_CODELINE_TYPE			-42&lt;br&gt;#define		LS_MISSING_NRIMAGE					-43&lt;br&gt;#define		LS_INVALID_SCANMODE					-44&lt;br&gt;#define		LS_INVALID_BEEP						-45&lt;br&gt;#define		LS_INVALID_FEEDER					-46&lt;br&gt;#define		LS_INVALID_SORTER					-47&lt;br&gt;#define		LS_INVALID_BADGE_TRACK				-48&lt;br&gt;#define		LS_MISSING_FILENAME					-49&lt;br&gt;#define		LS_INVALID_QUALITY					-50&lt;br&gt;#define		LS_INVALID_FILEFORMAT				-51&lt;br&gt;#define		LS_INVALID_COORDINATE				-52&lt;br&gt;#define		LS_MISSING_HANDLE_VARIABLE			-53&lt;br&gt;#define		LS_INVALID_POLO_FILTER				-54&lt;br&gt;#define		LS_INVALID_ORIGIN_MEASURES			-55&lt;br&gt;#define		LS_INVALID_SIZEH_VALUE				-56&lt;br&gt;#define		LS_INVALID_FORMAT					-57&lt;br&gt;#define		LS_STRINGS_TOO_LONGS				-58&lt;br&gt;#define		LS_READ_IMAGE_FAILED				-59&lt;br&gt;#define		LS_INVALID_CMD_HISTORY				-60&lt;br&gt;#define		LS_MISSING_BUFFER_HISTORY			-61&lt;br&gt;#define		LS_INVALID_ANSWER					-62&lt;br&gt;#define		LS_OPEN_FILE_ERROR_OR_NOT_FOUND		-63&lt;br&gt;#define		LS_READ_TIMEOUT_EXPIRED				-64&lt;br&gt;#define		LS_INVALID_METHOD					-65&lt;br&gt;#define		LS_CALIBRATION_FAILED				-66&lt;br&gt;#define		LS_INVALID_SAVEIMAGE				-67&lt;br&gt;#define		LS_INVALID_UNIT						-68&lt;br&gt;#define		LS_INVALID_NRWINDOWS				-71&lt;br&gt;#define		LS_INVALID_VALUE					-72&lt;br&gt;#define		LS_ILLEGAL_REQUEST					-73&lt;br&gt;#define		LS_INVALID_NR_CRITERIA				-74&lt;br&gt;#define		LS_MISSING_CRITERIA_STRUCTURE		-75&lt;br&gt;#define		LS_INVALID_MOVEMENT					-76&lt;br&gt;#define		LS_INVALID_DEGREE					-77&lt;br&gt;#define		LS_R0TATE_ERROR						-78&lt;br&gt;#define		LS_MICR_VALUE_OUT_OF_RANGE			-79&lt;br&gt;#define		LS_PERIPHERAL_RESERVED				-80&lt;br&gt;#define		LS_INVALID_NCHANGE					-81&lt;br&gt;#define		LS_BRIGHTNESS_ERROR					-82&lt;br&gt;#define		LS_CONTRAST_ERROR					-83&lt;br&gt;#define		LS_INVALID_SIDETOPRINT				-84&lt;br&gt;#define		LS_DOUBLE_LEAFING_ERROR				-85&lt;br&gt;#define		LS_INVALID_BADGE_TIMEOUT			-86&lt;br&gt;#define		LS_INVALID_RESET_TYPE				-87&lt;br&gt;#define		LS_MISSING_SET_CALLBACK				-88&lt;br&gt;#define		LS_IMAGE_NOT_200_DPI				-89&lt;br&gt;&lt;br&gt;#define		LS_SCAN_NETTO_IMAGE_NOT_SUPPORTED	-521&lt;br&gt;#define		LS_256_GRAY_NOT_SUPPORTED			-522&lt;br&gt;#define		LS_INVALID_PATH						-523&lt;br&gt;#define		LS_MISSING_CALLBACK_FUNCTION		-526&lt;br&gt;#define		LS_INVALID_OCR_IMAGE_SIDE			-558&lt;br&gt;#define		LS_PERIPHERAL_NOT_ANSWER			-599&lt;br&gt;&lt;br&gt;#define		LS_INVALID_CONNECTION_HANDLE		-1000&lt;br&gt;#define		LS_INVALID_CONNECT_PERIPHERAL		-1001&lt;br&gt;#define		LS_PERIPHERAL_NOT_YET_INTEGRATE		-1002&lt;br&gt;#define		LS_UNKNOW_PERIPHERAL_REPLY			-1003&lt;br&gt;#define		LS_CODELINE_ALREADY_DEFINED			-1004&lt;br&gt;#define		LS_INVALID_NUMBER_OF_DOC			-1005&lt;br&gt;&lt;br&gt;#define		LS_DECODE_FONT_NOT_PRESENT			-1101&lt;br&gt;#define		LS_DECODE_INVALID_COORDINATE		-1102&lt;br&gt;#define		LS_DECODE_INVALID_OPTION			-1103&lt;br&gt;#define		LS_DECODE_INVALID_CODELINE_TYPE		-1104&lt;br&gt;#define		LS_DECODE_SYSTEM_ERROR				-1105&lt;br&gt;#define		LS_DECODE_DATA_TRUNC				-1106&lt;br&gt;#define		LS_DECODE_INVALID_BITMAP			-1107&lt;br&gt;#define		LS_DECODE_ILLEGAL_USE				-1108&lt;br&gt;&lt;br&gt;#define		LS_BARCODE_GENERIC_ERROR		    -1201&lt;br&gt;#define		LS_BARCODE_NOT_DECODABLE			-1202&lt;br&gt;#define		LS_BARCODE_OPENFILE_ERROR			-1203&lt;br&gt;#define		LS_BARCODE_READBMP_ERROR		    -1204&lt;br&gt;#define		LS_BARCODE_MEMORY_ERROR				-1205&lt;br&gt;#define		LS_BARCODE_START_NOTFOUND			-1206&lt;br&gt;#define		LS_BARCODE_STOP_NOTFOUND			-1207&lt;br&gt;&lt;br&gt;#define		LS_PDF_NOT_DECODABLE				-1301&lt;br&gt;#define		LS_PDF_READBMP_ERROR				-1302&lt;br&gt;#define		LS_PDF_BITMAP_FORMAT_ERROR			-1303&lt;br&gt;#define		LS_PDF_MEMORY_ERROR					-1304&lt;br&gt;#define		LS_PDF_START_NOTFOUND				-1305&lt;br&gt;#define		LS_PDF_STOP_NOTFOUND				-1306&lt;br&gt;#define		LS_PDF_LEFTIND_ERROR				-1307&lt;br&gt;#define		LS_PDF_RIGHTIND_ERROR				-1308&lt;br&gt;#define		LS_PDF_OPENFILE_ERROR				-1309&lt;br&gt;&lt;br&gt;&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;//                  WARNINGS&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;#define		LS_FEEDER_EMPTY						1&lt;br&gt;#define		LS_DATA_TRUNCATED					2&lt;br&gt;#define		LS_DOC_PRESENT						3&lt;br&gt;#define		LS_BADGE_TIMEOUT					4&lt;br&gt;#define		LS_ALREADY_OPEN						5&lt;br&gt;#define		LS_PERIPHERAL_BUSY					6&lt;br&gt;#define		LS_DOUBLE_LEAFING_WARNING			7&lt;br&gt;#define		LS_COMMAND_NOT_ENDED				8&lt;br&gt;#define		LS_RETRY							9&lt;br&gt;#define		LS_NO_OTHER_DOCUMENT				10&lt;br&gt;#define		LS_QUEUE_FULL						11&lt;br&gt;#define		LS_NO_SENSE							12&lt;br&gt;#define		LS_TRY_TO_RESET						14&lt;br&gt;#define		LS_STRING_TRUNCATED					15&lt;br&gt;#define		LS_COMMAND_NOT_SUPPORTED			19&lt;br&gt;#define		LS_SORTER1_FULL						35&lt;br&gt;#define		LS_SORTER2_FULL						36&lt;br&gt;#define		LS_SORTERS_BOTH_FULL				37&lt;br&gt;#define		LS_KEEP_DOC_ON_CODELINE_ERROR		39&lt;br&gt;#define		LS_LOOP_INTERRUPTED					40&lt;br&gt;&lt;br&gt;#define		LS_SORTER_1_POCKET_1_FULL			51&lt;br&gt;#define		LS_SORTER_1_POCKET_2_FULL			52&lt;br&gt;#define		LS_SORTER_1_POCKET_3_FULL			53&lt;br&gt;#define		LS_SORTER_2_POCKET_1_FULL			54&lt;br&gt;#define		LS_SORTER_2_POCKET_2_FULL			55&lt;br&gt;#define		LS_SORTER_2_POCKET_3_FULL			56&lt;br&gt;#define		LS_SORTER_3_POCKET_1_FULL			57&lt;br&gt;#define		LS_SORTER_3_POCKET_2_FULL			58&lt;br&gt;#define		LS_SORTER_3_POCKET_3_FULL			59&lt;br&gt;#define		LS_SORTER_4_POCKET_1_FULL			60&lt;br&gt;#define		LS_SORTER_4_POCKET_2_FULL			61&lt;br&gt;#define		LS_SORTER_4_POCKET_3_FULL			62&lt;br&gt;#define		LS_SORTER_5_POCKET_1_FULL			63&lt;br&gt;#define		LS_SORTER_5_POCKET_2_FULL			64&lt;br&gt;#define		LS_SORTER_5_POCKET_3_FULL			65&lt;br&gt;&lt;br&gt;&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;//					DEFINES STRUTTURES&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;// structure for configure the read codeline from bitmap&lt;br&gt;typedef struct _ReadOption&lt;br&gt;{&lt;br&gt;	BOOL	PutBlanks;&lt;br&gt;	char	TypeRead;&lt;br&gt;}READOPTIONS, *LPREADOPTIONS;&lt;br&gt;&lt;br&gt;&lt;br&gt;typedef struct _DATAOPTICALWINDOW&lt;br&gt;{&lt;br&gt;	unsigned char	TypeRead;			// Type of read choise&lt;br&gt;	unsigned char	Reserved;			// Reserved&lt;br&gt;	short			XRightBottom;		// X1 coordinates&lt;br&gt;	short			YRightBottom;		// Y1 coordinates&lt;br&gt;	short			Size;				// size&lt;br&gt;	short			Height;				// height&lt;br&gt;} DATAOPTICALWINDOW, *PDATAOPTICALWINDOW;&lt;br&gt;&lt;br&gt;&lt;br&gt;typedef struct _DATASORTERSELECT&lt;br&gt;{&lt;br&gt;	char	TypeCriteria;				// Type of criteria choise&lt;br&gt;	char	CharToStart;				// Char to start check in the codeline&lt;br&gt;	char	NrCharCheck;				// Lenght string 1 and/or string 2&lt;br&gt;	char	String1[MAX_CHAR_CHECK];	// String 1&lt;br&gt;	char	String2[MAX_CHAR_CHECK];	// String 2&lt;br&gt;	char	Bin;						// Bin where put the document&lt;br&gt;} DATASORTERSELECT, *PDATASORTERSELECT;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Structure usefull for returned information about the just read codeline&lt;br&gt;typedef struct _S_CODELINE_INFO&lt;br&gt;{&lt;br&gt;	// Parameter compiled from LS500.dll&lt;br&gt;	short			Size;							// Size of the struct&lt;br&gt;	unsigned long	NrDoc;							// Progessive document number&lt;br&gt;	char			CodelineRead[CODE_LINE_LENGTH];	// Codeline returned&lt;br&gt;	short			NrBytes;						// Length of the codeline&lt;br&gt;	unsigned long	Reserved;						// Reserved for future use&lt;br&gt;&lt;br&gt;	// Parameter compiled from Application&lt;br&gt;	short			Sorter;							// Sorter where put the document&lt;br&gt;	char			FormatString;					// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint[80];				// String to print rear of the document&lt;br&gt;} S_CODELINE_INFO, *LPS_CODELINE_INFO;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Structure usefull for returned information about the just read codeline&lt;br&gt;typedef struct _S_CODELINE_INFO_VB&lt;br&gt;{&lt;br&gt;	// Parameter compiled from LS500.dll&lt;br&gt;	short			Size;							// Size of the struct&lt;br&gt;	unsigned long	NrDoc;							// Progessive document number&lt;br&gt;	WCHAR			CodelineRead[CODE_LINE_LENGTH];	// Codeline returned&lt;br&gt;	short			NrBytes;						// Length of the codeline&lt;br&gt;	unsigned long	Reserved;						// Reserved for future use&lt;br&gt;&lt;br&gt;	// Parameter compiled from Application&lt;br&gt;	short			Sorter;							// Sorter where put the document&lt;br&gt;	short			FormatString;					// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint[80];				// String to print rear of the document&lt;br&gt;} S_CODELINE_INFO_VB, *LPS_CODELINE_INFO_VB;&lt;br&gt;&lt;br&gt;&lt;br&gt;// structure for read usefull information about the just stored image&lt;br&gt;typedef struct _S_CODELINE_INFO_LS100&lt;br&gt;{&lt;br&gt;	short			Size;							// Size of the struct&lt;br&gt;	unsigned long	NrDoc;							// Progessive document number&lt;br&gt;	char			CodelineRead[CODE_LINE_LENGTH];	// Codeline returned&lt;br&gt;	short			NrBytes;						// Length of the codeline&lt;br&gt;} S_CODELINE_INFO_LS100, *LPS_CODELINE_INFO_LS100;&lt;br&gt;&lt;br&gt;&lt;br&gt;// structure for read usefull information about the just stored image&lt;br&gt;typedef struct _S_IMAGE_INFO_LS100&lt;br&gt;{&lt;br&gt;	short			Size;				// Size of the struct&lt;br&gt;	unsigned long	NrDoc;				// Progressive document number&lt;br&gt;	HANDLE			hImage;				// Image handle&lt;br&gt;	int				ImageSize;			// Image size bytes&lt;br&gt;	int				Width;				// Image width&lt;br&gt;	int				Height;				// Image height&lt;br&gt;	int				Resolution;			// Image resolution&lt;br&gt;	int				BitCount;			// Image bit count (level of grey)&lt;br&gt;} S_IMAGE_INFO_LS100, *LPS_IMAGE_INFO_LS100;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Structure usefull for returned information about the just read codeline&lt;br&gt;typedef struct _S_CODELINE_INFO_LS800&lt;br&gt;{&lt;br&gt;	// Parameter compiled from LS800.dll&lt;br&gt;	short			Size;							// Size of the struct&lt;br&gt;	unsigned long	NrDoc;							// Progessive document number&lt;br&gt;	char			CodelineRead[CODE_LINE_LENGTH];	// Codeline returned&lt;br&gt;	short			NrBytes;						// Length of the codeline&lt;br&gt;	unsigned long	Reserved;						// Reserved for future use&lt;br&gt;&lt;br&gt;	// Parameter compiled from Application&lt;br&gt;	short			Sorter;							// Sorter where put the document&lt;br&gt;	char			FormatString1;					// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint1[80];				// String line 1 to print rear of the document&lt;br&gt;	char			FormatString2;					// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint2[80];				// String line 2 to print rear of the document&lt;br&gt;	char			FormatString3;					// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint3[80];				// String line 3 to print rear of the document&lt;br&gt;	char			FormatString4;					// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint4[80];				// String line 4 to print rear of the document&lt;br&gt;} S_CODELINE_INFO_LS800, *LPS_CODELINE_INFO_LS800;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Structure usefull for returned information about the just film image&lt;br&gt;typedef struct _S_IMAGE_INFO_LS800&lt;br&gt;{&lt;br&gt;	// Parameter compiled from LS800.dll&lt;br&gt;	short			Size;					// Size of the struct&lt;br&gt;	unsigned long	NrDoc;					// Progressive document number&lt;br&gt;	HANDLE			hImage;					// Image handle&lt;br&gt;	int				ImageSize;				// Image size bytes&lt;br&gt;	int				Width;					// Image width&lt;br&gt;	int				Height;					// Image height&lt;br&gt;	int				Resolution;				// Image resolution&lt;br&gt;	int				BitCount;				// Image bit count (level of grey)&lt;br&gt;	unsigned long	Reserved;				// Reserved for future use&lt;br&gt;&lt;br&gt;	// Parameter compiled from Application (only for image front)&lt;br&gt;	short			Sorter;					// Sorter where put the document&lt;br&gt;	char			FormatString1;			// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint1[80];		// String line 1 to print rear of the document&lt;br&gt;	char			FormatString2;			// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint2[80];		// String line 2 to print rear of the document&lt;br&gt;	char			FormatString3;			// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint3[80];		// String line 3 to print rear of the document&lt;br&gt;	char			FormatString4;			// Set from application NORMAL or BOLD&lt;br&gt;	char			StringToPrint4[80];		// String line 4 to print rear of the document&lt;br&gt;} S_IMAGE_INFO_LS800, *LPS_IMAGE_INFO_LS800;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Structure usefull for returned information about the just read codeline&lt;br&gt;typedef struct _S_CODELINE_INFO_VB_LS800&lt;br&gt;{&lt;br&gt;	// Parameter compiled from LS800.dll&lt;br&gt;	short			Size;							// Size of the struct&lt;br&gt;	unsigned long	NrDoc;							// Progessive document number&lt;br&gt;	WCHAR			CodelineRead[CODE_LINE_LENGTH];	// Codeline returned&lt;br&gt;	short			NrBytes;						// Length of the codeline&lt;br&gt;	unsigned long	Reserved;						// Reserved for future use&lt;br&gt;&lt;br&gt;	// Parameter compiled from Application&lt;br&gt;	short			Sorter;							// Sorter where put the document&lt;br&gt;	short			FormatString1;					// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint1[80];				// String line 1 to print rear of the document&lt;br&gt;	short			FormatString2;					// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint2[80];				// String line 2 to print rear of the document&lt;br&gt;	short			FormatString3;					// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint3[80];				// String line 3 to print rear of the document&lt;br&gt;	short			FormatString4;					// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint4[80];				// String line 4 to print rear of the document&lt;br&gt;} S_CODELINE_INFO_VB_LS800, *LPS_CODELINE_INFO_VB_LS800;&lt;br&gt;&lt;br&gt;&lt;br&gt;// Structure usefull for returned information about the just film image&lt;br&gt;typedef struct _S_IMAGE_INFO_VB_LS800&lt;br&gt;{&lt;br&gt;	// Parameter compiled from LS800.dll&lt;br&gt;	short			Size;							// Size of the struct&lt;br&gt;	unsigned long	NrDoc;							// Progressive document number&lt;br&gt;	HANDLE			hImage;							// Image handle&lt;br&gt;	int				ImageSize;						// Image size bytes&lt;br&gt;	int				Width;							// Image width&lt;br&gt;	int				Height;							// Image height&lt;br&gt;	int				Resolution;						// Image resolution&lt;br&gt;	int				BitCount;						// Image bit count (level of grey)&lt;br&gt;	WCHAR			CodelineRead[CODE_LINE_LENGTH];	// Codeline returned&lt;br&gt;	short			NrBytes;						// Length of the codeline&lt;br&gt;	unsigned long	Reserved;						// Reserved for future use&lt;br&gt;&lt;br&gt;	// Parameter compiled from Application (only for image front)&lt;br&gt;	short			Sorter;					// Sorter where put the document&lt;br&gt;	short			FormatString1;			// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint1[80];		// String line 1 to print rear of the document&lt;br&gt;	short			FormatString2;			// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint2[80];		// String line 2 to print rear of the document&lt;br&gt;	short			FormatString3;			// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint3[80];		// String line 3 to print rear of the document&lt;br&gt;	short			FormatString4;			// Set from application NORMAL or BOLD&lt;br&gt;	WCHAR			StringToPrint4[80];		// String line 4 to print rear of the document&lt;br&gt;} S_IMAGE_INFO_VB_LS800, *LPS_IMAGE_INFO_VB_LS800;&lt;br&gt;&lt;br&gt;&lt;br&gt;// structure for read usefull information about peripheral life LS100&lt;br&gt;typedef struct _HistoryLs100&lt;br&gt;{&lt;br&gt;	short			Size;					// Size of the struct&lt;br&gt;	unsigned long	doc_sorted;				// Document sortered&lt;br&gt;	unsigned long	bourrage_feeder;		// Jam in the feeder&lt;br&gt;	unsigned long	bourrage_micr;			// Jam during the MICR reading&lt;br&gt;	unsigned long	doc_retain;				// Nr. of document retained&lt;br&gt;	unsigned long	bourrage_exit;			// Jam after the film&lt;br&gt;	unsigned long	doc_cmc7_err;			// Nr. of document CMC7, read with error&lt;br&gt;	unsigned long	doc_e13b_err;			// Nr. of document E13B, read with error&lt;br&gt;	unsigned long	time_peripheral_on;		// Minutes peripheral time life&lt;br&gt;	unsigned long	num_turn_on;			// Nr. of power on&lt;br&gt;	unsigned long	doc_ink_jet;			// Nr. of document printed&lt;br&gt;	unsigned long	doc_stamp;				// Nr. of document stamped&lt;br&gt;&lt;br&gt;} S_HISTORY_LS100, *LPS_HISTORY_LS100;&lt;br&gt;&lt;br&gt;&lt;br&gt;// structure for read usefull information about peripheral life LS200&lt;br&gt;typedef struct _HistoryLs200&lt;br&gt;{&lt;br&gt;	short			Size;					// Size of the struct&lt;br&gt;	unsigned long	nrDocProcessed;			// Document sortered&lt;br&gt;	unsigned long	nrJamFeeder;			// Jam in the feeder&lt;br&gt;	unsigned long	nrJamPath;				// Jam in the path&lt;br&gt;	unsigned long	nrJamBin;				// Jam in the pockets&lt;br&gt;	unsigned long	nrDocPrint;				// Nr. of document printed&lt;br&gt;	unsigned long	nrDocStamp;				// Nr. of document stamped&lt;br&gt;	unsigned long	nrDoubleLeafing;		// Nr. of double leafing occurs&lt;br&gt;	unsigned long	nrErrMICR;				// Nr. of document MICR, read with error&lt;br&gt;	unsigned long	nrErrOptic;				// Nr. of document Optic, read with error&lt;br&gt;	unsigned long	nrErrBarcode;			// Nr. of document Barcode, read with error&lt;br&gt;	unsigned long	time_peripheral_on;		// Seconds peripheral time life&lt;br&gt;&lt;br&gt;} S_HISTORY_LS200, *LPS_HISTORY_LS200;&lt;br&gt;&lt;br&gt;&lt;br&gt;// structure for read usefull information about peripheral life LS5xx&lt;br&gt;typedef struct _HistoryLs5xx&lt;br&gt;{&lt;br&gt;	short			Size;					// Size of the struct&lt;br&gt;	unsigned long	num_doc_handled;		// Nr. documents handled&lt;br&gt;	unsigned long	bourrage_feeder;		// Nr. jam in the feeder&lt;br&gt;	unsigned long	doc_retain_micr;		// Nr. documents retained after MICR header&lt;br&gt;	unsigned long	doc_retain_scan;		// Nr. documents retained after front scanning&lt;br&gt;	unsigned long	bourrage_stamp;			// Nr. jam at stamp document&lt;br&gt;	unsigned long	bourrage_film;			// Nr. jam during scan document&lt;br&gt;	unsigned long	bourrage_micr;			// Nr. jam during read MICR document&lt;br&gt;	unsigned long	doc_cmc7_err;			// Nr. of document CMC7, read with error&lt;br&gt;	unsigned long	doc_e13b_err;			// Nr. of document E13B, read with error&lt;br&gt;	unsigned long	doc_barcode_err;		// Nr. of document Barcode, read with error&lt;br&gt;	unsigned long	doc_optic_err;			// Nr. of document OCR, read with error&lt;br&gt;	unsigned long	time_peripheral_on;		// Seconds peripheral time life&lt;br&gt;	unsigned long	nr_power_on;			// Nr. of time power ON&lt;br&gt;&lt;br&gt;} S_HISTORY_LS5xx, *LPS_HISTORY_LS5xx;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;//                  EXPORT FUNCTIONS&lt;br&gt;// ------------------------------------------------------------------------&lt;br&gt;extern int APIENTRY LSConnect(HWND		hWnd,&lt;br&gt;							  HANDLE	hInst,&lt;br&gt;							  short		Peripheral,&lt;br&gt;							  short		*hConnect);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDisconnect(short	hConnect,&lt;br&gt;								 HWND	hWnd);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSIdentify(short	hConnect,&lt;br&gt;							   HWND		hWnd,&lt;br&gt;							   LPSTR	lpldPnt,&lt;br&gt;							   LPSTR	vendorModel,&lt;br&gt;							   LPSTR	productVersion,&lt;br&gt;							   LPSTR	DecoderExpVersion,&lt;br&gt;							   LPSTR	InkJetVersion,&lt;br&gt;							   LPSTR	SorterVersion,&lt;br&gt;							   LPSTR	MotorVersion);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDocHandle(short			hConnect,&lt;br&gt;								HWND			hWnd,&lt;br&gt;								short			Stamp,&lt;br&gt;								short			Validate,&lt;br&gt;								short			CodeLine,&lt;br&gt;								char			Side,&lt;br&gt;								short			ScanMode,&lt;br&gt;								short			Feeder,&lt;br&gt;								short			Sorter,&lt;br&gt;								short			WaitTimeout,&lt;br&gt;								short			Beep,&lt;br&gt;								unsigned long	*NrDoc,&lt;br&gt;								short			Reserved1,&lt;br&gt;								long			Reserved2);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDocHandleOverlapped(short		hConnect,&lt;br&gt;										  HWND		hWnd,&lt;br&gt;										  short		Stamp,&lt;br&gt;										  short		Validate,&lt;br&gt;										  short		CodeLine,&lt;br&gt;										  char		Side,&lt;br&gt;										  short		ScanMode,&lt;br&gt;										  short		ClearBlack,&lt;br&gt;										  short		WaitTimeout,&lt;br&gt;										  short		Beep,&lt;br&gt;										  short		NumDocument,&lt;br&gt;										  short		Reserved1,&lt;br&gt;										  long		Reserved2,&lt;br&gt;										  int		(*userfunc1)(S_CODELINE_INFO_LS100 *CodelineInfo),&lt;br&gt;										  int		(*userfunc2)(S_IMAGE_INFO_LS100 *ImageInfo),&lt;br&gt;										  int		(*userfunc3)(S_IMAGE_INFO_LS100 *ImageInfo),&lt;br&gt;										  void		*Reserved3);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDocHandleAndGetData(short			hConnect,&lt;br&gt;										  HWND			hWnd,&lt;br&gt;										  SHORT			Stamp,&lt;br&gt;										  SHORT			Validate,&lt;br&gt;										  SHORT			CodeLine,&lt;br&gt;										  short			Feeder,&lt;br&gt;										  short			Sorter,&lt;br&gt;										  SHORT			ScanMode,&lt;br&gt;										  SHORT			ClearBlack,&lt;br&gt;										  CHAR			Side,&lt;br&gt;										  short			ReadMode,&lt;br&gt;										  short			SaveImage,&lt;br&gt;										  CHAR			*DirectoryFile,&lt;br&gt;										  CHAR			*BaseFilename,&lt;br&gt;										  int			pos_x,&lt;br&gt;										  int			pos_y,&lt;br&gt;										  int			sizeW,&lt;br&gt;										  int			sizeH,&lt;br&gt;										  short			OcrImageSide,&lt;br&gt;										  int			Quality,&lt;br&gt;										  SHORT			FileFormat,&lt;br&gt;										  short			WaitTimeout,&lt;br&gt;										  short			Beep,&lt;br&gt;										  int			SaveMode,&lt;br&gt;										  int			PageNumber,&lt;br&gt;										  short			Reserved1,&lt;br&gt;										  LPVOID		Reserved2,&lt;br&gt;&lt;br&gt;										  unsigned long	*NrDoc,&lt;br&gt;										  LPSTR			FilenameFront,&lt;br&gt;										  LPSTR			FilenameBack,&lt;br&gt;										  LPSTR			Reserved3,		// immagine Fronte NETTO&lt;br&gt;										  LPSTR			Reserved4,		// immagine Retro NETTO&lt;br&gt;							  			  LPLONG		*FrontImage,&lt;br&gt;									  	  LPLONG		*BackImage,&lt;br&gt;									  	  LPLONG		*Reserved5,		// immagine Fronte NETTO&lt;br&gt;									  	  LPLONG		*Reserved6,		// immagine Retro NETTO&lt;br&gt;									  	  LPSTR			CodelineSW,&lt;br&gt;							  			  LPSTR			CodelineHW,&lt;br&gt;									  	  LPSTR			BarCode,&lt;br&gt;									  	  LPSTR			CodelinesOptical,&lt;br&gt;										  LPVOID		Reserved7,		// not used must be NULL&lt;br&gt;										  LPVOID		Reserved8);		// not used must be NULL&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetSorterCriteria(short			hConnect,&lt;br&gt;										HWND			hWnd,&lt;br&gt;										DATASORTERSELECT *pCriteria,&lt;br&gt;										short			NrCriteria);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadImage(short			hConnect,&lt;br&gt;								HWND			hWnd,&lt;br&gt;								SHORT			ClearBlack,&lt;br&gt;								CHAR			Side,&lt;br&gt;								short			ReadMode,&lt;br&gt;								unsigned long	NrDoc,&lt;br&gt;								LPHANDLE		FrontImage,&lt;br&gt;								LPHANDLE		BackImage,&lt;br&gt;								LPHANDLE		Reserved1,&lt;br&gt;								LPHANDLE		Reserved2);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetThresholdClearBlack(short			hConnect,&lt;br&gt;											 HWND			hWnd,&lt;br&gt;											 unsigned char	Threshold);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSEnableImageCorrection(short	hConnect,&lt;br&gt;											HWND	hWnd,&lt;br&gt;											BOOL	fDo);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadImagePiece(short			hConnect,&lt;br&gt;									 HWND			Hwnd,&lt;br&gt;									 CHAR			Side,&lt;br&gt;									 unsigned long	NrDoc,&lt;br&gt;									 int			pos_x,&lt;br&gt;									 int			pos_y,&lt;br&gt;									 int			sizeW,&lt;br&gt;									 int			sizeH,&lt;br&gt;									 LPHANDLE		hImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSaveJPEG(HWND		hWnd, &lt;br&gt;							   HANDLE	Face, &lt;br&gt;							   int		quality, &lt;br&gt;							   LPSTR	filename);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSaveDIB(HWND		hWnd,&lt;br&gt;							  HANDLE	hImage,&lt;br&gt;							  LPSTR		filename);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSaveTIFF(HWND		hWnd,&lt;br&gt;							   HANDLE	hImage,&lt;br&gt;							   LPSTR	filename,&lt;br&gt;							   int		Type,&lt;br&gt;							   int		SaveMode,&lt;br&gt;							   int		PageNumber);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSRotateImage(HWND		hWnd,&lt;br&gt;								  HANDLE	hImage,&lt;br&gt;								  int		degree,&lt;br&gt;								  HANDLE	*pImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSImageBrightness(HWND		hWnd,&lt;br&gt;									  HANDLE	hImage,&lt;br&gt;									  int		nChange,&lt;br&gt;									  HANDLE	*pImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSImageContrast(HWND	hWnd,&lt;br&gt;									HANDLE	hImage,&lt;br&gt;									int		nChange,&lt;br&gt;									HANDLE *pImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSCutImage(HWND		hWnd,&lt;br&gt;							   HANDLE	hImage,&lt;br&gt;							   short	Unit,&lt;br&gt;							   float	pos_x,&lt;br&gt;							   float	pos_y,&lt;br&gt;							   float	sizeW,&lt;br&gt;							   float	sizeH,&lt;br&gt;							   HANDLE	*pImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetOpticalWindows(short	hConnect,&lt;br&gt;										HWND	hWnd,&lt;br&gt;										PDATAOPTICALWINDOW pDimWindows,&lt;br&gt;										short	NrWindows);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadCodeline(short	hConnect,&lt;br&gt;								   HWND		hWnd,&lt;br&gt;								   LPSTR	Codeline,&lt;br&gt;								   SHORT	*Length_Codeline,&lt;br&gt;								   LPSTR	Barcode,&lt;br&gt;								   SHORT	*Length_Barcode,&lt;br&gt;								   LPSTR	Optic,&lt;br&gt;								   SHORT	*Length_Optic);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadCodelineFromBitmap(HWND		hWnd,&lt;br&gt;											 HANDLE		hImage,&lt;br&gt;											 char		*codelineType,&lt;br&gt;											 int		x,&lt;br&gt;											 int		y,&lt;br&gt;											 int		sizeW,&lt;br&gt;											 int		sizeH,&lt;br&gt;											 READOPTIONS *Option,&lt;br&gt;											 LPSTR		Codeline,&lt;br&gt;											 UINT		*Length);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSCodelineReadFromBitmap(HWND		hWnd,&lt;br&gt;											 HANDLE		hImage,&lt;br&gt;											 char		*codelineType,&lt;br&gt;											 short		UnitMeasure,&lt;br&gt;											 float		x,&lt;br&gt;											 float		y,&lt;br&gt;											 float		sizeW,&lt;br&gt;											 float		sizeH,&lt;br&gt;											 READOPTIONS *Option,&lt;br&gt;											 LPSTR		Codeline,&lt;br&gt;											 UINT		*Length);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadPdf417FromBitmap(HWND		hWnd,&lt;br&gt;										   HANDLE	hImage,&lt;br&gt;										   LPSTR	Codeline,&lt;br&gt;										   UINT		*Length,&lt;br&gt;										   char		*ErrorRate,&lt;br&gt;										   int		Reserved1,&lt;br&gt;										   int		Reserved2,&lt;br&gt;										   int		Reserved3,&lt;br&gt;										   int		Reserved4);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadBarcodeFromBitmap(HWND	hWnd,&lt;br&gt;											HANDLE	hImage,&lt;br&gt;											char	TypeBarcode,&lt;br&gt;											int		pos_x,&lt;br&gt;											int		pos_y,&lt;br&gt;											int		sizeW,&lt;br&gt;											int		sizeH,&lt;br&gt;											LPSTR	Codeline,&lt;br&gt;											UINT	*Length);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSConvertImageToBW(HWND		hWnd,&lt;br&gt;									   SHORT	Method, &lt;br&gt;									   HANDLE	GrayImage,&lt;br&gt;									   LPHANDLE BWImage,&lt;br&gt;									   short	PoloFilter,&lt;br&gt;									   float	Reserved);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSConvertImage200To100dpi(HWND		hWnd,&lt;br&gt;											  HANDLE	hImage,&lt;br&gt;											  HANDLE	*pImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSFreeImage(HWND		hWnd,&lt;br&gt;								LPHANDLE	hImage);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSLoadString(short	hConnect,&lt;br&gt;								 HWND	hWnd,&lt;br&gt;								 char	Format, &lt;br&gt;								 short	Length,&lt;br&gt;								 LPSTR	String);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSLoadStringWithCounter(short			hConnect,&lt;br&gt;											HWND			hWnd,&lt;br&gt;											char			Format,&lt;br&gt;											LPSTR			String,&lt;br&gt;											unsigned long	StartNumber,&lt;br&gt;											short			Step);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSLoadMultiString(short	hConnect,&lt;br&gt;									  HWND	hWnd,&lt;br&gt;									  short OffsetStr1,&lt;br&gt;									  char	Reserved1,&lt;br&gt;									  LPSTR String1,&lt;br&gt;									  short Length1,&lt;br&gt;									  short OffsetStr2,&lt;br&gt;									  char	Reserved2,&lt;br&gt;									  LPSTR String2,&lt;br&gt;									  short Length2,&lt;br&gt;									  short OffsetStr3,&lt;br&gt;									  char	Reserved3,&lt;br&gt;									  LPSTR String3,&lt;br&gt;									  short Length3);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadBadge(short	hConnect,&lt;br&gt;								HWND	hWnd,&lt;br&gt;								unsigned char Format,&lt;br&gt;								short	MaxLength,&lt;br&gt;								char	*String,&lt;br&gt;								short	*length);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadBadgeWithTimeout(short	hConnect,&lt;br&gt;										   HWND		hWnd,&lt;br&gt;										   unsigned char Format,&lt;br&gt;										   short	MaxLength,&lt;br&gt;										   char		*String,&lt;br&gt;										   short	*length,&lt;br&gt;										   long		Timeout);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReset(short	hConnect,&lt;br&gt;							HWND	hWnd,&lt;br&gt;							char	ResetType);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDisplayImage(HWND		hWnd,&lt;br&gt;								   HANDLE	hInstance,&lt;br&gt;								   char		*FilenameFront,&lt;br&gt;								   char		*FilenameBack,&lt;br&gt;								   int		XFront,&lt;br&gt;								   int		YFront,&lt;br&gt;								   int		XBack,&lt;br&gt;								   int		YBack,&lt;br&gt;								   int		FrontWidth,&lt;br&gt;								   int		FrontHeight,&lt;br&gt;								   int		BackWidth,&lt;br&gt;								   int		BackHeight,&lt;br&gt;								   HWND		*RetHwndFront,&lt;br&gt;								   HWND		*RetHwndBack);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSUpdateImage(HWND	hWnd,&lt;br&gt;								  char	*FilenameFront,&lt;br&gt;								  char	*FilenameBack,&lt;br&gt;								  HWND	hWndFront,&lt;br&gt;								  HWND	hWndBack);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSAutoDocHandle(short	hConnect,&lt;br&gt;									HWND	hWnd,&lt;br&gt;									short	Stamp,&lt;br&gt;									short	Validate,&lt;br&gt;									short	CodeLine,&lt;br&gt;									short	ScanMode,&lt;br&gt;									short	Feeder,&lt;br&gt;									short	Sorter,&lt;br&gt;									short	NumDocument,&lt;br&gt;									short	ClearBlack,&lt;br&gt;									char	Side,&lt;br&gt;									short	ReadMode,&lt;br&gt;									short	SaveImage,&lt;br&gt;									char	*DirectoryFile,&lt;br&gt;									char	*BaseFilename,&lt;br&gt;									float	pos_x,&lt;br&gt;									float	pos_y,&lt;br&gt;									float	sizeW,&lt;br&gt;									float	sizeH,&lt;br&gt;									short	OriginMeasureDoc,&lt;br&gt;									short	OcrImageSide,&lt;br&gt;									short	FileFormat,&lt;br&gt;									int		Quality,&lt;br&gt;									int		SaveMode,&lt;br&gt;									int		PageNumber,&lt;br&gt;									short	WaitTimeout,&lt;br&gt;									short	Beep,&lt;br&gt;									int		(*userfunc)(S_CODELINE_INFO *CodelineInfo),&lt;br&gt;									LPVOID	Reserved2,&lt;br&gt;									LPVOID	Reserved3);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSAutoDocHandleVB(short		hConnect,&lt;br&gt;									  HWND		hWnd,&lt;br&gt;									  short		Stamp,&lt;br&gt;									  short		Validate,&lt;br&gt;									  short		CodeLine,&lt;br&gt;									  short		ScanMode,&lt;br&gt;									  short		Feeder,&lt;br&gt;									  short		Sorter,&lt;br&gt;									  short		NumDocument,&lt;br&gt;									  short		ClearBlack,&lt;br&gt;									  char		Side,&lt;br&gt;									  short		ReadMode,&lt;br&gt;									  short		SaveImage,&lt;br&gt;									  char		*DirectoryFile,&lt;br&gt;									  char		*BaseFilename,&lt;br&gt;									  float		pos_x,&lt;br&gt;									  float		pos_y,&lt;br&gt;									  float		sizeW,&lt;br&gt;									  float		sizeH,&lt;br&gt;									  short		OriginMeasureDoc,&lt;br&gt;									  short		OcrImageSide,&lt;br&gt;									  short		FileFormat,&lt;br&gt;									  int		Quality,&lt;br&gt;									  int		SaveMode,&lt;br&gt;									  int		PageNumber,&lt;br&gt;									  short		WaitTimeout,&lt;br&gt;									  short		Beep,&lt;br&gt;									  int		(*userfunc)(S_CODELINE_INFO_VB *CodelineInfo),&lt;br&gt;									  LPVOID	Reserved2,&lt;br&gt;									  LPVOID	Reserved3);&lt;br&gt;&lt;br&gt;extern int APIENTRY LS800AutoDocHandle( short	hConnect,&lt;br&gt;										HWND	hWnd,&lt;br&gt;										char	Validate,&lt;br&gt;										short	Codeline,&lt;br&gt;										char	Side,&lt;br&gt;										short	ScanModeFront,&lt;br&gt;										short	ScanModeBack,&lt;br&gt;										short	ClearBlack,&lt;br&gt;										short	NumDocument,&lt;br&gt;										short	SaveImage,&lt;br&gt;										char	*DirectoryFile,&lt;br&gt;										char	*BaseFilename,&lt;br&gt;										short	Unit,&lt;br&gt;										float	pos_x,&lt;br&gt;										float	pos_y,&lt;br&gt;										float	sizeW,&lt;br&gt;										float	sizeH,&lt;br&gt;										short	OcrImageSide,&lt;br&gt;										short	FileFormat,&lt;br&gt;										int		Quality,&lt;br&gt;										int		SaveMode,&lt;br&gt;										int		PageNumber,&lt;br&gt;										short	Beep,&lt;br&gt;										int		(*userfunc1)(S_CODELINE_INFO_LS800 *CodelineInfo),&lt;br&gt;										int		(*userfunc2)(S_IMAGE_INFO_LS800 *ImageInfo),&lt;br&gt;										int		(*userfunc3)(S_IMAGE_INFO_LS800 *ImageInfo),&lt;br&gt;										short	Reserved1,		// not used must be NULL&lt;br&gt;										long	Reserved2,		// not used must be NULL&lt;br&gt;										LPVOID	Reserved3);		// not used must be NULL&lt;br&gt;&lt;br&gt;extern int APIENTRY LSGetDocData(short			hConnect,&lt;br&gt;								 HWND			hWnd,&lt;br&gt;								 unsigned long	*NrDoc,&lt;br&gt;								 LPSTR			FilenameFront,&lt;br&gt;								 LPSTR			FilenameBack,&lt;br&gt;								 LPSTR			Reserved1,		// not used must be NULL&lt;br&gt;								 LPSTR			Reserved2,		// not used must be NULL&lt;br&gt;								 LPHANDLE		*FrontImage,&lt;br&gt;								 LPHANDLE		*BackImage,&lt;br&gt;								 LPHANDLE		*Reserved3,		// not used must be NULL&lt;br&gt;								 LPHANDLE		*Reserved4,		// not used must be NULL&lt;br&gt;								 LPSTR			CodelineSW,&lt;br&gt;								 LPSTR			CodelineHW,&lt;br&gt;								 LPSTR			BarCode,&lt;br&gt;								 LPSTR			CodelinesOptical,&lt;br&gt;								 SHORT			*DocToRead,&lt;br&gt;								 LONG			*ErrorType,		// set to 0&lt;br&gt;								 LPVOID			Reserved5,		// not used must be NULL&lt;br&gt;								 LPVOID			Reserved6);		// not used must be NULL&lt;br&gt;&lt;br&gt;extern int APIENTRY LSStopAutoDocHandle(short	hConnect,&lt;br&gt;										HWND	hWnd);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSPeripheralStatus(short			hConnect,&lt;br&gt;									   HWND				hWnd,&lt;br&gt;									   unsigned char	*SenseKey,&lt;br&gt;									   unsigned char	*StatusByte);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSGetVersion(CHAR	*DllVersion,&lt;br&gt;								 SHORT	LenString);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDoubleLeafingSensibility(short			hConnect,&lt;br&gt;											   HWND				hWnd,&lt;br&gt;											   short			Reserved,&lt;br&gt;											   unsigned char	Value);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSConfigDoubleLeafing(short		hConnect,&lt;br&gt;										  HWND		hWnd,&lt;br&gt;										  short		Value);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSChangeStampPosition(short		hConnect,&lt;br&gt;										  HWND		hWnd,&lt;br&gt;										  short		Step,&lt;br&gt;										  char		Reserved);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSViewOCRRectangle(HWND hWnd,&lt;br&gt;									   BOOL fView);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSHistoryCommand(short		hConnect,&lt;br&gt;									 HWND		hWnd,&lt;br&gt;									 short		Cmd,&lt;br&gt;									 void		*sHistory);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDownloadFirmware(short	hConnect,&lt;br&gt;									   HWND		hWnd,&lt;br&gt;									   char		*FileFw,&lt;br&gt;									   int		(*userfunc1)(char *Item));&lt;br&gt;&lt;br&gt;&lt;br&gt;// -------------------------------------------------------------&lt;br&gt;// CTS Reserved function&lt;br&gt;// -------------------------------------------------------------&lt;br&gt;extern int APIENTRY LSConnectDiagnostica(HWND, HANDLE, short, short *);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadE13BSignal(short, HWND, unsigned char **, long *);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSScannerCalibration(short, HWND, short);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSPhotosCalibration(short, HWND);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSDumpPeripheralMemory(short, HWND, unsigned char *, long, long);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSCalibrationMICR(short, HWND, unsigned char *, short);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSBuilderSetting(HWND, void *);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetDiagnosticMode(short, HWND, BOOL);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetConfiguration(short, HWND, char *);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetTrimmerMICR(short, HWND, short);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSReadTrimmerMICR(short, HWND, void *);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSImageCalibration(short, HWND, BOOL, short *);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSPrinterCalibration(short, HWND, short, short, short);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSSetInImageCalibration(short, HWND);&lt;br&gt;&lt;br&gt;extern int APIENTRY LSRS232Configuration(short, HWND, char *, DWORD, BYTE, BYTE, BYTE);&lt;br&gt;&lt;br&gt;&lt;br&gt;#endif&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=56465" width="1" height="1"&gt;</description></item><item><title>re: Convert C code to C#? </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4497.aspx#56464</link><pubDate>Tue, 05 Jul 2005 00:31:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:56464</guid><dc:creator>Montaque</dc:creator><description>API for LS515&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=56464" width="1" height="1"&gt;</description></item><item><title>re: How to skip Windows XP Login Splash Windows.</title><link>http://msmvps.com/blogs/montaque/archive/2004/02/18/3001.aspx#55354</link><pubDate>Sat, 25 Jun 2005 01:39:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:55354</guid><dc:creator>Montaque</dc:creator><description>devil&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=55354" width="1" height="1"&gt;</description></item><item><title>re: How to skip Windows XP Login Splash Windows.</title><link>http://msmvps.com/blogs/montaque/archive/2004/02/18/3001.aspx#55353</link><pubDate>Sat, 25 Jun 2005 01:38:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:55353</guid><dc:creator>Montaque</dc:creator><description>good&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=55353" width="1" height="1"&gt;</description></item><item><title>re: Message Queuing by MQSeries with C# </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/02/4550.aspx#54734</link><pubDate>Fri, 24 Jun 2005 03:34:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:54734</guid><dc:creator>Montaque</dc:creator><description>This is all i get; :(&lt;br&gt;&lt;br&gt;Server Error in '/' Application.&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;&lt;br&gt;Object reference not set to an instance of an object. &lt;br&gt;Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. &lt;br&gt;&lt;br&gt;Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.&lt;br&gt;&lt;br&gt;Source Error: &lt;br&gt;&lt;br&gt;An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.  &lt;br&gt;&lt;br&gt;Stack Trace: &lt;br&gt;&lt;br&gt;&lt;br&gt;[NullReferenceException: Object reference not set to an instance of an object.]&lt;br&gt;   Netforce.UC_Header.InitializeComponent() +38&lt;br&gt;   Netforce.UC_Header.OnInit(EventArgs e) +13&lt;br&gt;   System.Web.UI.Control.InitRecursive(Control namingContainer) +241&lt;br&gt;   System.Web.UI.Control.AddedControl(Control control, Int32 index) +185&lt;br&gt;   System.Web.UI.ControlCollection.Add(Control child) +153&lt;br&gt;   PageTemplatesRevisited.PageTemplate.Page_Load(Object sender, EventArgs e)&lt;br&gt;   System.EventHandler.Invoke(Object sender, EventArgs e) +0&lt;br&gt;   System.Web.UI.Control.OnLoad(EventArgs e) +67&lt;br&gt;   System.Web.UI.Control.LoadRecursive() +35&lt;br&gt;   System.Web.UI.Page.ProcessRequestMain() +750&lt;br&gt;&lt;br&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;--------------------------------------------------------------------------------&lt;br&gt;Version Information: Microsoft .NET Framework Version:1.1.4322.2032; ASP.NET Version:1.1.4322.2032 &lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=54734" width="1" height="1"&gt;</description></item><item><title>re:  using the Indexing Service with .Net</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4486.aspx#49002</link><pubDate>Fri, 27 May 2005 02:36:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:49002</guid><dc:creator>Montaque</dc:creator><description>I strongly recommend to use IXSSO COM instead of OLE DB Provider, in particular if you expect big volume of indexing documents. The reason- OLE DB Provider doesn't support MaxRecords restriction/select top in SQL. IXSSO COM object allows to implement paging. &lt;br&gt;&lt;br&gt;See the code that I am using on my post &lt;a target="_new" href="http://www.thespoke.net/MyBlog/MNF/MyBlog_Comments.aspx?ID=92495"&gt;http://www.thespoke.net/MyBlog/MNF/MyBlog_Comments.aspx?ID=92495&lt;/a&gt;. &lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=49002" width="1" height="1"&gt;</description></item><item><title>re: Convert C code to C#? </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4497.aspx#46143</link><pubDate>Mon, 09 May 2005 11:02:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:46143</guid><dc:creator>Montaque</dc:creator><description>#ifndef _STAIRMATH_H_&lt;br&gt;#define _STAIRMATH_H_&lt;br&gt;&lt;br&gt;#define COS(c) { __asm fld c \&lt;br&gt;__asm fcos \&lt;br&gt;__asm fstp c }&lt;br&gt;&lt;br&gt;#define SIN(s) { __asm fld s \&lt;br&gt;__asm fsin \&lt;br&gt;__asm fstp s }&lt;br&gt;&lt;br&gt;#define SQRT(s) { __asm fld s \&lt;br&gt;__asm fsqrt \&lt;br&gt;__asm fstp s }&lt;br&gt;&lt;br&gt;&lt;br&gt;class CMatrix3x3 // Uses OpenGL standard for element storage&lt;br&gt;{&lt;br&gt;public:&lt;br&gt;&lt;br&gt;    CMatrix3x3(void);&lt;br&gt;    CMatrix3x3(float i11, float i12, float i13,&lt;br&gt;					   float i21, float i22, float i23,&lt;br&gt;					   float i31, float i32, float i33);&lt;br&gt;    inline float &amp;amp;operator()( unsigned long dwRow, unsigned long dwCol )&lt;br&gt;	{ &lt;br&gt;		return m_f[dwCol*3+dwRow];&lt;br&gt;	};&lt;br&gt;	inline float const &amp;amp;operator()( unsigned long dwRow, unsigned long dwCol ) const&lt;br&gt;	{&lt;br&gt;		return m_f[dwCol*3+dwRow];&lt;br&gt;	}&lt;br&gt;	inline CMatrix3x3&amp;amp;operator+=(CMatrix3x3 const&amp;amp; m)&lt;br&gt;	{&lt;br&gt;		float* pf = (float*)m.m_f;&lt;br&gt;		for (register int i=0; i &amp;lt; 3*3; i++)&lt;br&gt;			m_f[i] += pf[i];&lt;br&gt;		return *this;&lt;br&gt;	}&lt;br&gt;	inline CMatrix3x3 operator*(CMatrix3x3 const &amp;amp;m)&lt;br&gt;	{&lt;br&gt;		CMatrix3x3 mRes;&lt;br&gt;&lt;br&gt;		for(int i = 0;i &amp;lt; 3;i++)&lt;br&gt;		{&lt;br&gt;			for(int j = 0;j &amp;lt; 3;j++)&lt;br&gt;			{&lt;br&gt;				float Value = 0;&lt;br&gt;          &lt;br&gt;				for(int k = 0;k &amp;lt; 3;k++)&lt;br&gt;				{&lt;br&gt;					Value += GetElement(i,k) * m(k,j);&lt;br&gt;				}&lt;br&gt;&lt;br&gt;				mRes.SetElement(i,j,Value);&lt;br&gt;			}&lt;br&gt;		}&lt;br&gt;&lt;br&gt;		return mRes;&lt;br&gt;	}&lt;br&gt;	inline CMatrix3x3 operator*(float const &amp;amp;f)&lt;br&gt;	{&lt;br&gt;		CMatrix3x3 mRes;&lt;br&gt;		float* pV = mRes.GetRawElements();&lt;br&gt;		for (register int i=0; i &amp;lt; 3*3; i++)&lt;br&gt;			pV[i] = m_f[i] * f;&lt;br&gt;		return mRes;&lt;br&gt;	}&lt;br&gt;	inline _VECTOR operator*(_VECTOR const&amp;amp; v)&lt;br&gt;	{&lt;br&gt;		_VECTOR vRes;&lt;br&gt;		vRes.x = v.x * m_f[0] + v.y * m_f[3] + v.z * m_f[6];&lt;br&gt;		vRes.y = v.x * m_f[1] + v.y * m_f[4] + v.z * m_f[7];&lt;br&gt;		vRes.z = v.x * m_f[2] + v.y * m_f[5] + v.z * m_f[8];&lt;br&gt;		return vRes;&lt;br&gt;	};&lt;br&gt;&lt;br&gt;	void ZeroMatrix();&lt;br&gt;	void Identity();&lt;br&gt;	void Invert();&lt;br&gt;	void Orthonormalize();&lt;br&gt;	inline CMatrix3x3 GetTranspose()&lt;br&gt;	{&lt;br&gt;		CMatrix3x3 mRes;&lt;br&gt;&lt;br&gt;		for (register int i = 0; i &amp;lt; 3; i++)&lt;br&gt;		{&lt;br&gt;			mRes(0,i) = GetElement(i,0);&lt;br&gt;			mRes(1,i) = GetElement(i,1);&lt;br&gt;			mRes(2,i) = GetElement(i,2);&lt;br&gt;		}&lt;br&gt;&lt;br&gt;		return mRes;&lt;br&gt;	}&lt;br&gt;	inline float* GetRawElements() { return m_f; };&lt;br&gt;&lt;br&gt;protected:&lt;br&gt;&lt;br&gt;	inline float GetElement(unsigned long dwRow, unsigned long dwCol) const&lt;br&gt;	{&lt;br&gt;		return m_f[dwCol*3+dwRow];&lt;br&gt;	}&lt;br&gt;	inline void SetElement(unsigned long dwRow, unsigned long dwCol, float fVal)&lt;br&gt;	{&lt;br&gt;		m_f[dwCol*3+dwRow] = fVal;&lt;br&gt;	}&lt;br&gt;	float m_f[3*3];&lt;br&gt;};&lt;br&gt;&lt;br&gt;&lt;br&gt;inline float Magnitude(_VECTOR&amp;amp; v)&lt;br&gt;{&lt;br&gt;	float d = v.x * v.x + v.y * v.y + v.z * v.z;&lt;br&gt;	SQRT(d);&lt;br&gt;	return d;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline float DotProduct(const _VECTOR&amp;amp; v1, const _VECTOR&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	return v1.x * v2.x + v1.y * v2.y + v1.z * v2.z;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline void Normalize(_NORMAL&amp;amp; n)&lt;br&gt;{&lt;br&gt;	float m = n.a * n.a + n.b * n.b + n.c * n.c;&lt;br&gt;	SQRT(m);&lt;br&gt;	n.a /= m; n.b /= m; n.c /= m;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline void Normalize(_VECTOR&amp;amp; v)&lt;br&gt;{&lt;br&gt;	float d = Magnitude(v);&lt;br&gt;	v.x /= d; v.y /= d; v.z /= d;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline void ZeroVertex(_VERTEX&amp;amp; v)&lt;br&gt;{&lt;br&gt;	v.x = v.y = v.z = 0;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline void ZeroVector(_VECTOR&amp;amp; v)&lt;br&gt;{&lt;br&gt;	v.x = v.y = v.z = 0;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VERTEX&amp;amp;operator +=(_VERTEX&amp;amp; v1, _VERTEX&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	v1.x += v2.x;&lt;br&gt;	v1.y += v2.y;&lt;br&gt;	v1.z += v2.z;&lt;br&gt;	return v1;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VERTEX&amp;amp;operator +=(_VERTEX&amp;amp; v1, _VECTOR&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	v1.x += v2.x;&lt;br&gt;	v1.y += v2.y;&lt;br&gt;	v1.z += v2.z;&lt;br&gt;	return v1;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VERTEX operator *(_VERTEX&amp;amp; v, float fScalar)&lt;br&gt;{&lt;br&gt;	_VERTEX vc;&lt;br&gt;	vc.x = v.x * fScalar;&lt;br&gt;	vc.y = v.y * fScalar;&lt;br&gt;	vc.z = v.z * fScalar;&lt;br&gt;	return vc;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator -(_VERTEX&amp;amp; v1, _VERTEX&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	_VECTOR v;&lt;br&gt;	v.x = v1.x - v2.x;&lt;br&gt;	v.y = v1.y - v2.y;&lt;br&gt;	v.z = v1.z - v2.z;&lt;br&gt;	return v;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator +(_VECTOR&amp;amp; v1, _VECTOR&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	_VECTOR v;&lt;br&gt;	v.x = v1.x + v2.x;&lt;br&gt;	v.y = v1.y + v2.y;&lt;br&gt;	v.z = v1.z + v2.z;&lt;br&gt;	return v;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator -(_VECTOR&amp;amp; v1, _VECTOR&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	_VECTOR v;&lt;br&gt;	v.x = v1.x - v2.x;&lt;br&gt;	v.y = v1.y - v2.y;&lt;br&gt;	v.z = v1.z - v2.z;&lt;br&gt;	return v;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator -(_VECTOR&amp;amp; v1)&lt;br&gt;{&lt;br&gt;	_VECTOR v;&lt;br&gt;	v.x = -v1.x;&lt;br&gt;	v.y = -v1.y;&lt;br&gt;	v.z = -v1.z;&lt;br&gt;	return v;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR&amp;amp;operator +=(_VECTOR&amp;amp; v1, _VECTOR&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	v1.x += v2.x;&lt;br&gt;	v1.y += v2.y;&lt;br&gt;	v1.z += v2.z;&lt;br&gt;	return v1;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator *(_VECTOR&amp;amp; v1, _VECTOR&amp;amp; v2)&lt;br&gt;{&lt;br&gt;	_VECTOR vc;&lt;br&gt;	vc.x = v1.y*v2.z - v1.z*v2.y;&lt;br&gt;	vc.y = v1.z*v2.x - v1.x*v2.z;&lt;br&gt;	vc.z = v1.x*v2.y - v1.y*v2.x;&lt;br&gt;	return vc;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator *(_VECTOR&amp;amp; v, float fScalar)&lt;br&gt;{&lt;br&gt;	_VECTOR vc;&lt;br&gt;	vc.x = v.x * fScalar;&lt;br&gt;	vc.y = v.y * fScalar;&lt;br&gt;	vc.z = v.z * fScalar;&lt;br&gt;	return vc;&lt;br&gt;}&lt;br&gt;&lt;br&gt;inline _VECTOR operator /(_VECTOR&amp;amp; v, float fScalar)&lt;br&gt;{&lt;br&gt;	_VECTOR vc;&lt;br&gt;	vc.x = v.x / fScalar;&lt;br&gt;	vc.y = v.y / fScalar;&lt;br&gt;	vc.z = v.z / fScalar;&lt;br&gt;	return vc;&lt;br&gt;}&lt;br&gt;&lt;br&gt;void CalculateNormal(const _VERTEX* a, const _VERTEX* b, const _VERTEX* c, &lt;br&gt;					 _NORMAL&amp;amp; n);&lt;br&gt;void Rotate_Arbitrary(_VERTEX* v, const _VECTOR* vAxis, const _VERTEX* vCenter, const float radians);&lt;br&gt;void shadowMatrix(GLfloat shadowMat[4][4],&lt;br&gt;  _NORMAL&amp;amp; vnGround, _VECTOR&amp;amp; vLight);&lt;br&gt;&lt;br&gt;#endif&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=46143" width="1" height="1"&gt;</description></item><item><title>re: Convert C code to C#? </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4497.aspx#44498</link><pubDate>Tue, 26 Apr 2005 22:09:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:44498</guid><dc:creator>Montaque</dc:creator><description>Convert c to c#&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=44498" width="1" height="1"&gt;</description></item><item><title>re: How to skip Windows XP Login Splash Windows.</title><link>http://msmvps.com/blogs/montaque/archive/2004/02/18/3001.aspx#44031</link><pubDate>Sun, 24 Apr 2005 04:14:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:44031</guid><dc:creator>Montaque</dc:creator><description>How can I bypass the Windows XP log on?&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=44031" width="1" height="1"&gt;</description></item><item><title>re:A wonderful Web.config Editor</title><link>http://msmvps.com/blogs/montaque/archive/2004/03/16/3967.aspx#42772</link><pubDate>Sat, 16 Apr 2005 07:40:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:42772</guid><dc:creator>TrackBack</dc:creator><description>^_~&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=42772" width="1" height="1"&gt;</description></item><item><title>re:Authorization and Profile Application Block</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4492.aspx#42769</link><pubDate>Sat, 16 Apr 2005 07:39:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:42769</guid><dc:creator>TrackBack</dc:creator><description>^_~&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=42769" width="1" height="1"&gt;</description></item><item><title>re: using the Indexing Service with .Net</title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4486.aspx#42770</link><pubDate>Sat, 16 Apr 2005 07:39:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:42770</guid><dc:creator>TrackBack</dc:creator><description>^_~&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=42770" width="1" height="1"&gt;</description></item></channel></rss>