gpt4 book ai didi

c# - 我的世界 1.6.2 自定义启动器

转载 作者:行者123 更新时间:2023-11-30 22:15:11 24 4
gpt4 key购买 nike

我正在为 Minecraft 制作一个启动器。 1.6.2变化很大,登录方式也不同。如果你们中有人知道使用 C# 登录我的世界,我将不胜感激。

wClient.DownloadString("http://login.minecraft.net/?user=" + strUsername + "&password=" + strPassword + "&version=13");  

我相信这曾经是一种有效的方法,但我现在不太确定了。感谢您的帮助,谢谢。

最佳答案

回复 TheUnrealMegashark 对 Rhys Towey 的回答的评论。我一直在努力让它启动,但是。它让我有点失望。下一个更新将包括 1.6 修复。只是想弄清楚。

您问题的正确答案是获取 session 的 Web 链接当前仍在使用中。没有什么新鲜事。

小心!您必须知道您的

"http://login.minecraft.net/?user=" + strUsername + "&password=" + strPassword + "&version=13"

不安全。它通过互联网以纯文本形式发送用户密码。它可能会受到“中间人”攻击。

加密连接的正确方法之一是使用 HTTPS 和 POST。使用 POST,我避免发送请求 URL 中的所有数据,而是通过 POST 发送数据。使用 HTTPS,我对请求 URL 返回后发送的所有数据进行加密。 HTTPS 使 POST 加密,从而消除“中间人”攻击。

您可以将 GET 与 HTTPS 一起使用,它仍然是安全的(据我所读)。但是,这被认为是一种不安全的做法。虽然它在您的计算机和连接的设备之间的所有帐户中都是安全的,但在其他任何地方都可能看到它并受到“背后的人攻击”。我的意思是,当您发送此 URL 时,您的计算机可能会将该 URL 记录在某种历史记录中,或者以纯文本形式将其显示在地址栏中。虽然,感觉你没有做网页浏览器,没有显示 URL,但这可能都被遗忘了。

但是,如果是我,我仍然会谨慎行事,只会使用更安全的策略。


将 HTTPS 与 POST 结合使用。
这是我在“AtomLauncher”中使用的代码示例。此代码会将 POST 数据发送到 URL 并返回一个字符串。转到 http://www.minecraftwiki.net/wiki/Minecraft.net获取有关返回的字符串的更多信息。

string mcURLData = "Error";
using (WebClient client = new WebClient()) // Get Data from Minecraft with username and password
{
// This a Text control for my Program, ignore this commented line if you wish.
// this.Invoke(new MethodInvoker(delegate { homeLabelTop.Text = "Connecting to Minecraft.net..."; }));
try
{
System.Collections.Specialized.NameValueCollection urlData = new System.Collections.Specialized.NameValueCollection();
urlData.Add("user", "UserName");
urlData.Add("password", "MYPa22w0rd");
urlData.Add("version", "13");
byte[] responsebytes = client.UploadValues("https://login.minecraft.net", "POST", urlData);
mcURLData = Encoding.UTF8.GetString(responsebytes);
}
catch
{
if (!System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable())
{
mcURLData = "Internet Disconnected.";
}
else
{
mcURLData = "Can't connect to login.minecraft.net.";
}
}
}

通过 GET 使用 HTTPS
只需简单地改变

http

在你的代码中

https


在其他新闻中。

我已经修复了我的代码。随意(上传时)使用它。供您引用,您需要知道,当 1.6.X 启动时,它会创建一个 natives 文件夹,它会立即开始使用该文件夹。我为解决此问题所做的工作是运行 1.6.2 并复制它创建的 natives 文件夹并删除该号码。

Created "version/1.6.2/1.6.2-natives-###"
Copied it to "version/1.6.2/1.6.2.natives"
Point my program to "natives" folder I created.

我以后要做的是自动检查 natives 文件夹,如果它不存在,我会让它从 Internet 下载 natives。(我很想知道《我的世界》从哪里得到它当前的原住民,所以我基本上可以做同样的事情。除非,它所做的是每次启动时从互联网上下载它。如果是真的,那有点丑陋。看我有带宽使用限制。)

关于c# - 我的世界 1.6.2 自定义启动器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18117611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com