Rms操作设置office系统文档权限
生活随笔
收集整理的這篇文章主要介紹了
Rms操作设置office系统文档权限
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
參考文檔:
http://www.docin.com/p-983593764.html
http://blog.csdn.net/cslp517/article/details/72801942
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Common.Bll
{
public class RmsWordHelper : IDisposable
{
/// <summary>
/// Word 應用對象
/// </summary>
private Microsoft.Office.Interop.Word.ApplicationClass appWord;
/// <summary>
/// 文件路徑
/// </summary>
private string fliePath;
public string FliePath
{
get { return this.fliePath; }
set { this.fliePath = value; }
}
/// <summary>
/// 用戶ID
/// </summary>
private string userId;
public string UserId
{
get { return this.userId; }
set { this.userId = value; }
}
/// <summary>
/// 空值
/// </summary>
private Object MISSINGVALUE = System.Reflection.Missing.Value;
/// <summary>
/// 錯誤消息
/// </summary>
public string ErrMessage = string.Empty;
/// <summary>
/// RMS授權后的文件名稱
/// </summary>
/// <returns></returns>
private string GetRmsFileName()
{
string filename = string.Empty;
filename = System.IO.Path.Combine(System.IO.Path.GetDirectoryName(this.fliePath), System.IO.Path.GetFileNameWithoutExtension(this.fliePath) + "RMS" + System.IO.Path.GetExtension(this.fliePath));
return filename;
}
/// <summary>
/// 操作保存
/// </summary>
/// <returns></returns>
public bool Save()
{
this.ErrMessage = string.Empty;
bool result = false;
object filename_src = this.fliePath;
object filename_dst = this.GetRmsFileName();
try
{
if (this.appWord == null)
{
this.appWord = new Microsoft.Office.Interop.Word.ApplicationClass();
}
var doc = this.appWord.Documents.Open(ref filename_src, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE);
try
{
doc.Activate();
doc.Permission.Enabled = true;
doc.Permission.Add(this.UserId, Microsoft.Office.Core.MsoPermission.msoPermissionRead, MISSINGVALUE);
doc.Permission.Add(this.UserId, Microsoft.Office.Core.MsoPermission.msoPermissionPrint, MISSINGVALUE);
doc.SaveAs2(ref filename_dst, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE);
result = true;
}
finally
{
doc.Close(ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE);
}
}
catch (Exception ex)
{
this.ErrMessage = ex.Message;
}
return result;
}
public void Dispose()
{
if (this.appWord != null)
{
this.appWord.Quit(ref MISSINGVALUE, ref MISSINGVALUE, ref MISSINGVALUE);
this.appWord = null;
GC.Collect();
}
}
}
}
總結
以上是生活随笔為你收集整理的Rms操作设置office系统文档权限的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TF-IDF理解及其Java实现
- 下一篇: ecCodes 学习 利用ecCode