Stakc Skrivet 24 November 2012 Rapport Skrivet 24 November 2012 Tja, Haha är inge vidare bra på att förklara men ska försöka ändå, Hur öppnar man en websida i typ som en program ruta? Man kör igång .exe filen och sedan så kommer man in på den sidan man vill via den? Citera
Vitdom Skrivet 1 December 2012 Rapport Skrivet 1 December 2012 (redigerat) iexplorer.exe fuska.se eller om du vill skapa ett eget program http://sv.wikipedia.org/wiki/Gecko_%28renderingsmotor%29 Redigerat 1 December 2012 av Vitdom Citera
Stakc Skrivet 1 December 2012 Författare Rapport Skrivet 1 December 2012 Inte riktigt så jag menade, Jag menar som på Runescape så kan man ladda ner så man typ spelar i "programfönster" om du förstår vad jag menar? Citera
Draghguggwhor Skrivet 1 December 2012 Rapport Skrivet 1 December 2012 Inte riktigt så jag menade, Jag menar som på Runescape så kan man ladda ner så man typ spelar i "programfönster" om du förstår vad jag menar?I Runescapes fall har väl Jagex skapat det här programmet? Och det är väl även en java fil man kör? Citera
Vitdom Skrivet 2 December 2012 Rapport Skrivet 2 December 2012 (redigerat) Inte riktigt så jag menade, Jag menar som på Runescape så kan man ladda ner så man typ spelar i "programfönster" om du förstår vad jag menar?Runescape non-browser standalone klienten laddar ingen webbsida. Den är skriven i "Microsoft - C++"(ej standardiserat) med hjälp av Win32API och GCJ(http://gcc.gnu.org/java/) och laddar Javas Virtual Machine (tillhandahåller "programfönstret" du talar om) och därefter laddar den in och kör Runescapes main-klass i Java. Till skillnad ifrån din webbläsare som själv laddar Javas Virtual Machine och specificerar ett Java Arkiv med main-startklass i Java. Även Minecraft.exe tror jag använder GCJ för att ladda spelet, men med mer kringfunktioner än Runescapes klient. Källkod(GNU GPLv2 http://www.gnu.org/licenses/gpl-2.0.html):/* * Copyright 2010 Jagex Limited. * * This file is part of JagexLauncher. * * JagexLauncher is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * JagexLauncher is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, see <http://www.gnu.org/licenses/> * */ #include "stdafx.h" #include <iostream> using std::cout; using std::endl; #define MAX_LINE_LENGTH 65536 int mainprogram(char *game) { FILE *f; char **paramlines; int l_paramlines=0; char prmfile[512]; sprintf_s(prmfile, 512, "../%s/%s.prm", game, game); if (fopen_s(&f, prmfile, "r") !=0) { MessageBox(NULL, TEXT("Unable to load parameter file. Please reinstall the program."), TEXT("Error"), MB_OK); return 0; } else { char line[MAX_LINE_LENGTH]; while (fgets(line, MAX_LINE_LENGTH, f)!=NULL) l_paramlines++; paramlines=new char *[l_paramlines]; fseek(f, 0, SEEK_SET); int i=0; while (fgets(line, MAX_LINE_LENGTH, f)!=NULL) { int len=strlen(line); for (int j=len-1; j>=0; j--) { if (line[j]!='\n' && line[j]!='\r') break; line[j]=0; } paramlines[i]=new char[len+1]; strcpy_s(paramlines[i], len+1, line); i++; } } if (l_paramlines<1) { MessageBox(NULL, TEXT("Empty parameter file. Please reinstall the program."), TEXT("Error"), MB_OK); return 0; } JavaVM *jvm; JNIEnv *env; LoadLibrary(TEXT("jvm.dll")); JavaVMInitArgs vm_args; vm_args.version=JNI_VERSION_1_6; vm_args.nOptions=l_paramlines-1; vm_args.options=new JavaVMOption[l_paramlines-1]; for (int i=0; i<l_paramlines-1; i++) vm_args.options[i].optionString=paramlines[i]; vm_args.ignoreUnrecognized=false; jint result=JNI_CreateJavaVM(&jvm, reinterpret_cast<void **>(&env), &vm_args); if (result!=JNI_OK) return 0; jclass cls=env->FindClass(paramlines[l_paramlines-1]); if (cls!=NULL) { jmethodID mid=env->GetStaticMethodID(cls, "main", "([Ljava/lang/String;)V"); jobjectArray args=env->NewObjectArray(1, env->FindClass("java/lang/String"), NULL); env->SetObjectArrayElement(args,0,env->NewStringUTF(game)); env->CallStaticVoidMethod(cls, mid, args); } jvm->DestroyJavaVM(); return 0; } #ifdef _CONSOLE int _tmain(int argc, TCHAR **argv) { if (argc<2) return 0; #ifdef UNICODE int len=_tcslen(argv[1]); char *game=new char[len+1]; WideCharToMultiByte(CP_ACP, 0, argv[1], len+1, game, len+1, NULL, NULL); int ret=mainprogram(game); delete[] game; return ret; #else return mainprogram(argv[0]); #endif } #else int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) { return mainprogram(lpCmdLine); } #endif Redigerat 2 December 2012 av Vitdom Citera
Rekommendera inlägg
Gå med i konversationen
Du kan skriva nu och registrera dig senare. Om du har ett konto, logga in nu för att posta med ditt konto.