由于太难以提及的原因,我希望能够在Wine下进行MS Office Automation。但是,下面的节点程序无法从WinWord实例获取文档对象,尽管WinWord已经在wine下运行该文档。
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Office.Interop.Word;
// This code is lifted from http://www.dotnetperls.com/word
namespace WordTest
{
class Program
{
static void Main(string[] args)
{
if (args.Length < 1)
{
Console.WriteLine("Usage WordTest word.doc");
return;
}
String docname = args[0];
try
{
Application application = new Application();
Document document = application.Documents.Open(docname);
// Loop through all words in the document. (We get an exception here)
int count = document.Words.Count;
for (int i = 1; i <= count; i++)
{
// Write the word.
string text = document.Words[i].Text;
Console.WriteLine("Word {0} = {1}", i, text);
}
// Close word.
application.Quit();
}
catch (Exception e)
{
Console.WriteLine("Exception {0}\nStacktrace\n{1}", e.Message, e.StackTrace);
}
}
}
}
我尝试使用这些东西(不是上面的简单代码)无法使用OpenOffice或Apache POI等完成。
有什么想法吗?
这可能是相关的:
这个应用程序的.NET版本是2
WinWord版本是2007年
葡萄酒的版本是葡萄酒-1.5.6
linux的发布是openSUSE 12.2
Linux版本3.4.47-2.38-桌面#1 SMP预览5月31日星期五20:17:40 UTC 2013(3961086)x86_64 x86_64 x86_64 GNU / Linux
Cpu Intel(R)Core(TM)2 Duo CPU T9400 @ 2.53GHz