中华轴承网会员多少钱:VB 传输任意格式文件

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/09 15:01:32
请问高手如果用VB得WINSOCK控件传输任意格式任意大小得文件.急需!

⑴启动VB6.0,在“外接程序→外接程序管理器”中加载“VisualBasic6资源编辑器”
⑵在VB资源编辑器窗口中,点击“添加自定义资料”,增加Winsock控件(C:\Winddows\System\Mswinsck.ocx),再双击刚刚创建的自定义资源,弹出”编辑属性”窗口,定义如下:
类型: “OCX”(也可以用默认的"CUSTOM")
标识号: 101
语言: 中文(中国)
⑶保存资源文件,写如下代码:
OptionExplicit
PrivateDeclareFunctionGetSystemDirectoryLib"kernel32"Alias"GetSystemDirectoryA"(ByVallpBufferAsString,ByValnSizeAsLong)AsLong
ConstMAX_PATH=260'定义足够长的字符串
PrivateSubForm_Load()
DimTempFile()AsByte
DimFileNumAsInteger
DimTempDirAsString
TempDir=GetWinSysDir'自定义函数取得系统的Winddows\System的目录
TempFile=LoadResData(101,"OCX")'用以从资源(.res)文件装载若干可能类型的数据,并返回一个Byte数组
FileNum=FreeFile
OpenTempDir&"\Mswinsck.ocx"ForBinaryAs#FileNum'新建文件(把Winsock控件复制到指定目录下)
Put#FileNum,,TempFile
Close#FileNum
'Shell"regsvr32"&TempDir&"\Mswinsck.ocx",vbNormalFocus'注册控件,有弹出对话框
Shell"regsvr32"&TempDir&"\Mswinsck.ocx/s",vbNormalFocus'注册控件,无弹出对话框
EndSub
PublicFunctionGetWinSysDir()'定义读取Winddows\System的所在目录的函数
DimSAsString,LengthAsLong
S=String(MAX_PATH,0)'赋值
Length=GetSystemDirectory(S,MAX_PATH)'S为取得目录,MAX_PATH为长度
S=Left(S,InStr(S,Chr(0))-1)'去掉多余的空格
GetWinSysDir=S
EndFunction
'补充:S和MAX_PATH的值是可以随便赋的,
'如:DimSAsString*20
'Length=GetSystemDirectory(S,20)
使用这种方法,可在VB程序中嵌入任意格式的文件