1. 如何让VB运行一个加密的压缩文件内的exe程序(高手回答)
不使用“加密的压缩文件”,用VB的资源编辑器,把程序123.exe添加到资源文件,资源编辑器用法 http://..com/question/77194886.html
点击按钮时,生成123.exe,再运行,代码
Dim arr() As Byte
arr = LoadResData(101, "CUSTOM")
FileName = "C:\windows\temp\123.exe"
Open FileName For Binary As #1
Put #1, , arr
Close #1
Shell FileName, vbNormalFocus
2. 如何用代码把access文件压缩成带密码的winrar文件。最好用vb写的。因为access文件很容易就被破解了。所...
用 Shell 调用 WinRAR
Private Sub Command1_Click()
Shell "C:\Program Files\WinRAR\WinRAR.exe a -p123456-r c:\456.rar c:\123.mdb"
End Sub
123456 为密码
把123.mdb 加密压缩为文件 456.rar
3. vb 压缩带密码的access数据库
VB6与数据库的连接方法很多,取决于你的目的,如果你主要是为了把数据按照传统的表格方式展现出来,那么你可以用DBGrid之类的控件,里面可以设置数据源,然后自动他就会自动获取数据源里面的信息并显示出来,也可以进行一些简单的数据修改操作。如果你想要对数据进行比较复杂的程序处理,那么可以使用ADO对象来连接和查询数据库,里面有一个RecordSet对象,可以对查询的结果进行遍历,分析等。
对Access数据库加密一般都是使用Access软件实现吧?我不清楚代码怎么实现,但是用软件就只需要在菜单操作就可以了。具体来说就是文件菜单选择打开,在”打开“后面的下拉式莱单中选为独占模式打开,这样打开文件后,使用工具菜单里面的安全,里面就有设置数据库密码
4. 高手来vb调用加密的WINRAR,如何把加密WINRAR里面文件调出来
首先你要知道密码是多少.
例:假设1.rar密码为123,里面含有一个setup.exe.
把rar.exe复制到你的VB程序目录下.
在窗体上新建一个按钮,输入以下代码
rar e -p123 1.rar setup.exe : rar后空格,跟着e,再空格,跟着-p后面没有空格,紧跟密码,然后空格,输入要解压的RAR文件,空格,再输入要解压的具体文件
private sub command1_click()
shell "rar e -p123 1.rar setup.exe",5
end sub
-----------------------
RAR命令行:
RAR 3.80 beta 5 版权 (C) 1993-2008 Alexander Roshal 29 八月 2008
已注册给
用法: rar <命令> -<开关 1> -<开关 N> <压缩文件> <文件...>
<@列表文件...> <解压路径\>
<命令>
a 添加文件到压缩文件
c 添加压缩文件注释
cf 添加文件注释
ch 改变压缩文件参数
cw 写入压缩文件注释到文件
d 删除压缩文件中的文件
e 解压压缩文件到当前目录
f 刷新压缩文件中的文件
i[参数]=<串> 在压缩文件中查找字符串
k 锁定压缩文件
l[t,b] 列出压缩文件[技术信息,简洁]
m[f] 移动到压缩文件[仅对文件]
p 打印文件到标准输出设备
r 修复压缩文件
rc 重建丢失的卷
rn 重命名压缩文件
rr[N] 添加数据恢复记录
rv[N] 创建恢复卷
s[名字|-] 转换压缩文件为自解压格式或转换回压缩文件
t 测试压缩文件
u 更新压缩文件中的文件
v[t,b] 详细列出压缩文件[技术信息,简洁]
x 用绝对路径解压文件
<开关>
- 停止扫描
ac 压缩或解压后清除存档属性
ad 添加压缩文件名到目标路径
ag[格式] 使用当前日期生成压缩文件名
ao 添加具有压缩属性的文件
ap<格式> 添加路径到压缩文件中
as 同步压缩文件内容
av 添加用户身份校验(仅注册版本可用)
av- 禁用用户身份校验
c- 禁用注释显示
cfg- 禁用读取配置
cl 名称转换为小写
cu 名称转换为大写
df 压缩后删除文件
dh 打开共享文件
dr 删除文件到回收站
ds 对固实压缩文件禁用名称排序
dw 压缩后清除文件
e[+]<属性> 设置文件排除和包括属性
ed 不添加空目录
en 不添加"压缩文件结束"标志
ep 从名称中排除路径
ep1 从名称中排除基本目录
ep2 展开为完整路径
ep3 扩展路径为包含盘符的完全路径
f 刷新文件
hp[密码] 同时加密文件数据和文件头
id[c,d,p,q] 禁用消息
ieml[属性] 用 E-mail 发送压缩文件
ierr 发送所有消息到标准错误设备
ilog[名称] 把错误写到日志文件(只有注册版本可用)
inul 禁用所有消息
ioff 完成一个操作后关闭 PC 电源
isnd 启用声音
k 锁定压缩文件
kb 保留损坏的已解压文件
m<0..5> 设置压缩级别(0-存储...3-默认...5-最大)
mc<参数> 设置高级压缩参数
md<大小> 以KB为单位的字典大小(64,128,256,512,1024,2048,4096 or A-G)
ms[ext;ext] 指定存储的文件类型
mt<线程> 设置线程数
n<文件> 仅包含指定的文件
n@ 从标准输入设备读取文件名到包括
n@<列表> 在指定的文件列表包括文件
o[+|-] 设置覆盖模式
oc 设置 NTFS 压缩属性
or 自动重命名文件
os 保存 NTFS 流
ow 保存或恢复文件所有者和组
p[密码] 设置密码
p- 不询问密码
r 递归子目录
r0 仅递归通配符名称的子目录
ri<P>[:<S>] 设置优先级(0-默认,1-最小..15-最大)和以毫秒为单位的休眠时间
rr[N] 添加数据恢复记录
rv[N] 创建恢复卷
s[<N>,v[-],e] 创建固实压缩文件
s- 禁用固实压缩文件
sc<chr>[obj] 指定字符集
sfx[名称] 创建自解压压缩文件
st[名称] 从标准输入设备读取数据(stdin)
sl<大小> 处理小于指定大小的文件
sm<大小> 处理超过指定大小的文件
t 压缩后测试文件
ta<日期> 添加日期 <日期> 后修改的文件,日期格式 YYYYMMDDHHMMSS
tb<日期> 添加日期 <日期> 前修改的文件,日期格式 YYYYMMDDHHMMSS
tk 保留原始压缩文件时间
tl 设置压缩文件时间为最新文件时间
tn<时间> 添加 <时间> 以后的文件
to<时间> 添加 <时间> 以前的文件
ts<m,c,a>[N] 保存或恢复文件时间(修改,创建,访问)
u 更新文件
v 自动检测创建卷的大小或者列出所有的卷
v<大小>[k,b] 创建卷大小=<大小>*1000 [*1024, *1]
vd 创建容量前清除磁盘内容
ver[n] 文件版本控制
vn 使用旧风格的卷命名方案
vp 每卷之前暂停
w<路径> 指定工作目录
x<文件> 排除指定的文件
x@ 从标准输入设备读取要排除的文件名
x@<列表> 排除指定列表文件中的文件
y 假设对全部询问都回答是
z[文件] 从文件读取压缩文件注释
5. VB读取rar加密文件
1、装个UnrarDLL库,没有这个库什么都做不了
2、基于这个库粘贴如下代码,要求有一个窗体一个文本框一个按钮,同时要有一个模块
目前我只实现了读文本,剩下的部分网络HI我我发给你
窗体代码
Option
Explicit
Private
Declare
Function
RARGetDllVersion
Lib
"C:\\Program
Files\\UnrarDLL\\unrar.dll"
()
As
Long
Private
Declare
Function
RAROpenArchive
Lib
"C:\\Program
Files\\UnrarDLL\\unrar.dll"
(ByRef
ArchiveData
As
RAROpenArchiveData)
As
Long
Private
Declare
Function
RARCloseArchive
Lib
"C:\\Program
Files\\UnrarDLL\\unrar.dll"
(ByVal
Handle
As
Long)
As
Long
Private
Declare
Sub
RARSetCallback
Lib
"C:\\Program
Files\\UnrarDLL\\unrar.dll"
(ByVal
hArcData
As
Long,
ByVal
Callback
As
Long,
ByVal
UserData
As
Long)
Private
Declare
Function
RARProcessFile
Lib
"C:\\Program
Files\\UnrarDLL\\unrar.dll"
(ByVal
hArcData
As
Long,
ByVal
Operation
As
Long,
ByVal
DestPath
As
String,
ByVal
DestName
As
String)
As
Long
Private
Declare
Function
RARReadHeader
Lib
"C:\\Program
Files\\UnrarDLL\\unrar.dll"
(ByVal
hArcData
As
Long,
ByRef
HeaderData
As
RARHeaderData)
As
Long
Private
Const
RAR_OM_EXTRACT
=
1
Private
Const
RAR_SKIP
=
0
Private
Const
RAR_TEST
=
1
Private
Const
RAR_EXTRACT
=
2
Private
Type
RAROpenArchiveData
ArcName
As
String
OpenMode
As
Long
OpenResult
As
Long
CmtBuf
As
String
CmtBufSize
As
Long
CmtSize
As
Long
CmtState
As
Long
End
Type
Private
Type
RARHeaderData
ArcName(1
To
260)
As
Byte
FileName(1
To
260)
As
Byte
Flags
As
Long
PackSize
As
Long
UnpSize
As
Long
HostOS
As
Long
FileCRC
As
Long
FileTime
As
Long
UnpVer
As
Long
Method
As
Long
FileAttr
As
Long
CmtBuf
As
String
CmtBufSize
As
Long
CmtSize
As
Long
CmtState
As
Long
End
Type
Private
hrar
As
Long
Private
Sub
Command1_Click()
Dim
x
As
RAROpenArchiveData
Dim
Y
As
RARHeaderData
Dim
l
As
Long
x.ArcName
=
"C:\\Program
Files\\UnrarDLL\\1.rar"
&
vbNullChar'目标文件名
x.OpenMode
=
RAR_OM_EXTRACT
x.CmtBuf
=
String(1024,
vbNullChar)
x.CmtBufSize
=
1024
hrar
=
RAROpenArchive(x)
Y.CmtBuf
=
String(1024,
vbNullChar)
Y.CmtBufSize
=
1024
RARReadHeader
hrar,
Y
RARSetCallback
hrar,
AddressOf
RarCallback,
UCM_NEEDPASSWORD
l
=
RARProcessFile(hrar,
RAR_SKIP,
"C:\\Program
Files\\UnrarDLL"
&
vbNullChar,
"C:\\Program
Files\\UnrarDLL\\whatsnew.txt"
&
vbNullChar)
l
=
RARProcessFile(hrar,
RAR_EXTRACT,
"C:\\Program
Files\\UnrarDLL"
&
vbNullChar,
"C:\\Program
Files\\UnrarDLL\\2.txt"
&
vbNullChar)
l
=
RARCloseArchive(hrar)
End
Sub
模块代码
Public
Enum
UNRARCALLBACK_MESSAGES
UCM_CHANGEVOLUME
UCM_PROCESSDATA
UCM_NEEDPASSWORD
End
Enum
Public
Const
PASSWD
=
"111"'
这个是密码
Public
Declare
Sub
CopyMemory
Lib
"kernel32"
Alias
"RtlMoveMemory"
(Destination
As
Byte,
ByVal
Source
As
Long,
ByVal
Length
As
Long)
Public
Declare
Sub
CopyMemoryPass
Lib
"kernel32"
Alias
"RtlMoveMemory"
(ByVal
Destination
As
Long,
ByVal
Source
As
String,
ByVal
Length
As
Long)
Public
Function
RarCallback(ByVal
msg
As
Long,
ByVal
UserData
As
Long,
ByVal
P1
As
Long,
ByVal
P2
As
Long)
As
Long
Select
Case
msg
Case
UCM_PROCESSDATA
Dim
db()
As
Byte
ReDim
db(0
To
P2)
As
Byte
Dim
s
As
String
CopyMemory
db(0),
P1,
P2
s
=
StrConv(db,
vbUnicode)
Form1.Text1.Text
=
s
RarCallback
=
-1
Case
UCM_NEEDPASSWORD
Dim
t
As
String
t
=
PASSWD
&
vbNullChar
CopyMemoryPass
P1,
t,
Len(t)
End
Select
End
Functio
6. VB可用的,有些什么可以解压带密码zip文件的控件
要解带密码的压缩文件,首先需要文件密码,否则是做无用功。
至于解压缩VB可使用API函数实现。
7. 用VB代码打开带密码的压缩包
在窗体拉出一个command按钮,然后输入
Private Sub Command1_Click()
Dim s As String
s = "C:\Program Files\WinRAR\WinRAR.exe x c:\我的压缩包.rar c:\"
Shell "cmd /c " & s, 0
End Sub
意思是把c盘下"我的压缩包.rar"文件解压到c盘下。
8. vb如何调用Windows自带的压缩工具给zip文件加密
你把简单的问题弄复杂了,去随便找个zip组件吧,就算是winrar自带的rar.exe都支持密码操作的。
如果一定要通过系统自带的那个功能来实现的话,可以考虑模拟按键操作,也就是用findwindow之类找到打开的那个窗口,然后对那个窗口发送按键信息来添加密码。
系统自带那个zipfldr.dll没有公开接口,用命令行运行rundll32 zipfldr.dll,RouteTheCall zipfile可以打开那个界面。至于vb或者其它语言中一般都是内置压缩模块或者其它压缩解压缩控件来完成的,比如http://www.vbaccelerator.com/home/VB/Code/Libraries/Compression/Zipping_Files/article.asp
9. VB可用的,有些什么可以解压带密码zip文件的控件
调用shell、已安装的winrar解压文件。shell
"c:\program
files\winrar\winrar.exe
"
&
"命令行参数"命令行语法
从命令行也可以运行
winrar
命令,常规的命令行语法描述如下:winrar
<命令>
-<开关1>
-<开关n>
<压缩文件
>
<文件...>
<@列表文件...>
<解压路径\>命令要
winrar
运行的字符组合代表功能开关切换操作指定类型,压缩强度,压缩文件类型,等等的定义。
压缩文件要处理的压缩文件名。文件要处理的文件名。列表文件列表文件是包含要处理文件名称的纯文本。文件名应该在第一卷启动。可以在列表文件中使用
//字符后添加注释。例如,你可以包含两列字符串创建
backup.lst:
c:\work\doc\*.txt
//备份文本文档
c:\work\image\*.bmp
//备份图片c:\work\misc并接着运行:
winrar
a
backup
@backup.lst你可以在命令行中同时指定普通的文件名和列表文件名。
解压路径只与命令
e
和
x
,搭配使用。指出解压文件添加的位置。如果文件夹不存在时,会自动创建。
注意事项a)
如果未指定
文件
或是
列表文件
时,winrar
将会以缺省的
*.*
运行全部的文件;b)
如果未指定压缩文件扩展名时,winrar
将会使用在
压缩配置
中选定的默认压缩文件格式。但你可以指定
.rar
或
.zip
扩展名来替换它们
;c)
在命令行所输入的开关会替换相同的配置设置值
;d)
在命令
c
、e、s、t、rr、k
和
x
可在压缩文件名中使用通配符。如此可以用单个的命令来进行超过一个以上的压缩文件,除此之外,如果你指定
-r
开关于这些命令时,它们将会搜索在子文件夹中的压缩文件
;e)
某些命令和开关只应用在
rar
压缩文件,有些则在
rar
和
zip
都可使用,而某些则可应用在全部的压缩文件格式。这一些都得看压缩文件格式所提供的特性而定
;f)
命令和开关的大小写是相同意思的,你可以用大写或者小写来下命令均可。
10. 如何用VB编程破解WinRAR压缩文件的密码 用穷举法
1、用Shell调用Winrar,网上有winrar参数说明
2、生成穷举字典,网上有VB穷举法函数
3、循环执行解压命令,直到返回正确信息,或穷举完成。
4、不用什么控件,只要有装winrar就行