Emulateur/simulateur Win32 pour windows

fredsor Messages postés 198 Date d'inscription lundi 24 avril 2006 Statut Membre Dernière intervention 3 avril 2008 - 1 oct. 2007 à 09:57
cs_vicenzo Messages postés 178 Date d'inscription mardi 16 août 2005 Statut Membre Dernière intervention 25 août 2010 - 1 oct. 2007 à 23:13
Bonjour à tous,

Voici mon problème : j'ai développé une application pour des Pocket PC, que j'ai testé à l'aide de l'émulateur (ou simulateur, je fais toujours l'amalgame...)
            Microsoft Windows Mobile 5.0 MSFP Emulator Images

J'ai également installé Windows Mobile 6 SDK, etc... tout ça pour bien simulé l'affichage sur un Pocket PC.

Cela fonctionne très bien, et évidemment le simulateur/émulateur m'affiche une petite fenetre de la taille d'un ecran de pocket pc, m'affichant mes différents écrans.

Maintenant, j'aimerais trouver un émulateur/simulateur, m'affichant la fentre en grand, donc un émulateur/simulateur pour Windows "normal", et pas Windows CE.

J'esepre avoir été clair. Pensez-vous que c'est possible? Quelqu'un saurait il où trouver ce genre de simulateur? ou dois-je réécrire le code pour l'adapter à du Windows?
Je précise que j'ai développé avec l'API Win32 sous Embedded Visual C++ 4. J'ai développé en C.

Merci d'avance,

6 réponses

Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
1 oct. 2007 à 20:03
Je ne suis pas spécialiste de l'API win32, mais à priori si tu as développé ça en C avec l'API normale, il n'y a qu'à recompiler avec un compilateur normal, genre VC2005 puisque tu utilises les outils Microsoft.
On peut voir un extrait du code qui, par exemple, ouvre une fenêtre ?   

_______________________

Omnia vincit labor improbus
http://calvin-studio.fr
0
fredsor Messages postés 198 Date d'inscription lundi 24 avril 2006 Statut Membre Dernière intervention 3 avril 2008
1 oct. 2007 à 21:10
Merci Arnaud16022,
Voici un bout de code :
ATOM MyRegisterClass(HINSTANCE hInstance, LPTSTR szWindowClass)
{
  WNDCLASS wc;


  wc.style = CS_HREDRAW | CS_VREDRAW;
  wc.lpfnWndProc = (WNDPROC) WndProc;
  wc.cbClsExtra = 0;
  wc.cbWndExtra = 0;
  wc.hInstance = hInstance;
  wc.hIcon = 0;
  wc.hCursor = 0;
  wc.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);
  wc.lpszMenuName = 0;
  wc.lpszClassName = szWindowClass;
  return RegisterClass(&wc);
}


int WINAPI WinMain( HINSTANCE hInstance,HINSTANCE hPrevInstance,LPTSTR lpCmdLine,int nCmdShow)
{
 MSG msg;
    HACCEL haccel;
    ACCEL accel;
 accel.fVirt = FVIRTKEY|FSHIFT;
    accel.key = VK_TAB;        // code de la touche Tab
    accel.cmd = MYACCEL;
    haccel = CreateAcceleratorTable(&accel, 1);  // creation du raccourci "shift + tab"
 
 hinst=hInstance;


 char** tableau=NULL;
 LancerParsing(tableau);


 MyRegisterClass(hInstance, TEXT("Projet_Falcon"));
 hWndMain = CreateWindow(TEXT("Projet_Falcon"),TEXT(""),WS_VISIBLE,CW_USEDEFAULT,
       CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT, NULL, NULL,hInstance, NULL);
 if (!hWndMain)
 { 
  return FALSE;
 }
 ShowWindow(hWndMain, nCmdShow);
 UpdateWindow(hWndMain);


    while (GetMessage(&msg, NULL, 0, 0))
    {
        if(!TranslateAccelerator(msg.hwnd, haccel, &msg))
  {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
    }
    DestroyAcceleratorTable(haccel);
 return msg.wParam;
}

C'est évidemment un tout petit bout de code, mais en effet il me semble qu'il doit etre "récupérable"  sous un autre environnement
Je télécharge Visual C++ Express là, je vais voir ce que ca donne , mais cette aprem ca voulait meme pas ouvrir mon projet...
Je te tiens au courant
0
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
1 oct. 2007 à 22:08
Boah oué ça me semble être du bon C bien classique, pas besoin d'un émuateur x86 windows sur une plate-forme x86 windows ^^

_______________________

Omnia vincit labor improbus
http://calvin-studio.fr
0
fredsor Messages postés 198 Date d'inscription lundi 24 avril 2006 Statut Membre Dernière intervention 3 avril 2008
1 oct. 2007 à 22:18
Re Arnaud,


Bon petit problème, cet aprem j'avais deja téléchargé ailleurs Visual C++ Express, mais impossible d'ouvrir mon projet actuel avec ( pareil ce soir)


Il essaye de mettre a niveau ou je ne sais quoi, et ca plante a chaque foi ( j'ai l'impression qu'il regarde si le projet est une ancienne version de visual c++, or moi cest embedded visual c++ 4...)


 


Me conseillerait tu un autre environnement ou compilateur? de toute maniere, si ca me genere un exe, il fonctionnera par lui meme sous Windows?


Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Arnaud16022 Messages postés 1329 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 16 juin 2010 2
1 oct. 2007 à 22:36
Au lieu d'essayer d'importer ton projet, crées en plutôt un nouveau.
File->New->Project->Win32 application
Il n'y a normalement aucun souci, SAUF si tu linkes avec une lib un peu exotique et réservée à l'embedded( pocket PC , ... )

Sinon tu peux utiliser les outils "libres", je te conseille Code::Blocks ( la nightly built ), livré avec minGW. Mais t'ira pasa plus loin qu'avec les outils microsoft, hein ...   

_______________________

Omnia vincit labor improbus
http://calvin-studio.fr
0
cs_vicenzo Messages postés 178 Date d'inscription mardi 16 août 2005 Statut Membre Dernière intervention 25 août 2010 1
1 oct. 2007 à 23:13
Un exécutable compilé par ECV3 ou EVC4 ne peut être lancé sur une machine x86...

EVC3, EV4 ainsi que VS2003/5 en mode pocket génère du code pour différentes plateformes et processeurs (MPIS, SHxx, ARMx, ....) qui sont différent du x86 sur lequerl tourne les versions Win32 de Microsoft..

Si le code n'utilise pas de lib particulières des windows ce (fonction SHxx, fonctions de aygshell.h, ...), il est fort probable qu'il puisse être compilable sous Win32 (il y a quelques petites diférrences mineure comme la fonction createthread().. mais cela reste marginal...

Il faut donc créer un oubeau projet et insérer le code source...
0
Rejoignez-nous