首页 > 编程语言 >网页唤醒winform程序

网页唤醒winform程序

时间:2022-11-29 10:55:05浏览次数:62  
标签:RegistryKey 网页 Console regWrite Registry 注册表 VSDebug 唤醒 winform

以VSDebug.exe为例,程序路径D:\软件代码\代码调试\VSDebug\VSDebug\bin\Debug\VSDebug.exe
 1         /// <summary>
 2         /// 写入注册表以使用网页唤醒程序
 3         /// </summary>
 4         public static void GetRegistData()
 5         {
 6             //string name = "VSDebug";
 7             //搜索到注册表根目录
 8             RegistryKey hkml = Registry.ClassesRoot;
 9             //搜索到注册表根目录下的XXX文件夹。
10             RegistryKey software = hkml.OpenSubKey("VSDebug", true);
11             //RegistryKey aimdir = software.OpenSubKey("calculate", true);
12             //registData = software.GetValue(name).ToString();
13             if (software == null)
14             {
15                 //注册表还没注册。
16                 Enroll();
17             }
18             else
19             {
20                 Console.WriteLine("你已经注册了");
21                 Console.ReadLine();
22             }
23             //return registData;
24         }
25 
26         /// <summary>
27         /// 写入注册表
28         /// </summary>
29         public static void Enroll()
30         {
31             /**获取新的 Process 组件并将其与当前活动的进程关联的主模块的完整路径,包含文件名(进程名)。**/
32             string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
33             try
34             {
35                 Console.WriteLine("正在查找已经注册的程序.....");
36                 RegistryKey key = Registry.ClassesRoot;
37                 key.DeleteSubKeyTree(@"VSDebug");
38                 Console.WriteLine("已经清除注册程序.....");
39             }
40             catch (Exception e)
41             {
42                 Console.WriteLine("未找到注册的程序...");
43                 Application.DoEvents();
44             }            /*===============================================*/
45             Console.WriteLine("开始注册程序....");
46             //后面引用的是唤醒的名字。
47             RegistryKey regWrite = Registry.ClassesRoot.CreateSubKey("VSDebug");
48 
49             regWrite.SetValue("vsdebug", @"URL:D:\软件代码\代码调试\VSDebug\VSDebug\bin\Debug\VSDebug.exe");
50             regWrite.SetValue("URL Protocol", "URL Protocol");//不行可以删来看看
51             regWrite.Close();
52 
53             regWrite = Registry.ClassesRoot.CreateSubKey(@"VSDebug\shell");
54             regWrite.Close();
55             regWrite = Registry.ClassesRoot.CreateSubKey(@"VSDebug\shell\open");
56             regWrite.Close();
57             regWrite = Registry.ClassesRoot.OpenSubKey(@"VSDebug\shell\open", true);
58             RegistryKey aimdir = regWrite.CreateSubKey("command");
59             //获取程序运行地址。
60             string BaseDirectory = AppDomain.CurrentDomain.BaseDirectory;
61             string AppPath = Path.Combine(@"D:\软件代码\代码调试\VSDebug\VSDebug\bin\Debug\", "VSDebug.exe");
62 
63             aimdir.SetValue(@"", "\"" + AppPath + "\" \" %1\"");
64             regWrite.Close();
65             aimdir.Close();
66         }

因为注册表注册的时候是要管理员权限的,所以下面是获取管理员权限的一直办法。

 

 

 

 注册完之后,你就可以用唤醒的名字去浏览器输入VSDebug://,然后回车就出现一个要打开VSDebug程序的弹窗了。

 

 

 

 

原文路径:https://www.cnblogs.com/lianglingui/archive/2022/11/28/16812362.html

标签:RegistryKey,网页,Console,regWrite,Registry,注册表,VSDebug,唤醒,winform
From: https://www.cnblogs.com/ny-wmq/p/16934765.html

相关文章

  • 网页的几种定时跳转总结
    1、html网页跳转代码在网页头部<1head>…</head>之间插入以下代码<metahttp-equiv="refresh"content="0.1;url=https://www.cnblogs.com/">其中:content="0.1为打开该页......
  • python-爬取网页
    爬虫简介网络蜘蛛,网络机器人,抓取网络数据的程序其实就是用Python程序模仿人点击浏览器并访问网站,而且模仿的越逼真越好目的公司业务所需数据公司......
  • 网页唤醒winform程序
    publicstaticvoidGetRegistData(){stringname="huishuangzhu";//搜索到注册表根目录RegistryKeyhkml=Registry.ClassesRoot;......
  • Python 爬取单个网页所需要加载的URL地址和CSS、JS文件地址
    直接上代码:脱敏后自用的py采集代码,#!/usr/bin/envpython#-*-coding:utf-8-*-"""@author:Andy@file:xxx.py@time:下午05:50@desc:采集的文章数据进博客"""im......
  • 基于.net C# Socket WinForm MQTT 客户端开发
     1、什么是MQTT?MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议......
  • FFmpeg: 网页播放Venice.m3u8
     <!DOCTYPEhtml><html><head> <metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><metahttp-equiv="X-......
  • ASP.NET获取远程网页下载到本地文件
    通过ASP.NET生成静态文件的文章网上有好多文章,而本站也有不少的相关文章教程,通常ASP.NET生成静态文件的做法是使用文件流读取模板内容,之后替换模板内容中相关关键字,再生成静......
  • ASP.NET获取远程网页下载到本地文件
    通过ASP.NET生成静态文件的文章网上有好多文章,而本站也有不少的相关文章教程,通常ASP.NET生成静态文件的做法是使用文件流读取模板内容,之后替换模板内容中相关关键字,再生成静......
  • C#WinForm App自动更新(Live Update)架构
    一.基本思路    一直做WebForm开发,最近开始尝试了一下WinForm,做了一个小系统,在发布了第一个可用版本之后,顺便实现了自动更新功能。之前没有这方面的经验,也没有翻阅......
  • 跨平台网页开发框架ASP.NET Core 7性能大提升,正式支持HTTP/3
     微软跨平台网页开发框架ASP.NETCore即将迎来第7个主要版本,由于.NET7对性能的诸多改善,ASP.NETCore7也同时受益,官方解释,由于.NET7在性能部分的提升,许多方面直接或间接......