获取Java路径

INT GetJavaHomePathFromRegedit(wchar_t* retwstr) {wchar_t str[MAX_PATH + 1];INT flag = GetStrFromRegedit(L"SOFTWARE\\JavaSoft\\Java Runtime Environment\\", L"CurrentVersion", str);wprintf(L"%ws\n", str);WCHAR keyjp[MAX_PATH + 1] = L"\0";swprintf_s(keyjp, MAX_PATH, L"%ws%ws", L"SOFTWARE\\JavaSoft\\Java Runtime Environment\\", str);wprintf(L"%ws\n", keyjp);flag = GetStrFromRegedit(keyjp, L"JavaHome", str);wprintf(L"%ws\n", str);swprintf_s(retwstr, MAX_PATH, L"%ws%ws", str, L"\\bin\\java.exe");return TRUE;
}INT GetStrFromRegedit(const wchar_t* hkey, const wchar_t* childkey, wchar_t* str) {HKEY retKey;BYTE retKeyVal[MAX_PATH + 1] = { 0 };DWORD nSize = MAX_PATH + 1;LONG ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, hkey, 0, KEY_QUERY_VALUE | KEY_READ, &retKey);//记得加KEY_READ来读取多级子键if (ret != ERROR_SUCCESS) {return -1;}ret = RegQueryValueEx(retKey, childkey, NULL, NULL, (LPBYTE)retKeyVal, &nSize);RegCloseKey(retKey);if (ret != ERROR_SUCCESS) {return -2;}int sum = 0;wchar_t TEMPSTR[MAX_PATH + 1] = L"\0";for (int i = 0; i < int(nSize); i += 1) {if (retKeyVal[i + 1] == 0) {TEMPSTR[i] = retKeyVal[i];if (retKeyVal[i] == 0) break;}}for (int i = 0; i < int(nSize); i += 1) {if (retKeyVal[i + 1] == 0) {*(str + sum) = retKeyVal[i];sum++;if (retKeyVal[i] == 0) break;}}return TRUE;
}

Minecraft启动器制作(C++)相关推荐

  1. [C#]Minecraft启动器制作(KMCC)

    目录 1.为什么会写本文章? 2.此项目设定环境 3.新建项目 4.添加项目所需引用 4.基本的启动功能: 5.运行 6.完整代码 1.为什么会写本文章? 由于最近刚了解C#语法想加强下概念,而且本人 ...

  2. 我的世界启动器制作教程

    目录 碎碎念 为什么我要写这篇文章 使用什么语言编写最好? 了解Minecraft是如何启动的 获取 Java 路径 Jvm参数 库文件路径 游戏参数 编写自动化启动过程 选择语言 从头来过 获取Ja ...

  3. minecraft启动器_如何使用外部编辑器编辑Minecraft地图

    minecraft启动器 In a previous tutorial we took WorldEdit for a spin, a fantastic in-game editor that le ...

  4. python也能开发minecraft启动器

    最近我在csdn上看见了 __小小的程序员__ 博主的文章,发现python可以开发minecraft启动器? 好牛皮!我试了一下!果真可以,所有版本(包括最新1.19和最新快照)都可以.别忘了pip ...

  5. |python|用tkinter做minecraft启动器 第一章:python配置

    哈啰啊,这是发的第一篇文章,做的不好,多多关照 好进入正题今天是配置python,先看后期的图片 好,我们首先得下载python(链接加载有点慢) python下载 | 传送门 | 然后点这个(红框框 ...

  6. Ubuntu下的U盘启动器制作

    Ubuntu下的U盘启动器制作 准备工作 安装 写入 准备工作 原先有两个U盘用来制作U盘启动器,一个Windows系统,一个Ubuntu,奈何windows系统的U盘被我格式化了,只能在Ubuntu ...

  7. [Themeda启动器]用Java编写的Minecraft启动器

    启动器全部由本人一人编写完成,作为练手的作品.编写过程磕磕绊绊,大多时间都在查阅各种网上资料. 现在写下这篇文章以供后来者参考. 本启动器预计实现以下内容 启动器预计实现的功能 是否完成 项目名称 功 ...

  8. skinme找不到java_我的世界hello minecraft启动器下载

    我的世界下载完成之后需要安装JAVA环境,如果没有启动器的朋友还需要下载一个启动器,今天游戏园小编为大家带来了我的世界启动器的下载,这个启动器叫做hello minecraft,这款启动器支持的功能也 ...

  9. 我换Minecraft启动器啦!

    上一次我们介绍过关于1.12.2的光影解决办法. 今天我们来侃侃MC启动器的那些事吧! 你一定在上一篇文章中看到我写的了,我用的是PCL2. 但是,从2022年7月31日开始,我暂停使用PCL2,改换 ...

最新文章

  1. python英语-50 行代码,实现中英文翻译
  2. 开课吧python好吗-如何选择python培训机构?开课吧python培训怎么样?
  3. SAP SD买十送一的业务处理与系统实现
  4. CodeForces - 1196F K-th Path(最短路+思维)好题
  5. objects jdk8_JDK 9:NotNullOrElse方法已添加到Objects类
  6. 使用Prometheus发现在Kubernetes上运行的应用程序
  7. [js] 如何判断两个对象相等?
  8. .net文件请求iis的回话的工作原理
  9. 阿里巴巴发布AliOS品牌 重投汽车及IoT领域
  10. 果粉们要的才不是事后歉意
  11. mongodb远程连接访问
  12. 用文本方式将数据装入一个数据库表 mysql_文本应该放哪_MySQL用文本方式将数据装入数据库表中...
  13. html email template
  14. wmi服务怎么关?wmi服务关闭有影响吗?
  15. 实战一:给定一段音频,请提取12维MFCC特征,阅读代码预加重、分帧、加窗部分,完善作业代码中fbank和mfcc部分,并给出最终的Fbank和MFCC特征,用默认的配置参数,无需进行修改
  16. RPG游戏之龙腾世纪魔术师养成攻略
  17. TCP三次握手/四次挥手到三体猜疑链
  18. 利用单片机给直流升压
  19. UVALIVE 2678
  20. 支付宝生活号开发中所遇到的困难及解决记录

热门文章

  1. C语言中各种数据类型的大小
  2. MacBook入门之——开机激活教程
  3. 记录gpu服务器上运行yolov5出现的问题
  4. Linux服务篇--http协议和Apache
  5. 测试工程师的工作内容是什么?
  6. 2.4模拟打牌游戏中的发牌过程
  7. 滚雪球学 Python 之闭包操作,本系列第 8 篇文章
  8. 想唱就唱,唱自己喜欢的歌曲做mp3,做铃声
  9. 2021 七大IT高薪认证,你都get了吗?
  10. 互助平台是什么?互助系统怎么开发