gpt4 book ai didi

c# - 使用 OpenOffice 进行邮件合并

转载 作者:行者123 更新时间:2023-11-30 15:49:49 26 4
gpt4 key购买 nike

我目前正在尝试使用 C# 和 OpenOffice 进行邮件合并。

我的数据库中有一个 destanatary 列表。我希望这成为可能:

  • 用户编辑 OO 文档,将诸如“名称”“地址”“城市”之类的字段和一些标准文本(例如:“你好名字你好吗?",
  • 修改样式等,
  • 然后转到我的申请,点击“发送给数据库中的所有用户”。

然后程序循环遍历所有用户,并为每个用户用 DB 数据替换 OO 文档中的邮件合并字段,通过邮件/打印/任何方式发送。

问题: 在 C# 中,我找不到任何方法用 DB 数据替换 OO 文档中的邮件合并字段,因为我找不到处理这些字段的属性/方法。

请帮我靠年终奖就靠它了! (原文如此)

我发现的唯一指示是我似乎需要 UNO 库,但它似乎在 C# 中不存在。

最佳答案

有关将 C# 与 OpenOffice 结合使用的一般帮助:

http://www.oooforum.org/forum/viewtopic.phtml?p=151606 http://opendocument4all.com/content/view/68/47/

对于 OO 3.0,您需要引用 cli_*.dll 库,它们会在安装 OO 时放入 GAC。

初始化面向对象连接的示例代码:

 private static XMultiServiceFactory _multiServiceFactory;
private static XComponentLoader _componentLoader;
private static XFileIdentifierConverter _urlConverter;

private static void Initialize()
{
XComponentContext localContext = uno.util.Bootstrap.bootstrap();
_multiServiceFactory = (XMultiServiceFactory)localContext.getServiceManager();
_componentLoader = (XComponentLoader)_multiServiceFactory.createInstance("com.sun.star.frame.Desktop");
_urlConverter = (XFileIdentifierConverter)_multiServiceFactory.createInstance("com.sun.star.ucb.FileContentProvider");
}

加载文档:

string url = _urlConverter.getFileURLFromSystemPath(Path.GetPathRoot(path), path);
XComponent xComponent = _componentLoader.loadComponentFromURL(url, "_blank", 0, new PropertyValue[] { MakePropertyValue("Hidden", new uno.Any(true))});
XTextDocument doc = (XTextDocument)xComponent;

在哪里

 private static PropertyValue MakePropertyValue(string cName, Any uValue)
{
PropertyValue oPropertyValue = new PropertyValue();
if (!string.IsNullOrEmpty(cName))
oPropertyValue.Name = cName;
oPropertyValue.Value = uValue;
return oPropertyValue;
}

在 XTextDocument here 阅读更多关于您可以做什么的信息.

另见 OpenOffice.org Developer's guide .

更新。一个更有用的链接:
http://blog.nkadesign.com/2008/net-working-with-openoffice-3/

希望对你有帮助

关于c# - 使用 OpenOffice 进行邮件合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1166057/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com