C++ 保存Excel文件(带密码保护)
最近有客户需求报表保存为xls的功能,需要保存的文件设置密码保护,特进行尝试!
Workbook.SaveAs method (Excel)
参数详情:https://docs.microsoft.com/en-us/office/vba/api/excel.workbook.saveas
|
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); } |
调用实例:
|
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 )/*xlWorkbookNormal*/, // FileFormat _variant_t(_T("123")), // Password _variant_t(_T("123")), // WriteResPassword _variant_t(bReadOnlyRecommended), // ReadOnlyRecommended _variant_t(bCreateBackup), // CreateBackup )/*xlShared*/, // AccessMode )/*xlLocalSessionChanges*/, // ConflictResolution vtMissing, vtMissing, vtMissing, _variant_t(bLocal)); // Local |


最终成功打开:

C++ 保存Excel文件(带密码保护)的更多相关文章
- excel怎么设置密码保护?Excel文件添加密码保护教程
excel怎么设置密码保护?Excel文件添加密码保护教程 众所周知,Excel具有强大的数据处理和数据分析能力,广泛应用于加工学统计及金融统计中.特别是金融统计需要较高的安全性,那么就一定要为Exc ...
- Unity C# 调用SaveFileDialog保存Excel文件
本文原创,转载请注明出处:http://www.cnblogs.com/AdvancePikachu/p/6893934.html 本文学习如何把数据转存为Excel文件并调用SaveFileDial ...
- NPOI 2.0 读取、编辑、保存Excel文件
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- java使用org.apache.poi读取与保存EXCEL文件
一.读EXCEL文件 package com.ruijie.wis.cloud.utils; import java.io.FileInputStream; import java.io.FileNo ...
- C# 使用自带Microsoft.Office.Interop.Excel简单操作Excel文件
项目添加应用 Microsoft.Office.Interop.Excel.dll 文件 引用命名空间: using Excel = Microsoft.Office.Interop.Excel; 简 ...
- Spire.XLS,生成Excel文件、加载Excel文件
一.组件介绍 Spire.XLS是E-iceblue开发的一套基于企业级的专业Office文档处理的组件之一,全称Spire.Office for .NET.旗下有Spire.Doc,Spire XL ...
- ExtJS Grid导出excel文件
ExtJS Grid导出excel文件, 需下载POI:链接:http://pan.baidu.com/s/1i3lkPhF 密码:rqbg 1.将Grid表格数据连同表格列名传到后台 2.后台导出e ...
- C#操作Excel文件(读取Excel,写入Excel)
看到论坛里面不断有人提问关于读取excel和导入excel的相关问题.闲暇时间将我所知道的对excel的操作加以总结,如今共享大家,希望给大家可以给大家带了一定的帮助.另外我们还要注意一些简单的问题1 ...
- 【转载】WPS通过设置密码的方式对Excel文件加密
有时候Excel文件中可能包含一些敏感数据,此时希望对Excel文件进行加入密码的形式进行加密保护,在WPS软件和Office Excel软件中都支持对Excel文件进行密码保护,设置了密码保护的Ex ...
随机推荐
- python获取软件安装列表2222
softer_installed_list ===================== 使用python编写的,获取本机软件安装列表,输出为html表格. * win7 32位环境下运行 * 使用的是 ...
- Java多线程编程中Future模式的详解<转>
Java多线程编程中,常用的多线程设计模式包括:Future模式.Master-Worker模式.Guarded Suspeionsion模式.不变模式和生产者-消费者模式等.这篇文章主要讲述Futu ...
- cv_bridge中的编码模式与实现
image_encodings.cpp文件是关于图像编码模式的源文件,其中规定了RGB的图像以及深度图的编码模式 该编码文件image_encodings.cpp所依赖的头文件图 命令空间 sens ...
- Java BEAN与EJB的区别
Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean.但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以 ...
- R语言-分组统计
分组统计 1.假定有一组成绩数据,要求根据性别进行分组统计: > score ID score1 score2 Gender1 101 11.35321 0.9 male2 ...
- MapReduce 图解流程超详细解答(1)-【map阶段】
转自:http://www.open-open.com/lib/view/open1453097241308.html 在MapReduce中,一个YARN 应用被称作一个job, MapReduc ...
- C++ 结构体和枚举
共同体 共同体(union) 是一种数据格式, 它能够存储不同的数据类型, 但只能同时存储其中的一种类型.也就是说, 结构可以同时存储int.long 和 double, 共同体只能存储int.lon ...
- (笔记)Linux服务器中判断客户端socket断开连接的方法
下面来罗列一下判断远端已经断开的方法:(转自http://blog.csdn.net/god2469/article/details/8801356) 法一: 当recv()返回值小于等于0时,soc ...
- 层层递进——宽度优先搜索(BFS)
问题引入 我们接着上次“解救小哈”的问题继续探索,不过这次是用宽度优先搜索(BFS). 注:问题来源可以点击这里 http://www.cnblogs.com/OctoptusLian/p/74296 ...
- 第三百七十四节,Django+Xadmin打造上线标准的在线教育平台—创建课程app,在models.py文件生成4张表,课程表、课程章节表、课程视频表、课程资源表
第三百七十四节,Django+Xadmin打造上线标准的在线教育平台—创建课程app,在models.py文件生成4张表,课程表.课程章节表.课程视频表.课程资源表 创建名称为app_courses的 ...