CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他开发语言 >  Office开发/ VBA

如何屏蔽掉OFFICE里面的“另存为…”功能?

楼主lifus(火冰)2006-02-16 11:35:52 在 其他开发语言 / Office开发/ VBA 提问

欲实现如下功能:  
   
                  将一个WORD文档存储到数据库中,在开发的软件上调用OFFICE打开存储在数据库当中的WORD文档,在OFFICE当中点击“保存”时,自动存储到数据库当中。为了数据的安全性要将OFFICE当中的“另存为…”功能屏蔽掉,禁止将打开的WORD文档另存到本地机上。  
   
          本人实现起来有两个难题:  
                  1>如何在实现在OFFICE当中点击“保存”时,自动存储到数据库当中;  
                  2>如何编程屏蔽掉OFFICE当中的“另存为…”功能。  
   
          在功能实现的时候,不可以为此WORD文档进行宏编程,因为此WORD文档在脱离了此数据库以后,是不能再具有此功能的。  
   
           
   
          望大家能帮兄弟一把,急等用!!在此谢过了!! 问题点数:100、回复次数:16Top

1 楼zhongjinting()回复于 2006-02-26 22:53:09 得分 0

因为不清楚你具体的开发环境,所以提供一些思路供你参考。  
   
  如果你是用其它高级语言编程,可以在建立Word对象时,屏蔽掉另存为功能,或者  
   
  单独为这个word文档建立一个新的模版,在模版中屏蔽掉另存为功能。在Office97   and   Office2000中可以覆盖Word的某些内置功能,高版本的没有试过。Top

2 楼vansoft(Vansoft Workroom)回复于 2006-02-27 14:42:41 得分 0

重寫他的保存過程。Top

3 楼lifus(火冰)回复于 2006-03-03 16:04:24 得分 0

我应该如何在PB或DotNET中重写它的保存过程呢?谢谢!Top

4 楼FEEDOMING(小不点)回复于 2006-03-10 10:01:03 得分 0

to   lifus,   请描述你的开发环境吧,在什么环境下需要实现你所说的内容?  
  Top

5 楼stoneo9o3(stone)回复于 2006-03-10 23:15:40 得分 0

在WORD   VBA中另存为是调用哪个东东呢?急啊Top

6 楼sufeiya(苏菲娅)回复于 2006-03-10 23:52:31 得分 0

录一个宏,就出来了,Top

7 楼h8349c()回复于 2006-03-13 10:03:26 得分 0

这个问题问Microsoft比较合适Top

8 楼stoneg(IUnknown)回复于 2006-03-14 13:35:45 得分 10

如果是word,无法简单实现,你屏蔽了另存为...,我还能新建个doc,copy-paste过去呢  
  放弃或是想别的办法Top

9 楼lifus(火冰)回复于 2006-04-10 12:57:51 得分 0

最主要的问题是我如何在程序当中捕获到WORD的保存事件,要让新存的文件保存到数据库当中去。谢谢Top

10 楼hhjjhjhj(大头)(http://office.9zp.com)回复于 2006-04-10 15:57:44 得分 0

WORD菜单可以各文档自定义  
  http://office.9zp.com/viewFile.asp?Boardid=9&ID=4894Top

11 楼yn_alive()回复于 2006-04-21 14:19:38 得分 30

可以新建一个word模版,在模版中打开vba新建一个模块,模块中重写word的save方法。如:  
  sub   FileSaveAs()  
  end   sub  
  然后在你原来的word文档中执行:工具-〉模版和加载项。在文档模版中选用刚才新建的模版。这样在另存文档时,会调用你写的FileSaveAs方法。这样就屏蔽了word的另存动作。Top

12 楼jenycheng(听,雪的声音)回复于 2006-04-25 16:05:10 得分 60

Sub   DisableMenu()  
   
  Dim   cbp   As   CommandBarPopup  
  Dim   cb   As   CommandBar  
  Dim   cbc   As   CommandBarControl  
   
  Set   cbp   =   ActiveDocument.CommandBars("Menu   bar").Controls("文件(&F)")  
  Set   cb   =   cbp.CommandBar    
   
  '   禁用   另存  
  Set   cbc   =   cb.Controls("另存为(&A)")  
  cbc.Enabled   =   False  
   
  End   SubTop

13 楼jenycheng(听,雪的声音)回复于 2006-04-25 16:06:56 得分 0

这样   禁用后    
   
  除非你手动   写代码启用,   否则   永远不能用另存了Top

14 楼jenycheng(听,雪的声音)回复于 2006-04-25 16:07:58 得分 0

上面的是VBA   的代码  
  宏代码Top

15 楼lifus(火冰)回复于 2006-04-26 14:17:23 得分 0

谢谢jenycheng(黄泉教主),我试一下。Top

16 楼lifus(火冰)回复于 2006-05-21 00:39:40 得分 0

我的开发环境是Visual   Studio.NET(C#)2005,我如何在程序当中控制呢?Top

相关问题

  • 如保屏蔽"另存为"和"查看/源文件"功能
  • 如何屏蔽浏览器中的“另存为”、“打印”、“复制”等功能??
  • 如何屏蔽IE的另存为菜单项?
  • 怎样屏蔽ie中的“另存为”按钮?
  • 怎样屏蔽功能键?
  • win2000屏蔽功能键
  • 怎样在mainframe中处理onfilesave(并屏蔽那个另存为对话筐)?
  • 怎样屏蔽掉word文档的"另存为"菜单,答对了有赏呀。
  • 有没有办法让word里面的另存为..选项屏蔽掉?
  • 用delphi打开pdf文档时,怎样才能屏蔽“另存副本”按钮?

关键词

  • 屏蔽
  • 模版
  • 文档
  • word
  • 数据库
  • office
  • vba
  • 另存
  • 功能
  • 保存

得分解答快速导航

  • 帖主:lifus
  • stoneg
  • yn_alive
  • jenycheng

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo