首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >以管理员身份运行实例

以管理员身份运行实例
EN

Stack Overflow用户
提问于 2015-10-13 13:30:38
回答 2查看 508关注 0票数 0

但是,在尝试创建Outlook实例时,UAC阻塞了此过程。我知道在windows 7上,UAC可以更改,但是windows 8不能完全删除。这就是为什么我需要这个进程的管理权限。

代码语言:javascript
运行
复制
        Try
            ' Get running outlook instance (if there is)
            outlook = GetObject(Nothing, OUTLOOK_CLASS)
        Catch ex As Exception
        End Try

        ' No running instance? then create new instance of outlook
        If IsNothing(outlook) = True Then
            Try
                outlook = CreateObject(OUTLOOK_CLASS)
            Catch ex As Exception
            End Try
        End If

        ' Show error message if outlook is not installed
        If IsNothing(outlook) = True Then
            MsgBox(String.Format(My.Resources.ErrorEmailUnableToSend, vbCrLf, My.Settings.EmailNHD), MsgBoxStyle.Exclamation, My.Application.Info.Title)
            Exit Try
        End If

        ' Create the email message
        email = outlook.CreateItem(mailItem)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-13 16:14:50

COM系统将拒绝在不同的安全上下文中封送2个COM对象之间的调用。确保应用程序和Outlook都在相同的上下文中运行。

票数 0
EN

Stack Overflow用户

发布于 2015-10-13 14:53:04

您需要修改Manifest文件,以便应用程序在默认情况下以管理员模式启动

清单文件是VB项目中包含有关文件分发内容的信息的文件。它还允许应用程序声明它需要运行的特权级别,以及它是否需要提升。

  1. 打开VB.NET项目并单击Project > Add New Item
  2. 将打开一个对话框。选择Application Manifest File并单击Add
  3. 打开这个清单文件并查找以下代码:

<requestedExecutionLevel level="asInvoker" uiAcces="false" />

  1. asInvoker替换为requireAdministratorhighestAvailable

<requestedExecutionLevel level="highestAvailable" uiAcces="false" />

这将使应用程序以最高可用权限运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33104027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档