为什么可以';我用这个代码在c#中制作了一个minecraft发射器

本文关键字:发射器 minecraft 一个 代码 为什么 | 更新日期: 2023-09-27 18:26:28

我到处寻找如何制作定制的minecraft发射器。我设法创建了这个代码,它应该可以工作,但遗憾的是它没有。我登录了,但它从未启动,但有一秒钟我的鼠标旁边有一个加载环。这是我的代码:

ProcessStartInfo start = new ProcessStartInfo();
// Enter in the command line arguments, everything you would enter after the executable name itself
start.Arguments = @"-Xmx1G -Djava.library.path=%APPDATA%'.minecraft'versions'1.6.2'1.6.2-natives -cp %APPDATA%'.minecraft'libraries'net'sf'jopt-simple'jopt-simple'4.5'jopt-simple-4.5.jar;%APPDATA%'.minecraft'libraries'com'paulscode'codecjorbis'20101023'codecjorbis-20101023.jar;%APPDATA%'.minecraft'libraries'com'paulscode'codecwav'20101023'codecwav-20101023.jar;%APPDATA%'.minecraft'libraries'com'paulscode'libraryjavasound'20101123'libraryjavasound-20101123.jar;%APPDATA%'.minecraft'libraries'com'paulscode'librarylwjglopenal'20100824'librarylwjglopenal-20100824.jar;%APPDATA%'.minecraft'libraries'com'paulscode'soundsystem'20120107'soundsystem-20120107.jar;%APPDATA%'.minecraft'libraries'argo'argo'2.25_fixed'argo-2.25_fixed.jar;%APPDATA%'.minecraft'libraries'org'bouncycastle'bcprov-jdk15on'1.47'bcprov-jdk15on-1.47.jar;%APPDATA%'.minecraft'libraries'com'google'guava'guava'14.0'guava-14.0.jar;%APPDATA%'.minecraft'libraries'org'apache'commons'commons-lang3'3.1'commons-lang3-3.1.jar;%APPDATA%'.minecraft'libraries'commons-io'commons-io'2.4'commons-io-2.4.jar;%APPDATA%'.minecraft'libraries'net'java'jinput'jinput'2.0.5'jinput-2.0.5.jar;%APPDATA%'.minecraft'libraries'net'java'jutils'jutils'1.0.0'jutils-1.0.0.jar;%APPDATA%'.minecraft'libraries'com'google'code'gson'gson'2.2.2'gson-2.2.2.jar;%APPDATA%'.minecraft'libraries'org'lwjgl'lwjgl'lwjgl'2.9.0'lwjgl-2.9.0.jar;%APPDATA%'.minecraft'libraries'org'lwjgl'lwjgl'lwjgl_util'2.9.0'lwjgl_util-2.9.0.jar;%APPDATA%'.minecraft'versions'1.6.2'1.6.2.jar net.minecraft.client.main.Main --username playername --session token:"+ words[3] + @":" + words[4]+ @" --version 1.6.2 --gameDir %APPDATA%'.minecraft --assetsDir %APPDATA%'.minecraft'assets";
start.FileName = @"c:'Program Files (x86)'java'jre7'bin'javaw.exe";
// Do you want to show a console window?
start.CreateNoWindow = true;
System.Diagnostics.Process.Start(start);

这只是用我的鼠标点击加载环一秒钟,然后什么都没有打开。没有日志、崩溃、错误,没有任何错误。这是在Visual Studio 2012上编译的Visual c#。

为什么可以';我用这个代码在c#中制作了一个minecraft发射器

您给出的参数中有一个环境变量-%APPDATA%

默认情况下,命令行会对此进行扩展,但.net库不会。

请参阅如何确保c#Process.Start将扩展环境变量?

正如Pete Kirkham提到的,您需要设置环境变量。您可以在启动流程之前设置它,如:
var appDataPath = "your path";
start.EnvironmentVariables.Add("APPDATA", appDataPath);