XMComm2005 Information Page

Return to Hard & Software | Download XMComm2005  and a simple upload/download example (about 90 KB)


The XM in XMComm2005 stands for XMODEM.

I wrote the XMComm ActiveX™ control using Microsoft® Visual Basic™ 6. It wraps the MSComm32.ocx that is furnished VB6 Professional and Enterprise Editions.  Visual Studio 2005 includes the System.IO.Ports namespace.  I have inherited from that namespace (also a .NET Control), and have added XMODEM file transfers.   Here are some features:


Visual Studio 2005 and later versions provide a serial API via the System.Ports.IO namespace.  I have inherited that namespace, and have added XMODEM file transfers.  Source code for this dll is included on the CD-ROM that accompanies  Visual Basic Programmer's Guide to Serial Communications 5 (September 2014).

One could use XMCommCRC.ocx (and there are examples that us it in .NET solutions in my book), but distribution and installation of .NET programs that use it is more complex than it might be with a native .NET dll.  I recommend that all new .NET applications that need XMODEM file transfers use this new dll.  One other advantage that XMCommCRCNET.dll has over XMCommCRC.ocx is its ability to address a full range of serial ports (Com1 through Com255).


The object model for XMComCRCNET should answer most application questions, though you also should use the Object Browser to review the System.IO.Ports model as modified by XMComm2005.  For more detailed suggestions you can refer to my book for examples that employ XMCommCRC.ocx.  The logic will be comparable, but the actual implementation will vary slightly in syntax.

Feel free to ask me specific questions, but realize that my ability to answer is limited by time and resources.


This .NET dll is provided free, without warranty of any kind. You are free to use it for any purpose that you deem reasonable, but the author is not responsible for any such use (or misuse), or for any damage that might result from its use. Treat this software like you would any beta software. It may work as described, but if it does not, you got what you paid for.

Feel free to contact me if you have problems. However, I cannot guarantee that I will be able to respond in a timely way. Please let me know about any successes.

Note:  This dll displays a Copyright popup when the program employing it instantiates a SerialPort object.  This may be removed by making a one-line change in the source code for the dll.  OK, how do you get it without the popup?  Any reader of my book may request a copy of both the source code and/or the dll without the popup.  Send me email to request this.  Alternately, you can purchase the dll without the popup from me for US$10. 

Return to Hard & Software