Forums Rue-Montgallet.com
Rue-Montgallet.comRue-Hardware.comRue-Occasion.comRue-DVD.comRue-Jeuxvideo.comRue-AudioVideo.comRue-Telephone.comForums
S'inscrire | S'identifier |
| Recherche avancée | Aide
 
 

Il y a 54 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

Cherche un code...

 
n°17676
Zebraman
Profil : Jeune recrue
Posté le 11-10-2006 à 20:00:13  profilanswer
 

Salut tout le monde !  
 
Alors voilà je cherche un code en C ou C++ ca m'est complétement égal !  
Voilà ce que j'aimerais faire :  
 
- Faire une fenêtre normale  
 
- Faire un endroit dans cette fenêtre ou on puissent noté du texte  
 
- Ouvrir la console MS-DOS  
 
- Marquez des truc dedans  
 
- Et en même temps qu'ouvrir la console envoyer un mail à mon adresse avec ce qui à écrit dans le champ à remplir...  
 
 
 
Bravo à celui qui trouve comment faire çA !

Message cité 1 fois
Message édité par Zebraman le 11-10-2006 à 20:00:48
n°17677
cmoila
Profil : Membre
Posté le 12-10-2006 à 01:33:06  profilanswer
 

Zebraman a écrit :

Salut tout le monde !  
 
Alors voilà je cherche un code en C ou C++ ca m'est complétement égal !  
Voilà ce que j'aimerais faire :  
 
- Faire une fenêtre normale  
 
- Faire un endroit dans cette fenêtre ou on puissent noté du texte  
 
- Ouvrir la console MS-DOS  
 
- Marquez des truc dedans  
 
- Et en même temps qu'ouvrir la console envoyer un mail à mon adresse avec ce qui à écrit dans le champ à remplir...  
 
 
 
Bravo à celui qui trouve comment faire çA !


 
 
Pour te donner une idée voila ce que VC++ génère comme base de code quand on crée un projet win32 vide. donc juste une fenetre sans utiliser de bibliothèque de classe.
 
 

Code :
  1. // ApplicationWin32.cpp : Defines the entry point for the application.
  2. //
  3. #include "stdafx.h"
  4. #include "ApplicationWin32.h"
  5. #define MAX_LOADSTRING 100
  6. // Global Variables:
  7. HINSTANCE hInst;        // current instance
  8. TCHAR szTitle[MAX_LOADSTRING];     // The title bar text
  9. TCHAR szWindowClass[MAX_LOADSTRING];   // the main window class name
  10. // Forward declarations of functions included in this code module:
  11. ATOM    MyRegisterClass(HINSTANCE hInstance);
  12. BOOL    InitInstance(HINSTANCE, int);
  13. LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
  14. LRESULT CALLBACK About(HWND, UINT, WPARAM, LPARAM);
  15. int APIENTRY _tWinMain(HINSTANCE hInstance,
  16.                      HINSTANCE hPrevInstance,
  17.                      LPTSTR    lpCmdLine,
  18.                      int       nCmdShow)
  19. {
  20.  // TODO: Place code here.
  21. MSG msg;
  22. HACCEL hAccelTable;
  23. // Initialize global strings
  24. LoadString(hInstance, IDS_APP_TITLE, szTitle, MAX_LOADSTRING);
  25. LoadString(hInstance, IDC_APPLICATIONWIN32, szWindowClass, MAX_LOADSTRING);
  26. MyRegisterClass(hInstance);
  27. // Perform application initialization:
  28. if (!InitInstance (hInstance, nCmdShow))
  29. {
  30.  return FALSE;
  31. }
  32. hAccelTable = LoadAccelerators(hInstance, (LPCTSTR)IDC_APPLICATIONWIN32);
  33. // Main message loop:
  34. while (GetMessage(&msg, NULL, 0, 0))
  35. {
  36.  if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg))
  37.  {
  38.   TranslateMessage(&msg);
  39.   DispatchMessage(&msg);
  40.  }
  41. }
  42. return (int) msg.wParam;
  43. }
  44. //
  45. //  FUNCTION: MyRegisterClass()
  46. //
  47. //  PURPOSE: Registers the window class.
  48. //
  49. //  COMMENTS:
  50. //
  51. //    This function and its usage are only necessary if you want this code
  52. //    to be compatible with Win32 systems prior to the 'RegisterClassEx'
  53. //    function that was added to Windows 95. It is important to call this function
  54. //    so that the application will get 'well formed' small icons associated
  55. //    with it.
  56. //
  57. ATOM MyRegisterClass(HINSTANCE hInstance)
  58. {
  59. WNDCLASSEX wcex;
  60. wcex.cbSize = sizeof(WNDCLASSEX);
  61. wcex.style   = CS_HREDRAW | CS_VREDRAW;
  62. wcex.lpfnWndProc = (WNDPROC)WndProc;
  63. wcex.cbClsExtra  = 0;
  64. wcex.cbWndExtra  = 0;
  65. wcex.hInstance  = hInstance;
  66. wcex.hIcon   = LoadIcon(hInstance, (LPCTSTR)IDI_APPLICATIONWIN32);
  67. wcex.hCursor  = LoadCursor(NULL, IDC_ARROW);
  68. wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
  69. wcex.lpszMenuName = (LPCTSTR)IDC_APPLICATIONWIN32;
  70. wcex.lpszClassName = szWindowClass;
  71. wcex.hIconSm  = LoadIcon(wcex.hInstance, (LPCTSTR)IDI_SMALL);
  72. return RegisterClassEx(&wcex);
  73. }
  74. //
  75. //   FUNCTION: InitInstance(HANDLE, int)
  76. //
  77. //   PURPOSE: Saves instance handle and creates main window
  78. //
  79. //   COMMENTS:
  80. //
  81. //        In this function, we save the instance handle in a global variable and
  82. //        create and display the main program window.
  83. //
  84. BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
  85. {
  86.    HWND hWnd;
  87.    hInst = hInstance; // Store instance handle in our global variable
  88.    hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
  89.       CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
  90.    if (!hWnd)
  91.    {
  92.       return FALSE;
  93.    }
  94.    ShowWindow(hWnd, nCmdShow);
  95.    UpdateWindow(hWnd);
  96.    return TRUE;
  97. }
  98. //
  99. //  FUNCTION: WndProc(HWND, unsigned, WORD, LONG)
  100. //
  101. //  PURPOSE:  Processes messages for the main window.
  102. //
  103. //  WM_COMMAND - process the application menu
  104. //  WM_PAINT - Paint the main window
  105. //  WM_DESTROY - post a quit message and return
  106. //
  107. //
  108. LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
  109. {
  110. int wmId, wmEvent;
  111. PAINTSTRUCT ps;
  112. HDC hdc;
  113. switch (message)
  114. {
  115. case WM_COMMAND:
  116.  wmId    = LOWORD(wParam);
  117.  wmEvent = HIWORD(wParam);
  118.  // Parse the menu selections:
  119.  switch (wmId)
  120.  {
  121.  case IDM_ABOUT:
  122.   DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About);
  123.   break;
  124.  case IDM_EXIT:
  125.   DestroyWindow(hWnd);
  126.   break;
  127.  default:
  128.   return DefWindowProc(hWnd, message, wParam, lParam);
  129.  }
  130.  break;
  131. case WM_PAINT:
  132.  hdc = BeginPaint(hWnd, &ps);
  133.  // TODO: Add any drawing code here...
  134.  EndPaint(hWnd, &ps);
  135.  break;
  136. case WM_DESTROY:
  137.  PostQuitMessage(0);
  138.  break;
  139. default:
  140.  return DefWindowProc(hWnd, message, wParam, lParam);
  141. }
  142. return 0;
  143. }
  144. // Message handler for about box.
  145. LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
  146. {
  147. switch (message)
  148. {
  149. case WM_INITDIALOG:
  150.  return TRUE;
  151. case WM_COMMAND:
  152.  if (LOWORD(wParam) == IDOK || LOWORD(wParam) == IDCANCEL)
  153.  {
  154.   EndDialog(hDlg, LOWORD(wParam));
  155.   return TRUE;
  156.  }
  157.  break;
  158. }
  159. return FALSE;
  160. }

n°17678
Zebraman
Profil : Jeune recrue
Posté le 12-10-2006 à 19:40:21  profilanswer
 

Arf... Je vois...  Mais vous auriez pas un moyen de le faire ?

n°17687
Zebraman
Profil : Jeune recrue
Posté le 13-10-2006 à 20:36:08  profilanswer
 

En MS DOS
 
Par exemple
 
Merci d'avance

n°17760
cmoila
Profil : Membre
Posté le 24-10-2006 à 19:23:45  profilanswer
 

Désolé de pas avoir répondu avant.
Tu peux rien faire en MS-DOS, c'est de la préhistoire.
Si tu te contentes d'un programme "en ligne" c'est à dire d'un programme dont les interactions avec l'utilisateur, sont réduite a un flux alphanumérique d'entrée et un de sortie, tu peux alors te passer de l'apprentissage d'une forme de programmation de l'interface graphique de windows. Mais des que tu parles fenêtre menu, souris, bouton etc....  tu es obligé de rentrer dans un système de programmation beaucoup plus lourd.
 
La plus primitive des façons de programmer l'interface de windows, c'est la bibliothèque API standard, comme dans le listing précédent. Il faut surtout pas apprendre ca maintenant surtout avec vista qui va rendre toutes ces fonctions obsolètes (c'est le mot favori de microsoft en programmation)
A mon avis le plus simple si tu veux une inteface graphique rapidement en C++, c'est d'utiliser un code CRT en visual C++ 2005 express. Déja rien qu'avec ca tu vas avoir des trucs à apprendre. Ensuite tu chercheras dans les fonctions de l'API ce qui te manque.


Aller à :
Ajouter une réponse