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
  1. Home
  2. The Lounge
  3. Why is .NET missing FTP/SFTP/SCP ?

Why is .NET missing FTP/SFTP/SCP ?

Scheduled Pinned Locked Moved The Lounge
csharppythoncomquestionlearning
16 Posts 7 Posters 0 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.
  • M Marc Clifton

    I've always wondered that, and it's such a PITA trying to actually find a library that works. Marc

    V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

    J Offline
    J Offline
    Jon McKee
    wrote on last edited by
    #2

    No built-in SFTP or SCP to my knowledge but you do get FtpWebRequest and FtpWebResponse for FTP. WebClient also supports FTP downloads.

    1 Reply Last reply
    0
    • M Marc Clifton

      I've always wondered that, and it's such a PITA trying to actually find a library that works. Marc

      V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

      R Offline
      R Offline
      Ravi Bhavnani
      wrote on last edited by
      #3

      I :love: FluentFTP[^]. :thumbsup: /ravi

      My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

      M 2 Replies Last reply
      0
      • M Marc Clifton

        I've always wondered that, and it's such a PITA trying to actually find a library that works. Marc

        V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

        B Offline
        B Offline
        Brisingr Aerowing
        wrote on last edited by
        #4

        The most complete library I know of is SSH.NET[^].

        What do you get when you cross a joke with a rhetorical question? The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism. Do questions with multiple question marks annoy you???

        M 2 Replies Last reply
        0
        • R Ravi Bhavnani

          I :love: FluentFTP[^]. :thumbsup: /ravi

          My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

          M Offline
          M Offline
          Marc Clifton
          wrote on last edited by
          #5

          Snazzy - I'll take a look. Thanks! Marc

          V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

          1 Reply Last reply
          0
          • B Brisingr Aerowing

            The most complete library I know of is SSH.NET[^].

            What do you get when you cross a joke with a rhetorical question? The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism. Do questions with multiple question marks annoy you???

            M Offline
            M Offline
            Marc Clifton
            wrote on last edited by
            #6

            Brisingr Aerowing wrote:

            The most complete library I know of is SSH.NET[^].

            Ah, I just came across the resurrected version of it (resurrected from sourceforge, onto CodePlex, and now moved to GitHub :laugh: ) Marc

            V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

            1 Reply Last reply
            0
            • R Ravi Bhavnani

              I :love: FluentFTP[^]. :thumbsup: /ravi

              My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

              M Offline
              M Offline
              Marc Clifton
              wrote on last edited by
              #7

              > SFTP is not supported as it is FTP over SSH, a completely different protocol (use SSH.NET for that) Oops. Marc

              V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

              1 Reply Last reply
              0
              • B Brisingr Aerowing

                The most complete library I know of is SSH.NET[^].

                What do you get when you cross a joke with a rhetorical question? The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism. Do questions with multiple question marks annoy you???

                M Offline
                M Offline
                Marc Clifton
                wrote on last edited by
                #8

                Brisingr Aerowing wrote:

                The most complete library I know of is SSH.NET[^].

                And we have a winner. :jig: Marc

                V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                B 1 Reply Last reply
                0
                • M Marc Clifton

                  Brisingr Aerowing wrote:

                  The most complete library I know of is SSH.NET[^].

                  And we have a winner. :jig: Marc

                  V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                  B Offline
                  B Offline
                  Brisingr Aerowing
                  wrote on last edited by
                  #9

                  :thumbsup:

                  What do you get when you cross a joke with a rhetorical question? The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism. Do questions with multiple question marks annoy you???

                  1 Reply Last reply
                  0
                  • M Marc Clifton

                    I've always wondered that, and it's such a PITA trying to actually find a library that works. Marc

                    V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                    J Offline
                    J Offline
                    jgakenhe
                    wrote on last edited by
                    #10

                    I don't know. I played around with WinSCP for a couple of days in December because we switched from FTP to FTPS and had to rewrite some legacy code. After reading this forum, I'll take a look at SSH.net next time.

                    M S 2 Replies Last reply
                    0
                    • M Marc Clifton

                      I've always wondered that, and it's such a PITA trying to actually find a library that works. Marc

                      V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                      P Offline
                      P Offline
                      PauliKK
                      wrote on last edited by
                      #11

                      WinSCP .NET Assembly is an option "The WinSCP .NET assembly winscpnet.dll is a .NET wrapper around WinSCP’s scripting interface that allows your code to connect to a remote machine and manipulate remote files over SFTP, FTP, WebDAV and SCP sessions from .NET languages, such as C#, VB.NET, and others, or from environments supporting .NET, such as PowerShell, SQL Server Integration Services (SSIS), ASP.NET and Microsoft Azure WebSite." winscp.net

                      M 1 Reply Last reply
                      0
                      • P PauliKK

                        WinSCP .NET Assembly is an option "The WinSCP .NET assembly winscpnet.dll is a .NET wrapper around WinSCP’s scripting interface that allows your code to connect to a remote machine and manipulate remote files over SFTP, FTP, WebDAV and SCP sessions from .NET languages, such as C#, VB.NET, and others, or from environments supporting .NET, such as PowerShell, SQL Server Integration Services (SSIS), ASP.NET and Microsoft Azure WebSite." winscp.net

                        M Offline
                        M Offline
                        Marc Clifton
                        wrote on last edited by
                        #12

                        I did get the WinSCP.NET assembly working (quite easily) but it requires that the exe be installed, whereas ssh.net worked just as easily without any dependencies. Also, when I tried WinSCP.NET, I had an older version of the exe, and got an incompatibility exception, so I don't want to create the added annoyance of having to make sure the exe and dll are sync'd. Marc

                        V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                        1 Reply Last reply
                        0
                        • J jgakenhe

                          I don't know. I played around with WinSCP for a couple of days in December because we switched from FTP to FTPS and had to rewrite some legacy code. After reading this forum, I'll take a look at SSH.net next time.

                          M Offline
                          M Offline
                          Marc Clifton
                          wrote on last edited by
                          #13

                          5 lines of code to do a file upload:

                          SftpClient sftp = new SftpClient("192.168.0.3", "[username]", "[password]");
                          sftp.Connect();
                          var st = new FileStream(@"c:\foo.txt", FileMode.Open);
                          sftp.UploadFile(st, "/home/debian/foo.txt");
                          sftp.Disconnect();

                          The only nuance was that the target (second parameter) must also include the filename. The WinSCP.NET dll implementation doesn't require this. With SSH.NET, finding that was a bit annoying, as the exception message was "Failure!" That was helpful. Had to read through a couple forums with people having the same error to find someone that posted "you need the filename on the destination path." :doh: Marc

                          V.A.P.O.R.ware - Visual Assisted Programming / Organizational Representation Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

                          1 Reply Last reply
                          0
                          • J jgakenhe

                            I don't know. I played around with WinSCP for a couple of days in December because we switched from FTP to FTPS and had to rewrite some legacy code. After reading this forum, I'll take a look at SSH.net next time.

                            S Offline
                            S Offline
                            Scott Serl
                            wrote on last edited by
                            #14

                            jgakenhe wrote:

                            switched from FTP to FTPS

                            Just to make sure everyone reading this thread understands there is a difference between SFTP and FTPS. WinSCP does not do FTPS as far as I can tell; it does SFTP. SFTP basically wraps copying files with SCP (which in turn uses SSH), and FTPS is FTP over SSL. These follow very different protocols to achieve the same result.

                            J 1 Reply Last reply
                            0
                            • S Scott Serl

                              jgakenhe wrote:

                              switched from FTP to FTPS

                              Just to make sure everyone reading this thread understands there is a difference between SFTP and FTPS. WinSCP does not do FTPS as far as I can tell; it does SFTP. SFTP basically wraps copying files with SCP (which in turn uses SSH), and FTPS is FTP over SSL. These follow very different protocols to achieve the same result.

                              J Offline
                              J Offline
                              jgakenhe
                              wrote on last edited by
                              #15

                              Yes you're right, it is FTP over SSL. WinSCP has some documentation on FTPS at: FTPS :: WinSCP[^].

                              S 1 Reply Last reply
                              0
                              • J jgakenhe

                                Yes you're right, it is FTP over SSL. WinSCP has some documentation on FTPS at: FTPS :: WinSCP[^].

                                S Offline
                                S Offline
                                Scott Serl
                                wrote on last edited by
                                #16

                                Ok, thanks. I did not see that information.

                                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