{启动按钮}
begin
try
Filename:=ExtractFilePath(Paramstr(0))+'mclauncher.ini';
myinifile:=Tinifile.Create(Filename);
Path:=myinifile.ReadString('Java', 'Path', '0');
JavaXmx:=myinifile.ReadString('Java', 'Xmx', '0');
JavaD64:=myinifile.ReadString('Java', 'D64', '0');
PlayerName:=myinifile.ReadString('User', 'Name', '0');
finally
myinifile.Free;
end;
SetEnvironmentVariable(PChar('APPDATA'), PWideChar(GetCurrentDir()));
if (FileExists(GetCurrentDir()+'\.minecraft\bin\minecraft.jar')) then
begin
if JavaD64 = '0' then
begin
ShellExecute(Handle, 'open', PChar(Path), PWideChar('-Xincgc -Xmx' +
JavaXmx + 'M -XX:PermSize=64m -XX:MaxPermSize=128m ' +
'-Dsun.java2d.noddraw=true -Dsun.java2d.pmoffscreen=false ' +
'-Dsun.java2d.d3d=false -Dsun.java2d.opengl=false -cp "' +
GetCurrentDir() + '\.minecraft\bin\minecraft.jar;' + GetCurrentDir() +
'\.minecraft\bin\lwjgl.jar;' + GetCurrentDir() + '\.minecraft\bin\lwjgl_util.jar;' +
GetCurrentDir() + '\.minecraft\bin\jinput.jar" -Djava.library.path="' +
GetCurrentDir() + '\.minecraft\bin\natives" net.minecraft.client.Minecraft ' +
PlayerName), nil, SW_SHOW);
close();
end
else
begin
ShellExecute(Handle, 'open', PChar(Path), PWideChar('-Xincgc -Xmx' +
JavaXmx + 'M -XX:PermSize=64m -XX:MaxPermSize=128m ' +
'-Dsun.java2d.noddraw=true -Dsun.java2d.pmoffscreen=false ' +
'-Dsun.java2d.d3d=false -Dsun.java2d.opengl=false -D64 -cp "' +
GetCurrentDir() + '\.minecraft\bin\minecraft.jar;' + GetCurrentDir() +
'\.minecraft\bin\lwjgl.jar;' + GetCurrentDir() + '\.minecraft\bin\lwjgl_util.jar;' +
GetCurrentDir() + '\.minecraft\bin\jinput.jar" -Djava.library.path="' +
GetCurrentDir() + '\.minecraft\bin\natives" net.minecraft.client.Minecraft ' +
PlayerName), nil, SW_SHOW);
close();
end;
end
else
Application.MessageBox('没有找到游戏文件,请进入“下载”下载游戏!',
'提示', MB_ICONWARNING);
{INI配置文件读写}
begin
if not (FileExists(ExtractFilePath(Paramstr(0))+'mclauncher.ini')) then
begin
if(FileExists(ExtractFilePath(Paramstr(0))+'launcher.ini')) then
begin
if((Application.MessageBox('发现MCLauncher配置文件,是否转换?', '提示',
MB_YESNO Or MB_ICONQUESTION)) = IDYES) then
begin
try
Filename:=ExtractFilePath(Paramstr(0))+'launcher.ini';
myinifile:=Tinifile.Create(Filename);
Path:=myinifile.ReadString('launcher4.0', 'JavaW', '0');
JavaXmx:=myinifile.ReadString('launcher4.0', 'JavaXmx', '0');
JavaD64:=myinifile.ReadString('launcher4.0', 'JavaD64', '0');
PlayerName:=myinifile.ReadString('launcher4.0', 'Name', '0');
finally
myinifile.Free;
end;
try
Filename:=ExtractFilePath(Paramstr(0))+'mclauncher.ini';
myinifile:=Tinifile.Create(Filename);
myinifile.writestring('User', 'Name', PlayerName);
myinifile.writestring('Java', 'Xmx', JavaXmx);
if JavaD64 = '1' then
begin
myinifile.writebool('Java', 'D64', true);
end
else
begin
myinifile.writebool('Java', 'D64', false);
end;
myinifile.writestring('Java', 'Path', Path);
finally
myinifile.Free;
end;
ShowMessage('转换成功!输出文件: '+ExtractFilePath(Paramstr(0)) +
'launcher.ini');
end
else
begin
Application.MessageBox('已选择不转换配置文件,即将进入“选项”重新进行配置!',
'提示', MB_ICONINFORMATION);
try
Filename:=ExtractFilePath(Paramstr(0))+'mclauncher.ini';
myinifile:=Tinifile.Create(Filename);
myinifile.writestring('User', 'Name', 'Player');
myinifile.writestring('Java', 'Xmx', '1024');
myinifile.writebool('Java', 'D64', false);
myinifile.writestring('Java', 'Path', 'javaw.exe');
finally
myinifile.Free;
end;
Application.CreateForm(TOptionsForm, Options.OptionsForm);
OptionsForm.show();
end
end
else
begin
Application.MessageBox('没有找到配置文件,即将进入“选项”进行配置!',
'提示', MB_ICONWARNING);
try
Filename:=ExtractFilePath(Paramstr(0))+'mclauncher.ini';
myinifile:=Tinifile.Create(Filename);
myinifile.writestring('User', 'Name', 'Player');
myinifile.writestring('Java', 'Xmx', '1024');
myinifile.writebool('Java', 'D64', false);
myinifile.writestring('Java', 'Path', 'javaw.exe');
finally
myinifile.Free;
end;
Application.CreateForm(TOptionsForm, Options.OptionsForm);
OptionsForm.show();
end
end;
end;