问题标签 [pia]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - Office PIA 和 .NET 框架版本兼容性
我在 Microsoft Office 2003 和 2007 中使用 Office Primary Interop Assemblies (PIA)。在 PIA 的下载页面上,提到需要 .NET framework 1.1。
我想知道 1.1 版的要求是否是最低要求?还是要求严格。
换句话说,如果我有 .NET 版本 2.0 或 3 或 3.5 并且没有安装 1.1,那么 PIA 是否可以正常工作,或者 PIA 是否需要 1.1 版本,而不管您拥有哪个更高版本?
office-2003 - Office 2003 与 Office 2007 的 PIA
在仅安装了 Office 2007 的系统上工作时,是否可以在 vb.net 2008 Windows 应用程序中以 Outlook 2003 为目标?我下载了 2003 PIA,但如果不先安装 Office 2003,它们将无法安装。关键是,我不想在我的开发机器上安装 Office 2003。
谢谢
c# - 更改 Microsoft.Interop.Graph.Chart .NET 中各个条形的颜色?
谁能帮助我如何在 C# 中使用 Microsoft Graph PIA 更改每个系列栏的单独颜色?
我尝试了多种方法,但没有任何效果。Series 对象中有这个 ChartFormatFill 对象,但它是只读的,不允许我更改条形的颜色。
我也尝试过录制一个宏,然后读取它的代码,但由于某种奇怪的原因,更改颜色指令没有被宏化。没有与之对应的代码。
所有图表都存在同样的问题。我无法以编程方式格式化图表系列。
我主要卡在这里。谁能帮我吗?
谢谢
问候, Muneeb
c# - 通过编程 C# 仅在 Excel 单元格中编号
我从 .NET C# 应用程序生成了一些 Excel 文件。我使用 PIA 2002。
我可以密码保护,做一个冻结窗格,改变单元格的颜色......我不能做的一件事。我想允许一个特定的范围,用户只能输入一个数字.....
我怎样才能做到这一点 ?
谢谢,
visual-studio-2010 - Visual Studio 2010:嵌入互操作类型
我在Scott Hanselmans 博客上找到了一些相关信息
有人确切知道这是什么意思吗?
这仅适用于 Office 主互操作程序集,还是我也可以使用它来嵌入我的 Redemption 库或其他 COM 库?
c# - 尝试使用 Excel 2007 进行办公自动化,但继续使用 Excel 2003
环境:
Windows XP 机器
Excel 2007 和 Excel 2003 均已安装(按此顺序,而不是按时间顺序)。
C# 3.5
问题:
当我使用 PIA 进行一些 Office 自动化时,我使用以下代码行:
PIA 的版本专门将其称为 Excel 12。
C:\WINDOWS\assembly\GAC\Microsoft.Office.Interop.Excel\12.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll
但是:
因此,当我尝试打开扩展名为 .xlsx 的文件时,它会警告我文件转换中丢失的功能,并使用 excel 2003 打开它。我很确定这与安装顺序为 2007 -> 2003 有关,但我无法在我的机器 b/c 上卸载 2003,我们的网络服务器上有一些办公自动化,用于使用 excel 2003 的不相关项目。
我看过 Policy.11.0.Microsoft.Office.Interop.Excel.config 的东西,但它说
所以,我很茫然。为什么我不能告诉 COM Interop 使用哪个版本的 Excel?
c# - 用韩语删除 CustomProperty 的 Excel 问题
在韩国操作系统上,尝试调用 CustomProperty 对象上的 Delete() 方法时出现以下异常。我正在使用 Excel 的 Office2003 PIA 在 C# 中执行此操作。这个 HRESULT 对我没有多大帮助,谁能帮忙弄清楚这里发生了什么?
c# - 通过 PIA 自动化 Excel 使 VBA 变得笨拙
我完全不知道如何开始诊断这个,只是想知道是否有人有任何建议。我通过从 C# 应用程序调用一些宏来生成 Excel 电子表格,并且在生成过程中它以某种方式中断。我有一个 VBA 类,其中包含我的所有日志记录/错误处理逻辑,我使用单例访问器对其进行实例化,如下所示:
上面的代码在我生成电子表格之前运行良好,但之后失败。问题似乎是以下行;
我以前从未见过失败。如果我向此处分配的变量添加监视,则类型显示为 csys_ApplicationFramework/wksFoo,其中 wksFoo 是同一工作簿中的随机工作表。似乎正在发生的事情是,虽然变量是正确的类型,但不是用我的框架类的新实例填充该插槽,而是使其指向现有工作表,相当于
正如人们所预料的那样,这是一个编译器错误。更奇怪的是,如果我在有问题的行上放一个断点,编辑该行,然后继续执行,它就可以工作。例如,我删除单词'New' 移出线,移回,重新输入'New' 并恢复执行。这以某种方式“修复”了工作簿,并且从此以后它可以愉快地工作,我的监视窗口中的变量类型显示为 csys_ApplicationFramework/csys_ApplicationFramework,正如我所期望的那样。
这意味着通过 PIA 操作工作簿会以某种方式暂时破坏它。我在 PIA 中所做的只是打开工作簿,使用 Excel.Application.Run() 调用几个宏,然后再次保存。如果有人认为相关,我可以发布更多细节。
我不知道 VBA 如何在幕后创建对象或如何调试它。我也不知道代码的执行方式如何在代码本身不改变的情况下改变。
如前所述,坦率地说,VBA 对我来说有点笨拙……有什么想法吗?
.net - 为什么 Outlook 编程界面给出的附件大小总是错误的?
尝试在 C# 中使用 Outlook 互操作时,我注意到了一件奇怪的事情。
- 首先,我使用Attachment.Size 属性获取附件的大小。
- 其次,我使用Attachment.SaveAsFile 方法将附件保存到文件中。
比较保存文件的实际大小和 Outlook 给出的大小,我注意到实际保存的文件总是比Attachment.Size
. 保存的文件似乎是有效的并且没有被截断。
示例结果 http://www.freeimagehosting.net/uploads/224d342eba.png
那么,它有什么问题呢?有错误Attachment.Size
吗?或者它可能会提供附件大小以外的东西?
我认为它将 CR 转换为 CRLF,包括二进制文件,这可以解释开销,但是一些附加文件是带有 CRLF 的原始文本格式,所以这个假设是错误的。
第一次编辑:
它不是 Base64 编码,因为 Base64 编码将是:
- 4/3 的比例。就我而言,我的比率与 1.0 相差不远。
- 成比例的。这里不是这样:一个 1.9 MB 的文件有 181 字节的开销,而一个 27 KB 的文件有 3 KB 的开销。
现在,看看 89 到 3658 字节范围内的几乎随机开销,我同意它可能是一些奇怪的标头。
第二次编辑:
我在一组更大的文件上对此进行了测试。我注意到的是 Outlook 给出的实际文件大小和大小之间的差异:
- 对于 .msg 附件,始终为零。但是 .msg 附件是一种非常特殊的情况,并且具有非常奇怪的行为。
- 受文件扩展名和文件名长度的影响。
- 对于相同的文件扩展名,在大多数情况下,但并非总是如此,文件名长度越大则越大。
这是一个例子:
替代文字 http://www.freeimagehosting.net/uploads/a767d3cacf.png
恕我直言,Outlook 对文件名做了一些处理,某种非常奇怪的编码,可能是基于文件名的唯一标识符的生成。这意味着:
- 当文件更大时,唯一标识符也更大。
- 当发生冲突时,唯一标识符会发生一些事情,使其变得非常大:第 18 行与第 11 行具有相同的文件名,但文件不同;另一方面,第 12、13 和 14 行具有相同的文件。
.net - 在哪里可以找到 MS ActiveX 数据对象 (ADOR) 主互操作程序集 (PIA)?
我正在尝试为我的一个引用 Microsoft ActiveX 数据对象 (MDAC 2.8) 的项目生成主互操作程序集。通过 Visual Studio 中的“引用”对话框添加此库会将 Interop.ADOR.dll 文件添加到解决方案的 bin 目录中。
但是,当我运行 tlbimp.exe 时出现错误:
我在网上找不到任何东西,这很奇怪。有任何想法吗?