关键词:windows,c++,桌面应用,单个实例,窗口置顶 目标:1.判断本程序是否已有一个实例在运行.2.若有,则激活已在运行的实例(将其窗口置顶),并退出当前运行. 1.使用semaphore来检测是否已有实例在运行(也可以用mutex,文件等其他方式) HANDLE g_hSingleSema = ::CreateSemaphore(NULL, , , _T("single_myapp_sema")); if (g_hSingleSema && ERROR_AL…
转载:http://blog.sina.com.cn/s/blog_4b44e1c00100bh69.html 进程的互斥运行:CreateMutex函数实现只运行一个程序实例 正常情况下,一个进程的运行一般是不会影响到其他正在运行的进程的.但是对于某些有特殊要求的如以独占方式使用串行口等硬件设备的程序就要求在其进程运行期间不允许其他试图使用此端口设备的程序运行的,而且此类程序通常也不允许运行同一个程序的多个实例.这就引出了进程互斥的问题. 实现进程互斥的核心思想比较简单:进程在启动时首先检查当…
static class Program { private static Mutex onlyOne; [STAThread] static void Main() { onlyOne = new Mutex(true, Process.GetCurrentProcess().ProcessName); if (onlyOne.WaitOne(0, false)) { Application.Run(new mainForm()); } else { MessageBox.Show("应用程序…
最近在写一款软件 软件是用来接收其他程序传递过来的命令行,并形成列表 大概的最终效果就像下图一样 原本为了程序美观是打算用listbox自绘列表,字和图片都绘制好了发现自己不会绘制按钮 所以最终采用了datagridview控件,这个直接就可以插入按钮,就省去了那些问题,不过界面美观就一直是遗憾了(希望有界面方面的大牛可以指导我!) 因为程序启动的方式是被其他程序启动并发送的有命令行 所以,如果有多条消息默认情况下会被打开多个程序,因此开始了如下的各种解决方法 1.命令行的读取 这个相对就比较简…
内容来自:https://codereview.stackexchange.com/questions/20871/single-instance-wpf-application 第一步:添加System.RunTime.Remoting引用 第二步:新建一个类class1.cs(按自己想法命名) using System; using System.Collections; using System.Collections.Generic; using System.ComponentMode…
https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setwindowpos https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-setforegroundwindow Brings the thread that created the specified window into the foreground and a…
JVM学习(1)——通过实例总结Java虚拟机的运行机制-转载http://www.cnblogs.com/kubixuesheng/p/5199200.html 文章转载自:http://www.cnblogs.com/kubixuesheng/p/5199200.html 特别在此声明.那位博主写的真的很好 ,感谢!! 俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习!涉及到的知识点总结如下: JVM的历史 JVM的运行流程简介 JVM的组成(基于 Java 7) JVM调优…
ylbtech-Java-Runoob-高级教程-实例-环境设置实例:4.Java 实例 – 如何查看当前 Java 运行的版本? 1.返回顶部 1. Java 实例 - 如何查看当前 Java 运行的版本?  Java 实例 我们可以使用 -version 参数来查看当前 Java 的运行版本,命令如下: java -version 以上代码实例输出结果为: java version "1.6.0_13" Java(TM) SE Runtime Environment (build…
原文网址:https://help.aliyun.com/knowledge_detail/41181.html?spm=5176.8208715.110.11.4c184ae8mlC7Yy 您可以使用本文提供的脚本在Linux实例上自动安装并运行VNC Server,实现远程图形化管理Linux服务器.目前,该脚本仅适用于CentOS实例,会在CentOS实例中安装GNOME桌面环境. VNC Server脚本 适用镜像:目前仅适用于CentOS镜像. 使用方法:以root身份执行命令 bas…
如何修改Docker已运行实例的端口映射 Docker的端口映射,往往出现在两个阶段需要处理: 1.是在docker启动前就已经确定好,哪个docker实例映射哪个端口(往往这个情况比较,需要提前做规划). 2.在docker运行过程中,需要增加端口映射的(往往这个情况比较多,凡事先运行起来,遇到问题再解决,哈哈) 那我们这一篇文章要解决已经创建的容器,如何修改端口 1)确定要修改端口的容器 dockder ps 记下容器id 2)停止运行的容器 docker stop 容器ID 3)找到容器的…
摘要 接着介绍项目中用到的一些方法,在winform中,打好包,有时并不允许运行多个客户端,要保证只有一个客户端运行.如果已经运行了,则弹出已运行的窗口,使其展示. 方法 判断是否有相同的进程 /// <summary> /// 获取当前是否具有相同进程. /// </summary> /// <returns></returns> public static Process GetRunningInstance() { Process current =…
从网上看过许多打jar包的例子,大多是将配置文件打进jar包的.经过本人一番研究,终于搞清楚了怎样将jar包的配置文件外置. 废话不说,直接上spring的pom.xml的配置文件. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mav…
原文 C#隐式运行CMD命令(隐藏命令窗口) 本文实现了C#隐式运行CMD命令的功能.下图是实例程序的主画面.在命令文本框输入DOS命令,点击"Run"按钮,在下面的文本框中输出运行结果. 下面是程序的完整代码.本程序没有使用p.StandardOutput.ReadtoEnd()和p.StandardOutput.ReadLine()方法来获得输出,因为这些方法执行后画面容易卡死.而是通过调用异步方法BeginOutputReadLine来获取输出,并在事件p.OutputDataR…
运行场景-命令行运行场景 by:授客 QQ:1033553122 1 相对路径与绝对路径 在场景中为脚本指定一个相对位置,可以是相对于当前场景目录或lr安装目录. 当你运行一个场景,场景自动从这个相对位置复制脚本到运行脚本的load gernerator上的临时目录.这允许负载生成器本地访问脚本而不是通过网络访问脚本. 指定一个相对于当前场景目录的相对路径.在脚本路径开头键入以下符号.: 例如,如果当前场景位于F:\scenarios,为了指明脚本user1位于F:\scenarios\scri…
ylbtech-Java-Runoob-高级教程-实例-时间处理:04. Java 实例 - 时间戳转换成时间 1.返回顶部 1. Java 实例 - 时间戳转换成时间  Java 实例 以下实例演示了如何使用 SimpleDateFormat 类的 format() 方法将时间戳转换成时间. 日期和时间模式(注意大小写,代表的含义是不同的): yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一年中的…
ylbtech-Java-Runoob-高级教程-实例-时间处理:03. Java 实例 - 获取年份.月份等 1.返回顶部 1. Java 实例 - 获取年份.月份等  Java 实例 以下实例演示了如何使用 Calendar 类来输出年份.月份等: Main.java 文件 import java.util.Calendar; public class Main { public static void main(String[] args) { Calendar cal = Calenda…
ylbtech-Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间 1.返回顶部 1. Java 实例 - 获取当前时间  Java 实例 以下实例演示了如何使用 Date 类及 SimpleDateFormat 类的 format(date) 方法来输出当前时间: Main.java 文件 import java.text.SimpleDateFormat; import java.util.Date; public class Main{ public…
ylbtech-Java-Runoob-高级教程-实例-时间处理:01. Java 实例 - 格式化时间(SimpleDateFormat) 1.返回顶部 1. Java 实例 - 格式化时间(SimpleDateFormat)  Java 实例 以下实例演示了如何使用 SimpleDateFormat 类的 format(date) 方法来格式化时间 Main.java 文件 import java.text.SimpleDateFormat; import java.util.Date; p…
摘要 在很多pc应用中,基本上都需要有这样的判断,保证在一个终端只运行一个winform的client.并且如果最小化了,用户再次双击桌面图标的时候,将client置顶显示. 解决方案 需要使用windows的API,可以很方便的实现这个目的. 代码如下: static class Program { ; [DllImport("User32.dll")] private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdSh…
官网以及很多网上文章的开发都是基于Android ,因为它能创建不同类型移动设备虚拟机.但个人始终觉得它太庞大,启动慢耗资源,但我们使用Flutter又离不开虚拟机. 经过实践,现在能成功的单独启动移动设备虚拟机使用VSCODE进行开发了. 1.各种安装和配置 按着官网文档设置环境变量,安装JDK,安装Android Studio , 安装 Android SDK, 安装AVM 配置Flutter 环境变量 重启电脑! 2.检查环境 运行:flutter doctor 如果No issues 那…
oracle中怎么创建多个实例? 其实很简单,怎么创建第一个实例,其他实例应该也怎么创建. 我的理解其实在linux中的oracle数据库中创建一个实例,实际上就是创建一个新的数据库,只是实例名字不同而已 需要注意的是,启动oracle的时候需要指定SID实例, 这边因为我已经启动fxdb的实例,所以这边只需再指定新创建的wlfdb的实例启动就好了 1.先指定SID实例 2.启动监听 3.然后启动oracle 我这边自己创建了两个实例.然后用PLSQL连接了一下,可以成功连上, 参考:https…
在日常的 WebUI 自动化测试脚本执行的过程中,经常会打开不同的网页,进行相应的操作,此时可能会打开很多的网页,当打开的网页过多时,无效的网页资源对运行脚本的机器造成了过多无效的资源浪费,因而在日常的网页自动化测试脚本运行的过程中要关闭过多冗余的页面,降低系统无效损耗. 此文中所述方法通过 URL 对已开窗口进行匹配,将不匹配的窗口页面关闭,一定程度减少了系统损耗,有兴趣的小主们,可进一步优化相应的程序源码,或在日常脚本编写调用此方法的过程中尽量使参数 URL 足够精确,可最大限度的减少系统无…
这个总结的很好,从前一个项目也用到这中技术 转自:http://blog.csdn.net/myarrow/article/details/9630377 1. 简介 使用ptrace向已运行进程中注入.so并执行相关函数,其中的“注入”二字的真正含义为:此.so被link到已运行进程(以下简称为:目标进程)空间中,从而.so中的函数在目标进程空间中有对应的地址,然后通过此地址便可在目标进程中进行调用. 到底是如何注入的呢? 本文实现方案为:在目标进程中,通过dlopen把需要注入的.so加载到…
目标:运行单机版hadoop http://localhost:50030mapredule监控界面 http://localhost:50070HDFS监控页面 -->安装linux系统 -->java环境 -->ssh免密码登陆-->防火墙iptables -->配置hadoop 环境准备:Centos 6.3  http://mirror.symnds.com/distributions/CentOS-vault/6.3/isos/i386/   CentOS-6.3-…
在shell当中,可以有3中方式运行脚本: 1 . ./script_name 或者source ./script_name 2 直接./script_name 3 ./script_name & 加入脚本script_name中有两个命令command1,command2,那么,当以第一种方式运行时,command1和command2都在当前shell中运行,并没有产生subshell,如下图所示: 当script_name以第2中方式运行时,当前shell会产生一个subshell,comm…
原文:DBA工具--DMV--如何知道TSQL语句已运行了多久 DBA通常想知道正在运行的语句已经执行了多久了?可以使用Sqlserver profiler来捕获语句的开始时间,和现有时间比较,但是在生产环境下通常会对性能有负面影响,所以通常不建议在非必要的前提下在生产环境使用SQL Server Profiler. 此时,可以使用DMV来查询: sys.dm_exec_requests中有一个重要字段:start_time,表示request的开始时间,一个批处理就是一个request,一个r…
升级 vs201715.6.3之后发布出现 错误 : 资产文件“项目\obj\project.assets.json”没有“.NETCoreApp,Version=v2.0”的目标.确保已运行还原,且“netcoreapp2.0”已包含在项目的 TargetFrameworks 中. 删除文件夹  C:\Program Files\dotnet\sdk\2.1.102 参考 https://github.com/dotnet/sdk/issues/1321…
React Native之TextInput的介绍与使用(富文本封装与使用实例,常用输入框封装与使用实例) TextInput组件介绍 TextInput是一个允许用户在应用中通过键盘输入文本的基本组件.本组件的属性提供了多种特性的配置,譬如自动完成.自动大小写.占位文字,以及多种不同的键盘类型(如纯数字键盘)等等.最简单的用法就是丢一个TextInput到应用里,然后订阅它的onChangeText事件来读取用户的输入. 组件的常用属性 (1)autoCapitalize:控制TextInpu…
1.运行vs时打开一个浏览器窗口,而不是在原有窗口上打开一个标签,结束调试时窗口又关闭了,特别麻烦. 在用swagger调试接口时,好不容易输入了测试数据,然而窗口关闭了,再次调试又得重新输入. 解决方法:工具——选项——调试——常规——取消勾选“启用asp.net的js调试” 2.问题2,每次调试运行时,不是在已经打开的浏览器中打开个标签,而是别打开一个浏览器窗口.…
由于工作和学习需要,经常要开一个虚拟机开测试和开发,虚拟机我选择Oracle公司的VirtualBox(用了几年了,感觉不错的一款产品),经常开着这个窗口感觉有些浪费资源,这样隐藏窗口就在需求了. 将VirtualBox里安装的虚拟机在后台运行方法(在状态栏隐藏窗口) 开始=>运行=>cmd进入DOS窗口 d: cd D:\Program Files\VirtualBox D:\Program Files\VirtualBox> .\VBoxManage.exe startvm mast…