在 C# 中以编程方式禁用/注销 Excel UDF

Posted

技术标签:

【中文标题】在 C# 中以编程方式禁用/注销 Excel UDF【英文标题】:Programmatically disable/unregister Excel UDF in C# 【发布时间】:2011-10-24 04:45:02 【问题描述】:

我想知道,我们如何在 C# 中以编程方式禁用 Excel UDF?

我想也许我们可能不得不操纵注册表项来实现这一点。但是我应该在这里查看哪些子项?我不想意外破坏整个子键树结构。谁能帮帮我?

注册表项结构

HKEY_CLASSES_ROOT

 - CLSID
    - MYCLASSID
      - Implemented Categories
      - InprocServer32 **(got quite a few subkeys within, perhaps this one?)**
      - ProgId
      - Programmable

【问题讨论】:

【参考方案1】:

幸运的是,我想我自己已经找到了答案。

似乎(default) 子项 InprocServer32 的值控制 Excel UDF。如果它的值设置为 empty,UDF 将不会被自动化服务器识别,因此在单元格中显示 #Name 标记,在这种情况下,这几乎就是我所需要的。

如果我想启用 Excel UDF,只需将其值设置为 C:\WINDOWS\system32\mscoree.dll,UDF 将再次可用。

【讨论】:

以上是关于在 C# 中以编程方式禁用/注销 Excel UDF的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中以编程方式从 Excel 文件中大量导入数据到 Access

如何在 C# 的线程中以编程方式复制 Excel 文件时修复访问拒绝错误

如何在 Swift 中以编程方式启用/禁用菜单对象

如何在 iOS 中以编程方式禁用/启用睡眠模式?

在 iOS 中以编程方式禁用设置警报

是否可以在 Dynamics CRM (2013/2016) 中以编程方式禁用审核?