zoukankan      html  css  js  c++  java
  • C++ 保存Excel文件(带密码保护)

    最近有客户需求报表保存为xls的功能,需要保存的文件设置密码保护,特进行尝试!

    Workbook.SaveAs method (Excel)

    参数详情:https://docs.microsoft.com/en-us/office/vba/api/excel.workbook.saveas

     C++ Code 
    1
    2
    3
    4
    5
    6
     
    void SaveAs(VARIANT &Filename, VARIANT &FileFormat, VARIANT &Password, VARIANT &WriteResPassword, VARIANT &ReadOnlyRecommended, VARIANT &CreateBackup, long AccessMode, VARIANT &ConflictResolution, VARIANT &AddToMru, VARIANT &TextCodepage, VARIANT &TextVisualLayout, VARIANT &Local)
    {
        
    static BYTE parms[] = VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_I4 VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT ;
        InvokeHelper(0x785, DISPATCH_METHOD, VT_EMPTY, 
    NULL, parms, &Filename, &FileFormat, &Password, &WriteResPassword, &ReadOnlyRecommended, &CreateBackup, AccessMode, &ConflictResolution, &AddToMru, &TextCodepage, &TextVisualLayout, &Local);
    }

    调用实例:

     C++ Code 
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    BOOL bReadOnlyRecommended = TRUE;
    BOOL bCreateBackup = TRUE;
    BOOL bLocal = TRUE;
    CString strXlsPath = _T("C:\test.xls");
    m_book.SaveAs(  _variant_t(strXlsPath),                         
    // Filename
                    _variant_t(-4143)/*xlWorkbookNormal*/,          // FileFormat
                    _variant_t(_T("123")),                          // Password
                    _variant_t(_T("123")),                          // WriteResPassword
                    _variant_t(bReadOnlyRecommended),               // ReadOnlyRecommended
                    _variant_t(bCreateBackup),                      // CreateBackup
                    _variant_t(2)/*xlShared*/,                      // AccessMode
                    _variant_t(2)/*xlLocalSessionChanges*/,         // ConflictResolution
                    vtMissing, vtMissing, vtMissing,
                    _variant_t(bLocal));                            
    // Local

    最终成功打开:

  • 相关阅读:
    MasterPage中找尋控件
    Win2003服务器发布的网站Session经常丢失
    Toolkits
    aspnet_regiis 命令格式說明
    SQL转换数字中文大写
    ASP.NET2.0实现无刷新客户端回调
    SQL的使用规范
    pku3207 2SAT问题入门
    unity3d打包资源
    Vector3.Lerp 插值
  • 原文地址:https://www.cnblogs.com/MakeView660/p/10191031.html
Copyright © 2011-2022 走看看