【发布时间】:2010-07-27 15:14:19
【问题描述】:
基本上我有一个用 C# 编写的程序,它使用 excel 应用程序。
在运行我的程序时,如果用户尝试打开任何 excel 文件,该文件将在我的程序创建的 excel 实例上打开。
我想这与 excel 打开现有实例有关 “Excel.exe”。
当我的程序退出时它会导致僵尸excel进程。
我想做的是隐藏我的 excel 实例不被用户使用。 (或任何其他解决方案)
我试图用谷歌搜索一些东西,但到目前为止什么都没有。
我的代码如下所示。
foreach (string strFileName in this.m_ListRequestFileNames)
{
object misVal = System.Reflection.Missing.Value;
try
{
if (Common.IsOpened(strFileName) == true)
{
this.m_ParentWnd.Log(strFileName + " is in use by another program." + Environment.NewLine);
continue;
}
this.m_xlWBook = this.m_xlApp.Workbooks.Open(strFileName, 3, true, misVal, misVal, misVal, misVal, misVal, misVal, false, misVal, misVal, misVal, misVal, misVal);
if (Make(ref m_xlWBook, m_strDstPath, ref m_ListIgnoreSheetNames) != true)
{
this.m_ParentWnd.Log("-!- Error while making " + m_xlWBook.Name + " into a csv file" + Environment.NewLine);
continue;
}
this.m_ParentWnd.Log("Completed " + m_xlWBook.Name + Environment.NewLine);
}
catch (System.Exception e)
{
m_ParentWnd.Log(e.ToString());
}
this.m_xlWBook.Close(false, null, null);
}
this.m_xlApp.Quit();
Common.releaseObject(this.m_xlApp);
【问题讨论】:
-
这是在服务器上运行的网络应用还是桌面客户端应用?