qq_35321517
qq_35321517
采纳率100%
2019-05-05 15:25

求大神帮忙,WIN32 API或C# WINFORM如何进入加密Excel表内,读取数据?

20

1.最近有WIN32 API程式要做,有将Excel作为数据库方式进入,读取数据.
2.但是现在问题是要读取带密码保护的Excel,不让其他人知道Excel密码,通过程式内设置密码进入Excel读取.
3.目前是直接通过ODBC方式,DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FAL.REATE_DB=\"%s\";DBQ=%s;ON连接

4.Excel加密是通过保存或另存为时,弹出方框,保存按钮下有个加密按钮,在那里设置的密码
5.我在这句加上类似SQL带密码方式,也是没办法打开进入读取
6.有没有大神可以有办法,但是局限WIN32 API&SDK, C# WINFORM这两个方式.

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • qq_35321517 qq_35321517 2年前

    问题已解决,结贴,谢谢了

    点赞 评论 复制链接分享
  • huakai2418 huakai2418 2年前

    DevExpress office API可以读写加密的excel文件,图、表均可操作,目前.net方面估计就这个最强大了

    点赞 评论 复制链接分享
  • Simonzy Simonzy 2年前

    请查阅:https://bbs.csdn.net/topics/240004421

    string ConnStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:/aa.xls;Extended Properties='Excel 8.0;HDR=NO;IMEX=1';User Id=***;Password=***;";
    OleDbConnection Conn=new OleDbConnection(ConnStr);
    Conn.Open();
    string SQL="select * from [sheet1$]";
    OleDbDataAdapter da=new OleDbDataAdapter(SQL,ConnStr);
    DataSet ds=new DataSet();
    da.Fill(ds);
    DataGrid1.DataSource=ds;
    DataGrid1.DataBind();

    点赞 评论 复制链接分享