c#使用process.start启动程序报错解决方法
Unknown error (0xffffffff)
at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start(String fileName, String arguments)
at ProcessStart.Form1.start()
[/code}
出错情景:
我们发现大多数情况下,C#调用Process.Start根本不会出错。这个错误通常出现在当你使用Local System帐号运行程序时,例如我们有一个windows服务,此服务调用Process.Start创建新进程时,新进程及其所有的子进程都是以System帐号运行的。这时调用Process.Start就有可能出现此错误,只是有可能,其实在我们那么多机器上只有一台运行windows 2003的服务器出现了这个错误。可能与系统设置有关,深层原因有待考察。
解决方法:
只要修改代码,设置ProcessStartInfo的UseShellExecute=false即可
[code]
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = exepath;
psi.UseShellExecute = false;
psi.CreateNoWindow = true;
Process.Start(psi);
相关推荐
-
C#通过创建Windows服务启动程序的方法详解
本文实例讲述了C#通过创建Windows服务启动程序的方法.分享给大家供大家参考,具体如下: 1. 新建一个Windows服务应用程序 创建项目-->Visual C# 左侧的"+"-->Windows -->Windows 服务(右侧模板)-->输入名称,确定创建项目 2. 设置Windows服务的属性(Windows服务里没有窗体,所以点击左侧设计器里空白的地方即可在右侧属性栏里看到属性) 这里属性是控制服务器是否可以停止,暂停,继续等等的操作.根据需要选择
-
c#中实现退出程序后自动重新启动程序的方法
实例如下: //触发退出程序事件 private void button1_Click(object sender, EventArgs e) { Application.ExitThread(); Thread thtmp = new Thread(new ParameterizedThreadStart(run)); object appName = Application.ExecutablePath; Thread.Sleep(1); thtmp.Start(appName); } pr
-
C#不登录电脑启动程序
阅读目录 创建系统服务 开启服务,启动程序 我们知道开机自启动程序如果在用户不登录的情况下是不启动的,但是服务类程序是可以跨过用户登录启动的,例如IIS服务,SQL服务.如果我们已经写好了桌面应用程序,又希望他开机自启动,那就需要借助系统服务在未登录的时候打开程序. 创建系统服务 在VS中创建Windows服务: 在Service的OnStart方法中,启动程序,代码如下: protected override void OnStart(string[] args) { if (!IsExist
-
c#使用process.start启动程序报错解决方法
出错信息: 复制代码 代码如下: Unknown error (0xffffffff)at System.Diagnostics.Process.StartWithShellExecuteEx(ProcessStartInfo startInfo)at System.Diagnostics.Process.Start()at System.Diagnostics.Process.Start(ProcessStartInfo startInfo)at System.Diagnostics.Proc
-
Android启动模拟器报错解决方法
Android模拟器报"Failed To Allocate memory 8"错误的解决办法 Android在启动模拟器AVD时,出现下面的异常:"Failed to allocate memory: 8",怎么办? 此错误是我们在允许AVD时,选择了默认的AVD插件所致. 解决方法:减少分配的内存大小.修改AVD的配置文件,将选项"hw.ramSize=1024"从1024改为256.如图所示:
-
Python编程源码报错解决方法总结经验分享
目录 一.前言 二.解决过程 三.总结 一.前言 最近本都是开开心心的打开电脑写一些祖传BUG 但一个报错阻碍了我写BUG的进度! 这年代还有能阻碍我写BUG的报错??? 二.解决过程 一个新项目要做token认证,所以拷了原来的项目代码 没错,高级CV工程师就是我!!! 加入了一些token配置信息后,启动项目准备调试. 启动很成功没有任何报错. 然后启动前端项目开始一天的写BUG时间! 结果登录的时候就报错了!! 把之前项目的代码拷过来还会报错? 有点奇怪,但都是小场面! 开始调试 结果一看
-
Python连接Oracle之环境配置、实例代码及报错解决方法详解
Oracle Client 安装 1.环境 日期:2019年8月1日 公司已经安装好Oracle服务端 Windows版本:Windows10专业版 系统类型:64位操作系统,基于x64的处理器 Python版本:Python 3.6.4 :: Anaconda, Inc. 2.下载网址 https://www.oracle.com/database/technologies/instant-client/downloads.html 3.解压至目录 解压后(这里放D盘) 4.配置环境变量 控制
-
IDEA安装lombok插件设置Enable Annotation Processing后编译依然报错解决方法
IDEA导入的项目中有依赖lombok的get set注解,build项目时报错:找不到get/set方法. 查找网上资料,安装lombok插件,如图: 安装好插件后,重启IDEA后还是编译报错,又在设置中勾选了Enable Annotation Processing 如下图: 完成了所有这些设置后编译还是报错找不到get/set方法 经过了很多次尝试后 (更换JDK1.8.清空项目缓存等等)发现项目中引用的lombok jar包是1.16版本的,下载了官网的最新jar包并替换后重新编译,编译通
-
详解vue-cli项目在IE浏览器打开报错解决方法
首先要知道VUE官网已表明仅支持IE8以上版本(不包括IE8),css弹性布局flex各浏览器支持如下: 假如项目用到弹性布局,则项目仅支持IE10以上版本. 另外兼容其他低版本的,请另寻它法. 网上说的本人试了都是没用的,下面是亲自试验的解决方法. 1. 问题 :ie浏览器打开vue2.0项目空白,控制台报错 vuex requires a Promise polyfill in this browser; 解决方法: 安装babel-polyfill npm install babel-po
-
详解BadTokenException报错解决方法
线上出现了如上的 crash,第一解决反应是在 show dialog 之前做个 isFinish 和 isDestroyed 判断,当我翻开代码正要解决时,我惊了,原来已经做过了如上的判断检测,示例伪代码如下: public void showDialog(Activity activity){ new OkHttp().call(new Callback(){ void onSucess(Response resp){ if(activity!=null && !activity.is
-
Mockito mock Kotlin Object类方法报错解决方法
比如我创建一个Kotlin Object类:ObjectMethod package com.baichuan.example.unit_test object ObjectMethod { fun doSomething() { println("this is ObjectMethod#doSomething") } @JvmStatic fun doSomethingWithJvmStatic() { println("this is ObjectMethod#doSo
-
Node.js安装、环境变量配置、报错解决方法
目录 1.下载Node.js 2.安装Node.js 3.验证Node.js 4.Node.js环境配置 5. Node.js测试 6. 补充 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台. Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境,基于 Google 的 V8 引擎,V8 引擎执行 Javascript 的速度非常快,性能非常好. 1.下载Node.js 下载地
-
docker实践之从新镜像启动容器报错解决
按照书中所写,输入以下命令: $ sudo docker run -d -p 80 --name static_web yorkz0909/static_web \ nginx -g "daemon off;" 来启动新的容器,容器貌似启动了,但是会报以下错误: 35b5d1f047a51373ca71190b0eed504ba0540c32427f4637b967c7b4ad7fa217 docker: Error response from daemon: invalid head
随机推荐
- Oracle 手动创建数据库步骤详解
- ajax 同步请求和异步请求的差异分析
- win10下安装两个MySQL5.6.35数据库
- java联系人管理系统简单设计
- 在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
- Python中的__new__与__init__魔术方法理解笔记
- Python字符串处理函数简明总结
- Python迭代和迭代器详解
- iOS+PHP注册登录系统 PHP部分(上)
- 关于FLASH与XML交互应用中的理解
- js屏蔽鼠标键盘(右键/Ctrl+N/Shift+F10/F11/F5刷新/退格键)
- 删除数组条目中重复的条目(可能有多个),返回值是一个仅包含被删除的重复条目的新数组。
- 微信小程序 定义全局数据、函数复用、模版等详细介绍
- 利用nginx访问日志如何记录mysql中的用户id详解
- c++指针使用形参改变实参的方法
- jquery form 加载数据示例
- 快速实现jQuery多级菜单效果
- 一个判断email合法性的函数[非正则]
- 我教你学之系统性能优化注册表修改实例(2)
- 循环队列详解及队列的顺序表示和实现