.net 环境开发 FTP 项目

jrl5365 2005-12-13 04:04:42
有谁开发过这样的项目,给我一点思路,
有谁能告诉我上传类在什么地方有的下。。
...全文
251 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
marvelstack 2005-12-14
  • 打赏
  • 举报
回复
http://www.csharphelp.com/archives/archive9.html
An FTP client library for .NET 2.0

http://www.codeproject.com/vb/net/FtpClient.asp
shrinerain 2005-12-13
  • 打赏
  • 举报
回复
ftp之类的东西别人已经有非常成熟的代码,没有必要自己开发
机器人 2005-12-13
  • 打赏
  • 举报
回复
http://blog.csdn.net/fangxinggood/archive/2005/07/01/409766.aspx
andywang110001 2005-12-13
  • 打赏
  • 举报
回复
个人认为,还是从socket写比较好,方便日后维护,用别人地类快是快,但是一旦出了问题,你很难找到根源的
qqdown 2005-12-13
  • 打赏
  • 举报
回复
.net 2.0 有一个ftp类,挺方便的。
并且webclient也支持ftp协议了,上传下载非常简单。
shrinerain 2005-12-13
  • 打赏
  • 举报
回复
http://codeproject.com/csharp/ftplibrary.asp
http://codeproject.com/csharp/ftpdriver1.asp
http://codeproject.com/csharp/ftplib.asp
http://codeproject.com/csharp/FTP_with_NET.asp
c11_11_11 2005-12-13
  • 打赏
  • 举报
回复
web服务 也可以实现

在winform里引用web服务

[WebMethod]
public byte[] DownLoad()
{
byte[] bytes ;
try
{
FileStream fs = new FileStream("c:\\AppStart.exe", FileMode.Create, FileAccess.Write);


for(int i = 0; i<10 ; i ++)
{
fs.Write(bytes, 0, bytes.Length);
}
return bytes;
fs.Close();
}
catch
{
return null;


}


}


-------------
只要在web服务 定义一个byte[] 用来接受文件 就可以


yuanreid 2005-12-13
  • 打赏
  • 举报
回复
不如自己从socket实现。移植和维护也好些。就是工作量比较大。
stonegoldaustin 2005-12-13
  • 打赏
  • 举报
回复
Public Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
Public Declare Function InternetConnect Lib "wininet.dll" Alias "InternetConnectA" (ByVal hInternetSession As Long, ByVal sServerName As String, ByVal nServerPort As Integer, ByVal sUserName As String, ByVal sPassword As String, ByVal lService As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Public Declare Function FtpSetCurrentDirectory Lib "wininet.dll" Alias "FtpSetCurrentDirectoryA" (ByVal hFtpSession As Long, ByVal lpszDirectory As String) As Boolean
Public Declare Function FtpGetCurrentDirectory Lib "wininet.dll" Alias "FtpGetCurrentDirectoryA" (ByVal hFtpSession As Long, ByVal lpszCurrentDirectory As String, lpdwCurrentDirectory As Long) As Long
Public Declare Function FtpCreateDirectory Lib "wininet.dll" Alias "FtpCreateDirectoryA" (ByVal hFtpSession As Long, ByVal lpszDirectory As String) As Boolean
Public Declare Function FtpRemoveDirectory Lib "wininet.dll" Alias "FtpRemoveDirectoryA" (ByVal hFtpSession As Long, ByVal lpszDirectory As String) As Boolean
Public Declare Function FtpDeleteFile Lib "wininet.dll" Alias "FtpDeleteFileA" (ByVal hFtpSession As Long, ByVal lpszFileName As String) As Boolean
Public Declare Function FtpRenameFile Lib "wininet.dll" Alias "FtpRenameFileA" (ByVal hFtpSession As Long, ByVal lpszExisting As String, ByVal lpszNew As String) As Boolean
Public Declare Function FtpGetFile Lib "wininet.dll" Alias "FtpGetFileA" (ByVal hConnect As Long, ByVal lpszRemoteFile As String, ByVal lpszNewFile As String, ByVal fFailIfExists As Long, ByVal dwFlagsAndAttributes As Long, ByVal dwFlags As Long, ByRef dwContext As Long) As Boolean
Public Declare Function FtpPutFile Lib "wininet.dll" Alias "FtpPutFileA" (ByVal hConnect As Long, ByVal lpszLocalFile As String, ByVal lpszNewRemoteFile As String, ByVal dwFlags As Long, ByVal dwContext As Long) As Boolean
Public Declare Function InternetGetLastResponseInfo Lib "wininet.dll" Alias "InternetGetLastResponseInfoA" (lpdwError As Long, ByVal lpszBuffer As String, lpdwBufferLength As Long) As Boolean
Public Declare Function FtpFindFirstFile Lib "wininet.dll" Alias "FtpFindFirstFileA" (ByVal hFtpSession As Long, ByVal lpszSearchFile As String, lpFindFileData As WIN32_FIND_DATA, ByVal dwFlags As Long, ByVal dwContent As Long) As Long
Public Declare Function InternetFindNextFile Lib "wininet.dll" Alias "InternetFindNextFileA" (ByVal hFind As Long, lpvFindData As WIN32_FIND_DATA) As Long
Public Declare Function InternetWriteFile Lib "wininet.dll" (ByVal hFile As Long, ByRef sBuffer As Byte, ByVal lNumBytesToWite As Long, dwNumberOfBytesWritten As Long) As Integer
Public Declare Function FtpOpenFile Lib "wininet.dll" Alias "FtpOpenFileA" (ByVal hFtpSession As Long, ByVal sBuff As String, ByVal Access As Long, ByVal Flags As Long, ByVal Context As Long) As Long
'Public Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
'UPDATE DECLARE
Public Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByRef sBuffer As Byte, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
Public Declare Function LoByte Lib "TLBINF32" Alias "lobyte" (ByVal Word As Integer) As Byte
Public Declare Function HiByte Lib "TLBINF32" Alias "hibyte" (ByVal Word As Integer) As Byte
Public Declare Function loword Lib "TLBINF32" (ByVal DWord As Long) As Integer
Public Declare Function hiword Lib "TLBINF32" (ByVal DWord As Long) As Integer

这么多函数够用了吧
zhongjy001 2005-12-13
  • 打赏
  • 举报
回复
用socket

jrl5365 2005-12-13
  • 打赏
  • 举报
回复
我的分都在这了,怎么还是没人帮我啊。。。。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧