Foxtable(狐表)用户栏目专家坐堂 → 加密与解密的问题!!!谢谢


  共有15726人关注过本帖树形打印复制链接

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

帅哥哟,离线,有人找我吗?
雨中的泪
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
加密与解密的问题!!!谢谢  发帖心情 Post By: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楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By: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楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By: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楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2010/8/13 20:38:00 [只看该作者]

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

谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2010/8/13 20:56:00 [只看该作者]

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

谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2010/8/13 21:07:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:rsgzglxt.rar


 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2010/8/13 21:32:00 [只看该作者]

各位老大有办法没?

 


 回到顶部
帅哥哟,离线,有人找我吗?
e-png
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1695 积分:10725 威望:0 精华:0 注册:2009/10/25 16:45:00
  发帖心情 Post By:2010/8/13 23:49:00 [只看该作者]

解读代码要高水平的人。你最好1、2、3;;;;;N的一步步说清楚,别人才好测试。

 回到顶部
帅哥哟,离线,有人找我吗?
雨中的泪
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1432 积分:9061 威望:0 精华:0 注册:2009/8/19 8:19:00
  发帖心情 Post By:2010/8/14 10:58:00 [只看该作者]

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

谢谢


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/8/14 11:15:00 [只看该作者]

不可以判断。


 回到顶部
总数 30 1 2 3 下一页