通过go的标准库exec调用cmd命令时会闪弹黑窗口,为解决此问题在windows下可以用win32 API 的 WinExec。

此问题主要出现在带UI或无控制台的程序调用cmd时。

编译go时加入参数: go build  -ldflags="-H windowsgui"

package main

import (

"errors"

"log"

)

import (

"github.com/CodyGuo/win"

)

var (

winExecError = map[uint32]string{

0: "The system is out of memory or resources.",

2: "The .exe file is invalid.",

3: "The specified file was not found.",

11: "The specified path was not found.",

}

)

func main() {

err := execRun("cmd /c start http://www.baidu.com")

if err != nil {

log.Fatal(err)

}

}

func execRun(cmd string) error {

lpCmdLine := win.StringToBytePtr(cmd)

// http://baike.baidu.com/link?url=51sQomXsIt6OlYEAV74YZ0JkHDd2GbmzXcKj_4H1R4ILXvQNf3MXIscKnAkSR93e7Fyns4iTmSatDycEbHrXzq

ret := win.WinExec(lpCmdLine, win.SW_HIDE)

if ret <= 31 {

return errors.New(winExecError[ret])

}

return nil

}

有疑问加站长微信联系(非本文作者)

c语言调用cmd隐藏黑窗口,golang 调用cmd下程序隐藏黑窗口-方法1相关推荐

  1. 让C语言写图形库时不关闭控制台,GCC编译Win图形程序不显示控制台方法

    用VS编译openCV这些有控制台又有图形显示的程序,如果想隐藏控制台,只需要使用一行代码: #pragma comment( linker, "/subsystem:/"wind ...

  2. android 拨号隐藏号码,拨号锁应用隐藏器下载-拨号锁伪装应用程序隐藏器app 2.7.1 安卓版-我游网...

    拨号锁应用隐藏器app(Dialer Lock)是一个帮你隐藏应用程序.图片/照片.视频的伪装应用程序隐藏器!通知栏信息提示,仅显示标准计算器的图标.第一次启动或处于保护状态时,不需要大头针就可以进入 ...

  3. Linux终端光标变成黑块,[转载]解决Ubuntu下搜狗输入法的黑块儿问题

    解决搜狗输入法Ubuntu 14.04下黑块状态条 搜狗的Linux输入法正式版发布之时,恰好Ubuntu 14.04 LTS也刚刚发布正式版.尝试安装搜狗的Linux输入法之后,出现了一个小小的问题 ...

  4. c++语言循环读写文件夹,C++遍历文件夹下所有文件的多种方法

    为数不多的好用的代码,遍历文件夹获取所有子文件名,"filespec"可用通配符"*?".注意如果用相对路径的话,获取所有文件名后应再调用SetInitDir将 ...

  5. win10下如何隐藏Linux盘符,Windows10系统下如何隐藏一个磁盘盘符

    一位用户反馈自己电脑中有一些不希望被访客看见的文件.照片及视频,因此就希望将它隐藏在一个只有自己知道的地方,这该如何实现呢?今天,系统城小编就要为大家分享Windows10系统下隐藏一个磁盘盘符的方法 ...

  6. 思科怎么隐藏端口_这些著名商标下的隐藏设计,你能发现吗?

    商 标 商标 · 印象 这些商标,都不是第一眼看上去那么简单. 每一天,我们都会有意无意地接触到许许多多的商标.好的商标不仅让我们对商品本身有很好的辨识度,更是一种设计师天才的展示.在一些商标中,还藏 ...

  7. powershell 调用API显示或隐藏指定程序的主窗口

    powershell 调用API显示或隐藏指定程序的主窗口 001. 前言 一同事碰上这种情况:某个单实例的程序不知为何挂在后台运行,托盘中也找不到图标(一般是有的),但可以在任务管理器中看到该程序处 ...

  8. golang生成c-shared so供c语言或者golang调用到例子

    1.golang生成c-shared类型到so 建立文件夹hello,创建main.go文件,内容如下 package mainimport "C"func main() {}// ...

  9. python 隐藏进程_python在windows下创建隐藏窗口子进程的方法

    python在windows下创建隐藏窗口子进程的方法 发布于 2015-11-08 20:56:53 | 213 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一 ...

最新文章

  1. vue ts 设置tslint提示_Typescript 在 Vue 中的实践(包含2.x、3.x)
  2. 泛函编程(19)-泛函库设计-Parallelism In Action
  3. python django并发访问挂掉,解决django高并发时数据库连接量过大的问题(实现连接池的方法)...
  4. 8、使用元数据(描述数据属性的信息)分析数据库
  5. SystemKit 系统分析工具
  6. ccs加载out文件_类加载流程、类加载机制及自定义类加载器详解
  7. JavaWeb笔记03-Servlet
  8. java 不显示控制台_命令行启动java程序不显示控制台窗口
  9. phalapi-进阶篇1(Api,Domain,和Model)
  10. Ubuntu安装搜狗拼音和金山快盘
  11. ARM开发(四)新手小白如何阅读芯片手册,裸机驱动开发步骤以及纯汇编实现点灯,汇编结合c点灯,c实现点灯
  12. 计算机一级ppt加水印,2017年计算机一级WPS辅导:WPSOffice2007中插入水印和改变背景色...
  13. CPU飙高和内存飙高等等的一般处理步骤
  14. 据说教师资格证除了当老师还有这些用途
  15. c语言void delay是什么意思,delay什么意思
  16. 聊聊directory traversal attack
  17. 【工具】笔记软件测评(简单)
  18. download 下载文件 IE兼容性处理
  19. python:实现绘制粽子(附完整源码)
  20. 修改注册表值scancode map来屏蔽键盘上的键

热门文章

  1. 微信小程序开发笔记 进阶篇③——onfire.js事件订阅和发布在微信小程序中的使用
  2. logAB = logA + logB; A,B0
  3. Java 学生信息管理系统 (mysql版)
  4. 新能源汽车充电桩检测标准介绍
  5. 第4课【STM32的时钟】时钟 时钟源 内外部时钟 高低速时钟
  6. 基于php目标奖罚管理系统
  7. vue2.0配置代理 api 开发环境、生产环境
  8. 考进中科院计算所:我的经历和体会
  9. ArcGIS API For JavaScript 拉框放大地图
  10. 树图链NFT数字藏品系统开发