<?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>Convert C code to C#? </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4497.aspx</link><description>Tool to go from C to Java: http://www.portinggurus.org/Navigator.asp?link=http://in.tech.yahoo.com/020513/94/1nxuw.html Tool to go from Java to C#: http://www.microsoft.com/downloads/details.aspx?FamilyId=46BEA47E-D47F-4349-9B4F-904B0A973174&amp;amp;displaylang</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><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: 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: Convert C code to C#? </title><link>http://msmvps.com/blogs/montaque/archive/2004/04/01/4497.aspx#36484</link><pubDate>Sun, 20 Feb 2005 20:51:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:36484</guid><dc:creator>Montaque</dc:creator><description>convert c to c++ or convert c to c#&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=36484" 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#30077</link><pubDate>Fri, 07 Jan 2005 23:16:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:30077</guid><dc:creator>Montaque</dc:creator><description>aaaaaaaaaaa&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=30077" 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#30076</link><pubDate>Fri, 07 Jan 2005 23:14:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:30076</guid><dc:creator>Montaque</dc:creator><description>#include &amp;lt;Winsock.h&amp;gt;&lt;br&gt;#include &amp;lt;fcntl.h&amp;gt;&lt;br&gt;#include &amp;lt;errno.h&amp;gt;&lt;br&gt;#include &amp;lt;stdio.h&amp;gt;&lt;br&gt;#include &amp;lt;memory.h&amp;gt;&lt;br&gt;#include &amp;lt;time.h&amp;gt;&lt;br&gt;&lt;br&gt;void main(int argc, char*argv[])&lt;br&gt;{&lt;br&gt;    BOOL bStillOK;&lt;br&gt;    int socket_id;      &lt;br&gt;    int rcSockopt;       &lt;br&gt;    int rcConnect;       &lt;br&gt;    int rcSend;           &lt;br&gt;    int rcRecv;         &lt;br&gt;    int turn_on_option_flag;&lt;br&gt;    int iRC;&lt;br&gt;&lt;br&gt;    struct sockaddr_in sock_struc;&lt;br&gt;    struct hostent *hostptr;&lt;br&gt;    struct servent *servptr;&lt;br&gt;    time_t starttime;&lt;br&gt;    struct tm *today;&lt;br&gt;    WORD wVersionRequested;&lt;br&gt;    WSADATA wsaData;&lt;br&gt;&lt;br&gt;    char node_name[32];&lt;br&gt;    char message[80];&lt;br&gt;    char datebuf[128];&lt;br&gt;    char timebuf[128];&lt;br&gt;    char conbuf[256];&lt;br&gt;&lt;br&gt;    bStillOK = TRUE; &lt;br&gt;    // first check args&lt;br&gt;    if (argc &amp;lt; 4 || argc &amp;gt; 4&lt;br&gt;        || !strcmp(argv[1],&amp;quot;-h&amp;quot;) || !strcmp(argv[1],&amp;quot;-H&amp;quot;)&lt;br&gt;        || !strcmp(argv[1],&amp;quot;-?&amp;quot;) || !strcmp(argv[1],&amp;quot;/h&amp;quot;)&lt;br&gt;        || !strcmp(argv[1],&amp;quot;/H&amp;quot;) || !strcmp(argv[1],&amp;quot;/?&amp;quot;)&lt;br&gt;        || !strcmp(argv[1],&amp;quot;help&amp;quot;) || !strcmp(argv[1],&amp;quot;HELP&amp;quot;))&lt;br&gt;    {&lt;br&gt;        PrintHelp();&lt;br&gt;        bStillOK = FALSE;&lt;br&gt;    } // end if&lt;br&gt;&lt;br&gt;    if (bStillOK)&lt;br&gt;    {&lt;br&gt;        time(&amp;amp;starttime);&lt;br&gt;        today = localtime (&amp;amp;starttime);&lt;br&gt;        strftime( datebuf, 128,&lt;br&gt;            &amp;quot;Today is %A, day %d of %B in the year %Y.\n&amp;quot;,&lt;br&gt;            today );&lt;br&gt;        printf(datebuf);&lt;br&gt;        _strtime( timebuf );&lt;br&gt;        printf( &amp;quot;OS time:\t\t\t\t%s\n&amp;quot;, timebuf );&lt;br&gt;		&lt;br&gt;        wVersionRequested = MAKEWORD (1,1);&lt;br&gt;        if((iRC = WSAStartup(wVersionRequested, &amp;amp;wsaData)) != 0)&lt;br&gt;        {&lt;br&gt;            printf (&amp;quot;startup failed, rc= %d\n&amp;quot;, iRC);&lt;br&gt;            bStillOK = FALSE;&lt;br&gt;        } &lt;br&gt;    } &lt;br&gt;&lt;br&gt;&lt;br&gt;if (bStillOK)&lt;br&gt;{&lt;br&gt;    strcpy (node_name, argv[1]); // name of server computer&lt;br&gt;    hostptr = gethostbyname (node_name);&lt;br&gt;    if (hostptr == (struct hostent *)NULL)&lt;br&gt;    {&lt;br&gt;        printf (&amp;quot;gethostbyname failed - check HOSTS file\n&amp;quot;);&lt;br&gt;        bStillOK = FALSE;&lt;br&gt;    } &lt;br&gt;} &lt;br&gt;&lt;br&gt;if (bStillOK)&lt;br&gt;{&lt;br&gt;    socket_id = socket (AF_INET, SOCK_STREAM,0);&lt;br&gt;		&lt;br&gt;    rcSockopt = setsockopt(socket_id, IPPROTO_TCP, &lt;br&gt;            TCP_NODELAY,&lt;br&gt;            (char *) &amp;amp;turn_on_option_flag, &lt;br&gt;            sizeof(turn_on_option_flag));&lt;br&gt;   &lt;br&gt;    servptr = getservbyname (&amp;quot;ADRlink&amp;quot;, &amp;quot;tcp&amp;quot;);&lt;br&gt;    if (servptr == (struct servent *)NULL)&lt;br&gt;    {&lt;br&gt;        printf (&amp;quot;cannot find service - check SERVICES file\n&amp;quot;);&lt;br&gt;        bStillOK = FALSE;&lt;br&gt;    } &lt;br&gt;} &lt;br&gt;&lt;br&gt;if (bStillOK)&lt;br&gt;{&lt;br&gt;    sock_struc.sin_family = hostptr-&amp;gt;h_addrtype;&lt;br&gt;    memcpy((char *)&amp;amp;(sock_struc.sin_addr), hostptr-&amp;gt;h_addr, &lt;br&gt;            hostptr-&amp;gt;h_length);&lt;br&gt;    sock_struc.sin_port = servptr-&amp;gt;s_port;&lt;br&gt;&lt;br&gt;    rcConnect = connect (socket_id, &lt;br&gt;                         (struct sockaddr *)&amp;amp;(sock_struc),&lt;br&gt;                         sizeof(struct sockaddr));&lt;br&gt;    if (rcConnect == SOCKET_ERROR)&lt;br&gt;    {&lt;br&gt;        printf (&amp;quot;connect failed: rc is %d &amp;quot;, rcConnect);&lt;br&gt;        errno = WSAGetLastError();&lt;br&gt;        printf (&amp;quot;errno is %d\n&amp;quot;,errno);&lt;br&gt;        bStillOK = FALSE;&lt;br&gt;    } &lt;br&gt;} &lt;br&gt;&lt;br&gt;if (bStillOK)&lt;br&gt;{&lt;br&gt;    strcpy(message,argv[2]);&lt;br&gt;    strcat(message,argv[3]);&lt;br&gt;    strcat(message,&amp;quot;\r&amp;quot;);&lt;br&gt;    rcSend = send (socket_id, message, strlen(message), 0);&lt;br&gt;    if (rcSend == SOCKET_ERROR)&lt;br&gt;    {&lt;br&gt;        printf (&amp;quot;send failed: rc is %d &amp;quot;,rcSend);&lt;br&gt;        errno = WSAGetLastError();&lt;br&gt;        printf (&amp;quot;errno is %d\n&amp;quot;,errno);&lt;br&gt;        bStillOK = FALSE;&lt;br&gt;    } &lt;br&gt;} &lt;br&gt;&lt;br&gt;&lt;br&gt;if (bStillOK &amp;amp;&amp;amp; (*argv[2] == 'y'|| *argv[2] == 'Y'))&lt;br&gt;{&lt;br&gt;    rcRecv = recv (socket_id, conbuf, BUFSIZ, 0);&lt;br&gt;    if (rcRecv == SOCKET_ERROR)&lt;br&gt;    {&lt;br&gt;        printf (&amp;quot;recv failed: rc is %d &amp;quot;,rcRecv);&lt;br&gt;        errno = WSAGetLastError();&lt;br&gt;        printf (&amp;quot;errno is %d\n&amp;quot;,errno);&lt;br&gt;        bStillOK = FALSE;&lt;br&gt;    }&lt;br&gt;    else&lt;br&gt;    {&lt;br&gt;        conbuf[rcRecv] = '\0';&lt;br&gt;        printf(&amp;quot;value received is: %s&amp;quot;,conbuf);&lt;br&gt;    } &lt;br&gt;} &lt;br&gt;&lt;br&gt;&lt;br&gt;    WSACleanup();&lt;br&gt;} &lt;br&gt;&lt;br&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=30076" 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#16591</link><pubDate>Tue, 26 Oct 2004 00:11:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:16591</guid><dc:creator>Montaque</dc:creator><description>dds&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://msmvps.com/aggbug.aspx?PostID=16591" width="1" height="1"&gt;</description></item></channel></rss>