[C++] Migrer un programme VB vers VC++

Migrer un programme VB vers VC++ [C++] - C++ - Programmation

Marsh Posté le 28-11-2004 à 09:15:40    

Salut,
 
 
Ca fait quelques temps que je buche sur un programme destiné aux overclockers, clairement le but était de faire un programme qui remplace superpi, mais en ajoutant des options intéressantes (anticheat, checksum de l'executable, crypté le résultat, etc...).
 
 
L'idée source est de faire un programme qui soit en deux parties : une interface et un executable (core = calcul). Le calcul, je m'en occupe pas, j'ai travaillé avec Xavier Gourdon qui m'a compilé une version de pifast spéciale (allégée au niveau de son interface interne, et fixe en termes d'itérations, etc...). Je me suis consacré à l'interface à l'appel (et sortie) de cet executable. Le gros intérêt visé, est que quand de nouvelles versions seront faites, les résultats précédents seront encore valables, puisque le core n'est pas recompilé et donc a priori le calcul est executée toujours de la même manière, en considérant bien sûr le fait que l'interface est suffisament légère pour ne pas y intéférer.
 
 
Pour voir si j'arrivais à faire un truc correct et surtout n'ayant pas touché au C depuis longtemps, je me suis lancé dans du VB. J'ai réussi avec pas mal de coups de pouce à faire un truc fonctionnel et qui marche plutôt bien. J'ai sorti une beta distribuée à quelques testeurs, les résultats sont déterministes (encore heureux :d) et à l'utilisation sympa.
 
 
Avec toujours comme but de faire le programme en VC++, je voudrais savoir si tout ce que j'ai codé en VB est faisable en VC++, enfin je me doute que ça l'est puisque niveau puissance, ce n'est même pas comparable. En fait je voudrais surtout avoir quelques conseils pour réaliser les taches que je faisais avec VB, en voici la liste :
 
 
 
- interface graphique (bon rien à dire là...)
- appel d'un executable externe (possibilité de mettre la tache en temps réel ?)
- récupérer les sorties textes (de type printf)
- cryptage + hashage de chaine de caractere
- checksum d'un executable (lecture binaire et conversion String = ce que je faisais en VB)
 
 
en fait c'est surtout le 3ème point dont j'ai a priori un doute sur comment faire...
 
 
Si vous avez des conseils ou des questions au sujet de ce programme, hésitez pas...
 
:hello:


---------------
http://www.zytratech.com
Reply

Marsh Posté le 28-11-2004 à 09:15:40   

Reply

Marsh Posté le 29-11-2004 à 06:25:44    

:hello:


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 10:11:18    

Qu'est-ce que tu entends par "récupérer les sorties texte" :??:
A priori tout ce qui est faisable en VB est faisable en C++...[:skeye]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 29-11-2004 à 10:56:05    

ça c'est sur :whistle: :d
 
par "récupérer les sorties texte" j'entends :  
 
quand tu lances en cmd un exe et que tu veux récupérer les sorties dans un fichier tu fais :
 
c:\test.exe > sortie.txt par exemple
 
et bien ce que je voudrais c'est récupérer les sorties sans passer par un fichier. exemple tout con, si le programe en C fait un printf("hello" ) je voudrais récupérer "hello" dans une variable.
 
c'est plus propre et plus sécure que de passer par un fichier intermédiaire
 
[:zytra]


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 11:00:03    

Ahhhhhhhh...[:joce]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 29-11-2004 à 11:02:54    

me suis mal exprimé ? [:tinostar]


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 11:12:44    

zytrahus5 a écrit :

- interface graphique (bon rien à dire là...)wxWidgets, c'est le plus simple à mon avis.
 
- appel d'un executable externe (possibilité de mettre la tache en temps réel ?)
- récupérer les sorties textes (de type printf) http://www.codeproject.com/threads/redir.asp Attention, il y a des problèmes de droit et sécurité, donc regarde bien la doc des APIs qui sont utilisées. Si tu as du mal, tiens moi au courant, j'ai du code qui fait ça sur un autre PC.
 
- cryptage + hashage de chaine de caractere OpenSSL pour le cryptage. Mais à priori, faire un hash tout bête te suffira, non ?
- checksum d'un executable (lecture binaire et conversion String = ce que je faisais en VB) OpenSSL. Ou demande à Harkonnen, il a utilisé une lib C qui faisait ça il y a pas longtemps

Reply

Marsh Posté le 29-11-2004 à 11:21:54    

ok ok :jap:
 
 
niveau compilateur, je n'ai que visual c++ 6 est ce que je pourrais tout faire "stock" avec ça, ou s'il faut importer des librairies particulières genre wxWdigets ?


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 11:23:37    

zytrahus5 a écrit :

ok ok :jap:
 
 
niveau compilateur, je n'ai que visual c++ 6 est ce que je pourrais tout faire "stock" avec ça, ou s'il faut importer des librairies particulières genre wxWdigets ?


bah dans ce cas tu peux utiliser les MFC à la place de wxwidgets...[:joce]


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 29-11-2004 à 11:25:32    

[:god] [:romf]


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 11:25:32   

Reply

Marsh Posté le 29-11-2004 à 11:25:36    

zytrahus5 a écrit :

ok ok :jap:
 
 
niveau compilateur, je n'ai que visual c++ 6 est ce que je pourrais tout faire "stock" avec ça, ou s'il faut importer des librairies particulières genre wxWdigets ?


Ca dépend si tu veux te faire chier :).
 
Je te recommende de laisser la partie graphique pour plus tard (occupe toi d'abord de faire la partie exécution, récupération et cryptage), comme ça tu verras.
 
A priori, VS6 suffit (je te signale que le compilo de VS2003 est gratuit, mais sans l'IDE), auquel il te faudra rajouter une lib pour l'encryption (OpenSSL par exemple), et une lib pour le graphisme, à moins que tu ne veuilles utiliser les MFC (ce que je te déconseille à titre personnel). Si tu vas via les MFC, alors pas besoin de wxWidgets ou autres...

Reply

Marsh Posté le 29-11-2004 à 11:27:04    

Lam's a écrit :


A priori, VS6 suffit (je te signale que le compilo de VS2003 est gratuit, mais sans l'IDE)


Il me semble qu'on peut intégrer le compile de VS2003 dans l'IDE de VS6, d'ailleurs...;)


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 29-11-2004 à 11:27:45    

OK, je vais te poser une ou deux dernieres petites questions :
 
pourquoi VS2003 plutot que VS6 ? sachant que j'ai une license est ce que c'est la peine de passer par un compilo gratuit ? sauf s'il est vraiment meilleur ?


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 11:28:08    

zytrahus5 a écrit :

OK, je vais te poser une ou deux dernieres petites questions :
 
pourquoi VS2003 plutot que VS6 ? sachant que j'ai une license est ce que c'est la peine de passer par un compilo gratuit ? sauf s'il est vraiment meilleur ?


Il est vraiment meilleur...;)


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 29-11-2004 à 11:29:23    

ok [:romf] vais essayer de l'intégrer à VS6 alors si c'est possible [:dawa]


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 11:30:34    

zytrahus5 a écrit :

OK, je vais te poser une ou deux dernieres petites questions :
 
pourquoi VS2003 plutot que VS6 ? sachant que j'ai une license est ce que c'est la peine de passer par un compilo gratuit ? sauf s'il est vraiment meilleur ?


Le compilo est meilleur: il optimise mieux, gère mieux la norme, peut faire du .NET et du managed C++.  
 
Mais tu peux commencer avec VS6, et tu verras plus tard pour VC++7.1 (<=> .NET 2003).  
 
Par contre, download toi une version d'éval de Visual Assist (de WholeTomato), ça te simplifiera la tâche au début.

Reply

Marsh Posté le 29-11-2004 à 11:30:55    

zytrahus5 a écrit :

ok [:romf] vais essayer de l'intégrer à VS6 alors si c'est possible [:dawa]


http://forum.hardware.fr/forum2.ph [...] =0#t720002


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 29-11-2004 à 11:37:06    

je vais installer cette trial [:romf]
 
thx skeye [:romf]


---------------
http://www.zytratech.com
Reply

Marsh Posté le 29-11-2004 à 14:12:40    

zytrahus5 a écrit :

ça c'est sur :whistle: :d
 
par "récupérer les sorties texte" j'entends :  
 
quand tu lances en cmd un exe et que tu veux récupérer les sorties dans un fichier tu fais :
 
c:\test.exe > sortie.txt par exemple
 
et bien ce que je voudrais c'est récupérer les sorties sans passer par un fichier. exemple tout con, si le programe en C fait un printf("hello" ) je voudrais récupérer "hello" dans une variable.
 
c'est plus propre et plus sécure que de passer par un fichier intermédiaire
 
[:zytra]


Pblm traité x fois ici. Tjrs la même solution sous Windows :
http://support.microsoft.com/defau [...] -us;190351


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Sujets relatifs:

Leave a Replay

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