Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共30 条记录, 每页显示 10 条, 页签: [1] [2][3]
[浏览完整版]

标题:加密与解密的问题!!!谢谢

1楼
雨中的泪 发表于:2010/8/13 20:28:00

Dim dlg As New SaveFileDialog   '指定一个新的SaveFileDialog
dlg.Filter= "上报文件|*.DSB"   '设置筛选器
dlg. title= "生成上报文件"
dlg.OverwritePrompt = False
If dlg.ShowDialog = DialogResult.Ok Then   '如果用户单击了确定按钮
    If FileSys.FileExists(dlg.filename) Then    '如果指定的文件存在
        If Messagebox.Show("有同名文件存在,是否删除?", "提示", MessageBoxButtons.YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
            FileSys.DeleteFile(dlg.filename,2,2)  '则彻底删除之
        Else
            Return
        End If
    End If
    Dim ex As New Exporter
    ex.SourceTableName = "调资基础数据"   '指定导出表
    ex.Format = "Access"   '指定导出文件格式
    ex. PassWord = "TZX_GWY_JT_8888"  '用此属性指定目标文件的密码
    ex.filepath =  dlg.filename    '指定目标文件
    ex.NewTableName = "调资基础数据"        '指定导出后的表的名称
    ex.Export()    '开始导出数据
    FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
    FileSys.DeleteFile(dlg.filename, 2, 2)
    EncryptFile(dlg.filename & ".bak", dlg.filename, "88881")
    FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
    MessageBox.Show("上报数据生成完成!", "提示", MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

2楼
雨中的泪 发表于:2010/8/13 20:30:00

用上述代码生成后缀名为DSB的上报文件~~~!!!

然后后缀名改为DBF,然后用以下代码,恢复!!!

If MessageBox.Show( "恢复数据库操作将清空数据库,确定是否清空?","提示",MessageBoxButtons. YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
DataTables("调资基础数据").DataRows.Clear()  '清空指定表数据
Else
     Return       '点击否终止代码的执行
End If
Dim dlg As New OpenFileDialog    '定义一个新的OpenFileDialog
dlg.Filter= "备份文件|*.DBF"        '设置筛选器
dlg. title= "数据恢复"  
If dlg.ShowDialog = DialogResult.Ok Then       '如果用户单击了确定按钮
FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
FileSys.DeleteFile(dlg.filename, 2, 2)
DecryptFile (dlg.filename & ".bak", dlg.filename, "8888")
FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
Dim ip As New Merger  
ip.SourcePath = dlg.filename  '指定数据文件
ip.SourceTableName = "调资基础数据"      '指定要合并的表
ip.Format = "Access" '指定合并文件格式
ip. PassWord = "TZX_GWY_JT_8888"  '用此属性指定合并文件的密码
ip.Fields = "单位名称"   ' 指定要合并的字段(列)
ip. DataTableName ="数据接收临时判断" '合并后的表名
ip. Merge()   '开始合并
Dim dws As List(Of String)       '定义一个字符型数组集合
 dws = DataTables("调资基础数据").GetUniqueValues("", "单位名称") '列出所有单位
 For Each dw As String In dws '逐个单位判断
    Dim dr As DataRow = DataTables("数据接收临时判断").find("[单位名称] = '" & dw & "'")
        If dr IsNot Nothing Then
           If MessageBox.Show( dw & "的记录已经存在,确定是否请删除?","提示",MessageBoxButtons. YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
     DataTables("调资基础数据").DeleteFor("[单位名称] = '" & dw & "'")
Else
FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
     FileSys.DeleteFile(dlg.filename, 2, 2)
     EncryptFile(dlg.filename & ".bak", dlg.filename, "8888")
     FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
     Return       '点击否终止代码的执行
End If
      End If
 Next
 Dim mg As New Merger
 mg.SourcePath = dlg.filename
 mg.SourceTableName = "调资基础数据"
 mg.Format = "Access"
 mg. PassWord = "TZX_GWY_JT_8888"
 mg.DataTableName = "调资基础数据"
 mg.Merge()
 MessageBox.Show("数据恢复完成!!!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)
DataTables("数据接收临时判断").DataRows.Clear()  '清空指定表数据
FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
     FileSys.DeleteFile(dlg.filename, 2, 2)
     EncryptFile(dlg.filename & ".bak", dlg.filename, "8888")
     FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
Else
 MessageBox.Show( "数据库已被清空!!!","提示",MessageBoxButtons. OK,MessageBoxIcon.Warning)
   End If

3楼
雨中的泪 发表于:2010/8/13 20:32:00

提示不可识别的文件格式!!!

文件后缀名再改为DSB后,用以下接收代码接收:

Dim dlg As New OpenFileDialog    '定义一个新的OpenFileDialog
dlg.Filter= "上报文件|*.DSB"        '设置筛选器
dlg. title= "接收上报文件"  
If dlg.ShowDialog = DialogResult.Ok Then       '如果用户单击了确定按钮
FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
FileSys.DeleteFile(dlg.filename, 2, 2)
DecryptFile (dlg.filename & ".bak", dlg.filename, "88881")
FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
Dim ip As New Merger  
ip.SourcePath = dlg.filename  '指定数据文件
ip.SourceTableName = "调资基础数据"      '指定要合并的表
ip.Format = "Access" '指定合并文件格式
ip. PassWord = "TZX_GWY_JT_8888"  '用此属性指定合并文件的密码
ip.Fields = "单位名称"   ' 指定要合并的字段(列)
ip. DataTableName ="数据接收临时判断" '合并后的表名
ip. Merge()   '开始合并
Dim dws As List(Of String)       '定义一个字符型数组集合
 dws = DataTables("调资基础数据").GetUniqueValues("", "单位名称") '列出所有单位
 For Each dw As String In dws '逐个单位判断
    Dim dr As DataRow = DataTables("数据接收临时判断").find("[单位名称] = '" & dw & "'")
        If dr IsNot Nothing Then
           If MessageBox.Show( dw & "的记录已经存在,确定是否请删除?","提示",MessageBoxButtons. YesNo,MessageBoxIcon.Question) = DialogResult.Yes Then
     DataTables("调资基础数据").DeleteFor("[单位名称] = '" & dw & "'")
Else
     FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
     FileSys.DeleteFile(dlg.filename, 2, 2)
     EncryptFile(dlg.filename & ".bak", dlg.filename, "88881")
     FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
     Return       '点击否终止代码的执行
End If
      End If
 Next
 Dim mg As New Merger
 mg.SourcePath = dlg.filename
 mg.SourceTableName = "调资基础数据"
 mg.Format = "Access"
 mg. PassWord = "TZX_GWY_JT_8888"
 mg.DataTableName = "调资基础数据"
 mg.Merge()
 MessageBox.Show("接收上报数据完成!!!","提示",MessageBoxButtons.OK,MessageBoxIcon.Question)
DataTables("数据接收临时判断").DataRows.Clear()  '清空指定表数据
FileSys.CopyFile(dlg.filename, dlg.filename & ".bak",False)
     FileSys.DeleteFile(dlg.filename, 2, 2)
     EncryptFile(dlg.filename & ".bak", dlg.filename, "88881")
     FileSys.DeleteFile(dlg.filename & ".bak", 2, 2)
 End If

 

还是不可识别的文件格式!!!

如何处理?谢谢

4楼
雨中的泪 发表于:2010/8/13 20:38:00

有没有办法直接判断加密的文件加密和解密的密钥是否相同,相同就直接读入!!不相同就直接提示!!!

谢谢

5楼
雨中的泪 发表于:2010/8/13 20:56:00

有没有办法直接判断加密的文件加密和解密的密钥是否相同,相同就直接读入!!不相同就直接提示!!!

谢谢

6楼
雨中的泪 发表于:2010/8/13 21:07:00
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:rsgzglxt.rar

7楼
雨中的泪 发表于:2010/8/13 21:32:00

各位老大有办法没?

 

8楼
e-png 发表于:2010/8/13 23:49:00
解读代码要高水平的人。你最好1、2、3;;;;;N的一步步说清楚,别人才好测试。
9楼
雨中的泪 发表于:2010/8/14 10:58:00

有没有办法直接判断一个已经加密的ACCESS文件,解密的密钥是否和加密的密钥是否相同,相同就直接读入设计的系统!!不相同就直接提示!!!

谢谢

10楼
狐狸爸爸 发表于:2010/8/14 11:15:00

不可以判断。

共30 条记录, 每页显示 10 条, 页签: [1] [2][3]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03711 s, 3 queries.