Aide pour launcher ( A3 )

Aide pour launcher ( A3 ) - VB/VBA/VBS - Programmation

Marsh Posté le 08-10-2013 à 02:23:27    

Salut ! Voila j'essaye de faire un launcher pour le jeu ARMA 3, qui analyserait les mods installé et les comparerait a un serveur ( ou un dossier dropbox gérer par les gérant du serveur, si possible ) mais voila je rencontre un petit problème, grosso modo, je fais en sorte que le launcher détecte la position de l'exe du jeu ( d'une manière pas du tout optimisé je pense ) et qu'il l’exécute s'il le trouve, cela fonctionne, mais le problème c'est qu'il se lance mal, en clair les paramètres vidéo ne sont pas pris en compte et donc on se retrouve avec un jeu avec une résolution bizarre ( on dirait un gros zoom en haut a gauche de l'écran en fait ) ... Donc je pense qu'il faudrait lui associer le fichier arma3.cfg ( qui contient tout les parametres du jeux ) mais je ne sais pas comment ... ? ( je débute en programmation  :whistle:  ) Ou alors qu'il se lance en plein écran basiquement ... Ou avec la résolution max par défaut, enfin je ne sais pas trop  :??:  J'ai beau cherché sur le net je ne trouve pas la réponse, donc merci de votre aide  :jap: ^^
 
Grosso modo le code ( VB ):
 

Code :
  1. If My.Computer.FileSystem.FileExists("C:\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  2.             Shell("C:\Steam\SteamApps\common\Arma 3\arma3.exe" )
  3.         ElseIf My.Computer.FileSystem.FileExists("C:\Program Files (x86)\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  4.             Shell("C:\Program Files (x86)\Steam\SteamApps\common\Arma 3\arma3.exe" )
  5.         ElseIf My.Computer.FileSystem.FileExists("C:\Program Files\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  6.             Shell("C:\Program Files\Steam\SteamApps\common\Arma 3\arma3.exe" )
  7.             ' D:\
  8.         ElseIf My.Computer.FileSystem.FileExists("D:\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  9.             Shell("D:\Steam\SteamApps\common\Arma 3\arma3.exe" )
  10.         ElseIf My.Computer.FileSystem.FileExists("D:\Program Files (x86)\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  11.             Shell("D:\Program Files (x86)\Steam\SteamApps\common\Arma 3\arma3.exe" )
  12.         ElseIf My.Computer.FileSystem.FileExists("D:\Program Files\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  13.             Shell("D:\Program Files\Steam\SteamApps\common\Arma 3\arma3.exe" )
  14.             ' E:\
  15.         ElseIf My.Computer.FileSystem.FileExists("E:\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  16.             Shell("E:\Steam\SteamApps\common\Arma 3\arma3.exe" )
  17.         ElseIf My.Computer.FileSystem.FileExists("E:\Program Files (x86)\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  18.             Shell("E:\Program Files (x86)\Steam\SteamApps\common\Arma 3\arma3.exe" )
  19.         ElseIf My.Computer.FileSystem.FileExists("E:\Program Files\Steam\SteamApps\common\Arma 3\arma3.exe" ) Then
  20.             Shell("E:\Program Files\Steam\SteamApps\common\Arma 3\arma3.exe" )
  21.         End If
  22.         End


Message édité par Krytecks le 08-10-2013 à 11:59:02
Reply

Marsh Posté le 08-10-2013 à 02:23:27   

Reply

Marsh Posté le 08-10-2013 à 15:59:45    

Je viens de trouver quelque chose qui peut s'avérer plus intéressant :
 

Code :
  1. Dim Emp As String       ' Emp = emplacement du .exe
  2. If Emp = "" Then
  3.             Emp = InputBox("Entrez le chemin d'accès du arma3.exe" + vbCrLf + "Par exemple :" + vbCrLf + "C:\Program Files (x86)\Steam\...\Arma 3\arma3.exe", " Recherche du chemin d'accès" )
  4.             Shell(Emp)
  5.         Else
  6.             Shell(Emp)
  7.         End If
  8.         End
  9.     End Sub


 
j'aimerai savoir si la valeur Emp peut être enregistrée quelque part ? Pour ne pas a voir a le remettre  a chaque fois ...
 
Et le problème reste le même, l'affichage du jeu est totalement anarchique, on ne peut même pas accéder aux menus.
 
Merci de votre aide  :jap:

Reply

Marsh Posté le 08-10-2013 à 16:25:31    

 
           Salut !
 
           Pourquoi faire simple quand on peut se prendre la tête en somme !
           Heureusement que l'on est que mardi sinon j'aurais décerné la médaille de la demande la plus idiote de la semaine …
 
           En inspectant le raccourci officiel du jeu, n'y aurait-il pas un répertoire spécifié dans Démarrer dans ?   :sarcastic:  
           Bref, copier le raccourci sur le bureau puis y modifier l'exécutable.
 
           Sinon voir avec les pros du jeu sur les sites de gamers … (risquent de se marrer)
 
           _____________________________________________________________________________________________
           Comme la vitesse de la lumière est supérieure à celle du son, certains ont l'air brillant avant d'avoir l'air con !
 

Reply

Marsh Posté le 08-10-2013 à 16:50:30    

Si, bien sur, mais j'essaye de faire en sorte que le programme puisse le trouver qu'importe ou il se trouve, parce que tout le monde n'a pas le jeu exactement au même endroit que moi ( et vu que c'est pour un clan d'une 20e d'actif, ça en fait des possibilités ... )
 
Et je n'arrive pas a faire en sorte que le programme sélectionne le raccourcis sur le bureau ! ( c'est vrai que ca serait un peu plus simple )

Reply

Marsh Posté le 08-10-2013 à 17:09:51    

 
           En fait tu n'as pas compris ma réponse …
 
           Pourquoi cela marche avec un raccourci ?
           Car le raccourci se positionne d'abord dans le répertoire de démarrage avant de lancer l'exécutable …
 

Reply

Marsh Posté le 08-10-2013 à 17:48:02    

Oui, mais si mon jeu est sur le disque E, et que chez quelqu'un d'autre il est sur le disque C, le raccourci ne pourra pas aller dans son dossier car il n'existe pas ^^

Reply

Marsh Posté le 08-10-2013 à 18:55:08    

 
           Certes, mais là en l'occurrence il ne s'agit pas de pourquoi le raccourci fonctionne ni encore moins de le lancer via un script,
           mais de pourquoi ton script n'est pas bon comparativement à un raccourci qui fonctionne ‼
 
           Sinon va voir du côté des forums de gamers
 

Reply

Marsh Posté le 08-10-2013 à 20:26:11    

J'ai fais au plus simple, on fera en sorte de mettre le launcher dans le bon dossier comme ca, aucune erreurs, mais ca ne règle toujours pas le problème du lancement bugué, et je ne suis pas sur qu'un forum gamer puisse m'avancer plus que cela ^^

Reply

Marsh Posté le 12-10-2013 à 19:21:27    

Yop ! Je me heurte a un nouveau problème !
 
En fait, pour mettre a jour les mods, il faut que je télécharge des dossier ( ce qui n'est apparemment pas possible )
et donc j'aimerai savoir si vous connaissez un moyen pour décompresser un dossier .rar ?
 
j'ai regardé partout, et j'ai trouvé énormément de réponses mais aucune ne fonctionne ...
 
Merci pour votre aide ^^

Reply

Marsh Posté le 12-10-2013 à 19:46:00    

Salut, j'ai cherché un peu WinRAR, as- tu essayé la bibliothèque proposé par http://www.rarlab.com/rar_add.htm pour visual basic ?
 
Pardon pour l'embrouille.


Message édité par Profil supprimé le 12-10-2013 à 19:47:51
Reply

Marsh Posté le 12-10-2013 à 19:46:00   

Reply

Marsh Posté le 12-10-2013 à 20:04:38    

je ne trouve pas de librairie pour du vb, je ne vois que celle pour du c++ tout en bas ?
Merci de m'aider ^^

Reply

Marsh Posté le 12-10-2013 à 20:07:54    

oh, je n'ai rien dis, le UnRARDLL.exe ? J'ai déja essayer mais je n'arrive pas a le caser dans mon projet  :??:

Reply

Marsh Posté le 04-11-2013 à 07:10:59    

Je re up le topic histoire d'aider ceux qui passeraient par la et qui auraient les mêmes problèmes que moi, Pour le dézippage je suis passé par Ionic.Zip ( je n'arrivais pas a faire fonctionner l'unrar de L'UNRARDLL. ce qui me donne un truc comme ça :
 

Code :
  1. Using zip As ZipFile = ZipFile.Read("Fichier a Déziper.zip" )
  2.                             Dim entry As ZipEntry
  3.                             For Each entry In zip
  4.                                 entry.Extract("Fichier a Déziper.zip", ExtractExistingFileAction.DoNotOverwrite)
  5.                                 Application.DoEvents()
  6.                             Next
  7.                         End Using


 
Et pour le bug d'affichage, il fallait tout simplement passer par le steam://rungameid/numéro  ( dispo en créant un raccourcis du jeu sur le bureau, et en copiant la cible ) ( Tu avais raison Marc L, mais mon raccourcis n'était pas de steam, je l'avais fais manuellement.
 
Et enfin, le shell qui se lance en minimisé, il fallait ajouter :  Shell("Updater.exe", AppWinStyle.NormalFocus)
 
Voila j'espère que ça en aidera plus d'un.  :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed