问题描述: 我们在程序开发当中,经常会遇到某些子程序需要实现一天只启动一次的功能,该功能实现的方法有很多种,其原理都是通过记录标记为来实现的.本次要分享的也是利用程序标记为来实现的,而且只需要使用一个标记为:上次启动时间,并将这个标记为保存在注册表中! 实现原理: 1. 子程序第一次启动的时候,在注册表中创建一个新的键值,并且保存当前系统时间: (此部分代码省略) 2. 通过定时器去监测是否启动子程序,并对当前时间与当天的最后时间(23:59:59)进行比较:如果当前时间小于当天最后时间,不执行…
前言:在我们做的软件中,当点击图标运行时,正常的需求是只需要启动一个软件的实例,这是非常重要的一点,不然就显得我们的软件非常的山寨,笔者在工作中经常遇到同事没有注意这一点,看是不重要,实则非常的重要,这里在C#中进行实现. 注:代码需写在Program.cs中,具体代码如下: static class Program { /// <summary> /// 该函数设置由不同线程产生的窗口的显示状态. /// </summary> /// <param name="h…
[Android UI设计与开发]第05期:引导界面(五)实现应用程序只启动一次引导界面 jingqing 发表于 2013-7-11 14:42:02 浏览(229501) 这篇文章算是对整个引导界面开发专题的一个终结了吧,个人觉得大部分的引导界面基本上都是千篇一律的,只要熟练掌握了一个,基本上也就没什么好说的了,要是在今后的开发中遇到了更好玩,更有趣的引导界面,博主也会在这里及时的跟大家分享,今天的内容主要是教大家的应用程序只有在第一次启动的时候显示引导界面,以后在启动程序的时候就不再显示了…
大部分的引导界面基本上都是千篇一律的,只要熟练掌握了一个,基本上也就没什么好说的了,要想实现应用程序只启动一次引导界面这样的效果,只要使用SharedPreferences类,就会让程序变的非常简单,下面来详细介绍一下这个类的使用方法 1.SharedPreferences的详细介绍和用法 其实在 20.游戏开发基础(游戏数据存储)中已经有过介绍了,为了文章的完整还是再介绍一遍. 做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库…
如何让程序(如java Hello)只启动一次? 摘自http://bbs.csdn.net/topics/50488704 总结一下,关于让Java程序只运行一个实例的问题,其实质是JVM之间通信的问题.楼上的单例模式显然是没有作用的. 应该使用文件锁来锁定一个代表程序运行实例的文件,当程序启动时,首先锁定该文件,后继启动的实例一旦发现该文件已被锁定则提示出错信息.(为什么不直接使用文件而是使用文件锁来判断呢?即:在程序启动的时候生成一个文件而在程序退出时删除这个文件,只要判断该文件的存在与否…
问题描述: 我们开发过程中可能会经常遇到,只启动一个程序实例.即一个程序启动之后,如果再次执行该程序,将会恢复之前打开的程序,而不是打开一个新的程序. 实现原理:利用FindWindow/FindWindowEx查找指定窗口的句柄,如果找到,则当前程序已经执行,只需重新显示到最前面即可:如果没有找到,表示程序没有运行, 继续执行程序初始化. 程序示例: BOOL SingletonInstance() { HWND hPreWnd; if ( hPreWnd = ::FindWindow(NUL…
目录 <linux文件锁flock> <NIO文件锁FileLock> <java程序怎么在一个电脑上只启动一次,只开一个进程> 方案1: 单进程程序可以用端口绑定.程序启动的时候可以尝试看该端口是否已经被占用,如果占用则程序已经启动. 方案2:你可以在java程序中创建一个隐藏文件,程序退出的时候删除这个文件.这样在程序启动的时候,你判断是否存在这个文件,如果存在说明已经启动. import java.io.File; import java.io.IOExcepti…
我前面的三篇文章是从网上找到的(如下链接),都说是实现程序只启动一次的功能. C#防止程序多次运行C#检测程序重复运行的函数(可以在多用户登录情况下检测)C# 实现程序只启动一次(多次运行激活第一个实例,使其获得焦点,并在最前端显示) C# 实现程序只启动一次(实现程序自重启) 如果你已经读了前面的几篇文章,我相信你自己或许已经有答案了,我自己用下来感觉还是有一些区别的,现在把我总结的记录下来: 一:使用System.Threading.Mutex类 using (System.Threadin…
只启动一个exe方法: using System; using System.Collections.Generic; using System.Runtime.InteropServices; using System.Windows.Forms; namespace StringToImage { static class Program { [DllImport("user32.dll")] public static extern IntPtr FindWindow(Strin…
VS中里面多个WEB项目如何只启动一个? 每次启动时,右下角都会出现一堆的 网站有10来个.即使设置了默认启动项目, 但每次按F5启动,或者哪怕是在项目上右键启动新实例 右下角都会出现这一堆的站点 有网友提出如下意见: vs 只要启动调试,他不管你的这个web项目是否是启动项,只要设置了使用默认web服务器调试,或者使用vs开发服务器调试的,他都会给你调试,不管3721的.统统给你启动个webdev.webserver来的.叫做本地运行的ASP.NET应用程序. 我的蠢办法是,把WEB项目设置为…
独立观察员 2019 年 6 月 12 日 有的时候我们程序需要启动外部程序来配合实现某些功能,比如启动一个 Cef 相关程序来承载网页.那么如果那个外部程序并没有实现单例启动,我们程序去启动它的时候就有可能启动了多个,这样轻则造成系统卡顿,重则引发 Bug.这肯定是我们不想看到的,所以本文来探讨如何在启动某个外部程序时,始终只会启动一个. 先来看看外部程序(其实不用关心),其中有一个这样的类: public class BoundObject { [DllImport("user32.dll&…
怎么让我们自己开发的Android程序设为默认启动呢?其实很简单,只要在AndroidManifest.xml文件中配置一下首次启动的那个Activity即要. <activity            android:name="com.example.phone.MainActivity"            android:label="@string/app_name" >            <intent-filter>   …
很多时候,我们需要让程序支持命令行启动,这个时候则需要一个命令行解析器,由于.Net BCL并没有内置命令行解析库,因此需要我们自己实现一个.对于简单的参数来说,自己写一个字符串比较函数来分析args参数也未尝不可.但是如果需要配置的参数较多的话,就得好好设计一下这个解析器了. 秉着不重复造轮子的原则,我在网上搜了一下,在Stackoverflow上发现有人问了同样的问题:Best way to parse command line arguments in C#?.简单的看了一下,整理出了其中…
Linux上java程序的jar包启动通用脚本如下: #! /bin/sh export LANG="zh_CN.GBK" SERVICE_NAME=` .sh` SCRIPT_NAME=`` EXEC_JAR_NAME=$SVC_PGW_BIN_PATH/job-pbc-bat/job-pbc-bat-test-.jar JAVA_CMD="java -Djsvc-pgw-name="${SERVICE_NAME}" -Xmx1024m -Xms512m…
最近一段时间在使用Kindle商城时总是会出现“应用程序出错,无法启动选定的应用程序,请重试.” 对此我花了大约一小时的时间进行测试验证并与客服人员沟通,将过程记录如下,供出现同样问题的朋友们参考. 冒烟测试的流程: Kindle 型号:paperwhite3  固件版本 5.9.7 操作流程:唤醒首页面->点击商城->浏览分类->小说->选择<围城>进入到商品详情页面->>点击返回,页面卡顿片刻后系统提示“应用程序错误”. 多次测验均可稳定复现. 初步怀疑…
对于使.NET程序随系统开机启动,最常用的可能就是向在注册表中注册开机启动项,或是建立Windows服务,使程序随系统启动而启动.这里以WinForm程序为例,测试Demo分享,同时附上对于程序托盘的简单操作,仿Foxmail的托盘显示效果,好的产品都是细细打磨出来的呀! 1.WinForm程序添加注册表和移除注册表(1).创建一个WinForm程序,界面如下(很简单):(2).主要实现代码:(注册表开机启动位置:SOFTWARE\Microsoft\Windows\CurrentVersion…
把写内容过程中经常用到的内容做个收藏,如下的内容是关于C#只启动一个进程的内容.public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { Process currentProcess = Process.GetCurrentProcess(); foreach (Process item in Process.GetProcessesByName(current…
原文 win10应用程序添加到开机启动项的两种解决办法 在windows10系统中,如果想让应用程序在开机之后自动运行起来,可以怎么做呢? 方法一: 1.首先创建应用程序的快捷方式 找到自己想加入开机启动项的应用程序,本文以iexplore为例,在iexplore应用程序点击右键->发送到->桌面快捷方式 (也可以直接用鼠标拖动到桌面) 2.然后在桌面上就有了想加入开机启动项的应用程序快捷方式,到第6步时使用 3.打开文件资源管理器,进入c:盘 4.如果没有显示隐藏的文件夹,则把“显示隐藏文件…
electron限制只启动一个应用 // ========================================================== // 限制只可以打开一个应用,2.x的文档 // const isSecondInstance = app.makeSingleInstance((commandLine, workingDirectory) => { // // Someone tried to run a second instance, we should focu…
https://blog.csdn.net/saint13/article/details/454615 Form的onActivate事件 2005年08月15日 01:08:00 阅读数:3406 一个只有一个Form的应用程序,在其被最小化,然后再最大化时,Form的onActivate事件所定义的动作不会被触发. 一个有多个Form的应用程序,在不同form间切换的时候,会触发form的onActivate事件. 只有一个form 的程序, onactivate 只触发一次.…
static class Program    {        private const int WS_SHOWNORMAL = 1;        [DllImport("User32.dll")]        private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow);        [DllImport("User32.dll")]        private static…
原文地址 :http://www.cnblogs.com/emanlee/archive/2009/08/31/1557379.html using System; using System.Threading; using System.Collections.Generic; using System.Windows.Forms; namespace ArresterSerialPort { static class Program { /// <summary> /// The main…
程序运行过程中,不能有多个实例运行,并且需要程序自己可以重启(重新运行),所以代码如果下代码: static void Main() { bool createNew; using (System.Threading.Mutex m = new System.Threading.Mutex(true, Application.ProductName, out createNew)) { if (createNew) { Application.EnableVisualStyles(); Appl…
方案1: 单进程程序可以用端口绑定.程序启动的时候可以尝试看该端口是否已经被占用,如果占用则程序已经启动. 方案2:你可以在java程序中创建一个隐藏文件,程序退出的时候删除这个文件.这样在程序启动的时候,你判断是否存在这个文件,如果存在说明已经启动. import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; import java.nio.channels.FileLock; /** *…
问题来源:http://bbs.csdn.net/topics/390998279?page=1#post-398983061 // Only_once.cpp : 定义控制台应用程序的入口点. // //请参考<<windows核心编程>> #include "StdAfx.h" #include <iostream> #include <windows.h> using namespace std; #define MUTEX_NAM…
防止程序运行多个实例的方法有多种,如:通过使用互斥量和进程名等.而我想要实现的是:在程序运行多个实例时激活的是第一个实例,使其获得焦点,并在前端显示. 主要用到两个API 函数: ShowWindowAsync 该函数设置由不同线程产生的窗口的显示状态. SetForegroundWindow 该函数将创建指定窗口的线程设置到前台,并且激活该窗口.键盘输入转向该窗口,并为用户改各种可视的记号.系统给创建前台窗口的线程分配的权限稍高于其他线程. 代码如下:引用以下命名空间: using Syste…
private static void KillProcess() { Process process1 = Process.GetCurrentProcess(); //获得当前计算机系统内某个进程并关闭: System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName(process1.ProcessName); foreach (System.Diagnostics.Process p…
工作上经常会遇到"程序只能启动一个实例"这样的需求. 我想,这样的需求应该很普遍,所以没打算去动脑筋,去找谷歌问下就得了,用下来发现,不是这里不爽就是那里不行. 先说下我详细的几点需求(假设程序名为"A.exe") 1.程序只能同时打开一个实例. 2.在A.exe已经启动的情况下,双击A.exe,则把已经启动的A.exe激活,并呈现到最前. 3.复制A.exe,命名为B.exe,在A.exe已经启动的情况下,双击B.exe,则把A.exe激活,并呈现到最前. 好,现…
转载请注明来源:cuixiaolei的技术博客 我们先来看看程序映像. 通常,Cortex-M0处理器的程序映像时从地址0x00000000处开始的. 程序映像开始处时向量表,其中包含了异常的其实地址(向量),每个中断向量的地址都等于"异常号*4",比如,外部IRQ0的异常类型为16,因此其向量地址为16*4=0x40.这些向量的最低位都被置为1,以表示使用thumb指令.向量表的大小由实际使用的中断个数决定. 向量表中包含了MSP的初始值,它存储在向量表的头四个字节. 复位时,处理器…
转载请标明出处: http://blog.csdn.net/xmxkf/article/details/51351188 本文出自:[openXu的博客] iOS程序启动流程 完整启动流程 UIApplicationMain方法 UIApplication AppDelegate代理生命周期回调 UIWindow UIViewController控制器 控制器View的加载 iOS工程常见文件 xxx-Infoplist文件 InfoPliststrings xxx-Prefixpch Defa…