Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. General Programming
  3. C#
  4. Xmodem implimentation

Xmodem implimentation

Scheduled Pinned Locked Moved C#
csharptoolsquestion
4 Posts 2 Posters 2 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Offline
    T Offline
    therealmccoy
    wrote on last edited by
    #1

    I am working on a project the involves transferring data from a bar code scanner. The scanner runs PC-DOS and has a command line transfer utility that uses Xmodem. I have written an application that shells out and uses the same CLI utility to receive the file. This works, but I would like to impliment my own Xmodem protocol into my application to have more control over what is happening (and just to learn). So far I haven't found any *free* examples of an Xmodem implimentation using C#. I have found several products that I can purchase, but this isn't what I had in mind. I have found the specification for the Xmodem protocol and it's reads as being fairly straight forward. I'm curious to if anyone else has written the own implimentation, or if I'm overlooking why this shouldn't be too difficult.

    H 1 Reply Last reply
    0
    • T therealmccoy

      I am working on a project the involves transferring data from a bar code scanner. The scanner runs PC-DOS and has a command line transfer utility that uses Xmodem. I have written an application that shells out and uses the same CLI utility to receive the file. This works, but I would like to impliment my own Xmodem protocol into my application to have more control over what is happening (and just to learn). So far I haven't found any *free* examples of an Xmodem implimentation using C#. I have found several products that I can purchase, but this isn't what I had in mind. I have found the specification for the Xmodem protocol and it's reads as being fairly straight forward. I'm curious to if anyone else has written the own implimentation, or if I'm overlooking why this shouldn't be too difficult.

      H Offline
      H Offline
      Heath Stewart
      wrote on last edited by
      #2

      therealmccoy wrote: So far I haven't found any *free* examples of an Xmodem implimentation using C#. I have found several products that I can purchase, but this isn't what I had in mind. If you can't find anything free using google or some other web search and you can't find anything by clicking "Search comments" in this forum (since it isn't indexed by google and the other major search engines...yet), then anything free doesn't exist. You'll either have to implement your own xmodem APIs or purchase one of the libraries you've found. I'm sure the developers have spent a lot of time and planning and deserve what they get. You would like to get paid for your projects, wouldn't you? Besides, with a paid product you can expect support. With free ones you're at the author's whim. This posting is provided "AS IS" with no warranties, and confers no rights. Software Design Engineer Developer Division Sustained Engineering Microsoft [My Articles] [My Blog]

      T 1 Reply Last reply
      0
      • H Heath Stewart

        therealmccoy wrote: So far I haven't found any *free* examples of an Xmodem implimentation using C#. I have found several products that I can purchase, but this isn't what I had in mind. If you can't find anything free using google or some other web search and you can't find anything by clicking "Search comments" in this forum (since it isn't indexed by google and the other major search engines...yet), then anything free doesn't exist. You'll either have to implement your own xmodem APIs or purchase one of the libraries you've found. I'm sure the developers have spent a lot of time and planning and deserve what they get. You would like to get paid for your projects, wouldn't you? Besides, with a paid product you can expect support. With free ones you're at the author's whim. This posting is provided "AS IS" with no warranties, and confers no rights. Software Design Engineer Developer Division Sustained Engineering Microsoft [My Articles] [My Blog]

        T Offline
        T Offline
        therealmccoy
        wrote on last edited by
        #3

        Heath Stewart wrote: You'll either have to implement your own xmodem APIs or purchase one of the libraries you've found. I'm sure the developers have spent a lot of time and planning and deserve what they get. You would like to get paid for your projects, wouldn't you? In order to get paid for any of my projects I will need to learn a lot more. With that in mind I guess I will be implimenting my own interface (ohhh.. what a challenge). During the course of this project I'm sure I'll have more questions, but when I'm done this API it will be released into the public domain, much like the original Xmodem specification was. For others searching this forum and looking for information on an Xmodem implimentation (as well as the total lack of any type of serial support in .NET) check the following site: http://ourworld.compuserve.com/homepages/richard_grier/xmcomm.htm[^]

        H 1 Reply Last reply
        0
        • T therealmccoy

          Heath Stewart wrote: You'll either have to implement your own xmodem APIs or purchase one of the libraries you've found. I'm sure the developers have spent a lot of time and planning and deserve what they get. You would like to get paid for your projects, wouldn't you? In order to get paid for any of my projects I will need to learn a lot more. With that in mind I guess I will be implimenting my own interface (ohhh.. what a challenge). During the course of this project I'm sure I'll have more questions, but when I'm done this API it will be released into the public domain, much like the original Xmodem specification was. For others searching this forum and looking for information on an Xmodem implimentation (as well as the total lack of any type of serial support in .NET) check the following site: http://ourworld.compuserve.com/homepages/richard_grier/xmcomm.htm[^]

          H Offline
          H Offline
          Heath Stewart
          wrote on last edited by
          #4

          There should be in .NET 2.0, codename "Whidbey". See http://msdn2.microsoft.com/library/System.IO.Ports[^] for details. Because "Whidbey" is currently in beta, there is no gaurantee that what you read now will be there in the release, but do have comfort in the knowledge that serial support in the BCL is something that has been requested by the community for a long time. If you need to or want to implement your Xmodem implementation for .NET 1.0 and 1.1, I recommend downloading[^] the .NET Framework 2.0 runtime and SDK and using ildasm.exe - the IL Disassembler - from the SDK's Bin directory to examine how the System.IO.Ports namespace classes work with the Win32 APIs. You can also use .NET Reflector[^] to decompile (and disassembler) the assemblies to get tips for your own implementation. This posting is provided "AS IS" with no warranties, and confers no rights. Software Design Engineer Developer Division Sustained Engineering Microsoft [My Articles] [My Blog]

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • World
          • Users
          • Groups