Merci pour tout !!!!
J'ai bel et bien vérifié avec CCleaner mais aucun pb de détecté sur ma machine...peut être est ce dû à une gestion spécifique des fenêtres par Windows 8 ???
Je ne parviens pas à faire suire la taille de ma form par le panel, avec mon code il y a juste le form à sa taille de départ ou plein écran, mais je ne parviens pas à l'étirer comme je veux....

Pour la conception, c'est juste un TForm vide avec un panel qui prend toute la place. Le résultat fini sera sur Github -> Technologiescollege -> Blockly@rduino_AIO
Code .h
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
//---------------------------------------------------------------------------
#ifndef Unit83H
#define Unit83H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#define WM_FILLPANEL WM_USER + 2
//---------------------------------------------------------------------------
class TForm83 : public TForm
{
__published:	// Composants gérés par l'EDI
	TPanel *Panel1;
	void __fastcall FillPanel(TMessage& Msg);
	void __fastcall FormResize(TObject *Sender);
	void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
private:	// Déclarations utilisateur
 
public:		// Déclarations utilisateur
	__fastcall TForm83(TComponent* Owner);  
protected:
  BEGIN_MESSAGE_MAP
	   MESSAGE_HANDLER(WM_FILLPANEL, TMessage, FillPanel)
	END_MESSAGE_MAP(TComponent)
 
};
//---------------------------------------------------------------------------
extern PACKAGE TForm83 *Form83;
//---------------------------------------------------------------------------
#endif
Code .cpp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit83.h"
#include <iostream>
using namespace std;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm83 *Form83;
 
HWND MelonHwnd=0;
 
bool __stdcall EnumProc(HWND hWnd,/*LPARAM*/long/*lp*/);
//---------------------------------------------------------------------------
__fastcall TForm83::TForm83(TComponent* Owner)
	: TForm(Owner)
{
 Panel1->Width=Form83->Width;
 Panel1->Height=Form83->Height;
 AnsiString LigneDeCommande("K-Meleon\\k-meleon.exe ");
 LigneDeCommande+= ExtractFilePath(Application->ExeName) + "wwwBlocklyArduino\\index.html";
 PROCESS_INFORMATION ProcInfo={0};
 STARTUPINFO StartInfo={0}; // name structure
 StartInfo.cb = sizeof(StartInfo); // Set structure size
 StartInfo.wShowWindow=SW_HIDE;
 CreateProcess(NULL, LigneDeCommande.c_str() , NULL, NULL, true, DETACHED_PROCESS, NULL,NULL, &StartInfo, &ProcInfo);
 WaitForInputIdle(ProcInfo.hThread, INFINITE);
 Sleep(2000);
 Application->ProcessMessages();
 PostMessage(Handle, WM_FILLPANEL, 0 ,0);
}
//---------------------------------------------------------------------------
bool __stdcall EnumProc(HWND hWnd,/*LPARAM*/long/*lp*/)
{
   unsigned long* pPid;   //LPDWORD
   unsigned long result;      //DWORD
   void *hg;                  //HGLOBAL
   unsigned long id;
 
   if(hWnd==NULL)
	  return false;
 
   hg = GlobalAlloc(GMEM_SHARE,sizeof(unsigned long));
   pPid = (unsigned long *)GlobalLock(hg);
 
   result = GetWindowThreadProcessId(hWnd,pPid);
 
   if(result){
	  char title[110];
	  char className[95];
	  char totalStr[256];
	  GetClassName(hWnd,className,95);
	  if((string(className)).find("KMeleon Browser")!= -1) //recherche de la fenêtre dont le nom possède la chaîne "KMeleon..."
		MelonHwnd=hWnd;
	}
   else{
	  GlobalUnlock(hg);
	  GlobalFree(hg);
	  return false;
   }
   GlobalUnlock(hg);
   GlobalFree(hg);
   return true;
}
 
//---------------------------------------------------------------------
void __fastcall TForm83::FillPanel(TMessage& Msg)
{
 long lp=0;
 EnumWindows((WNDENUMPROC)EnumProc,lp);
 if(MelonHwnd){
	LONG lStyle = GetWindowLong(MelonHwnd, GWL_STYLE);
	lStyle &= ~(WS_BORDER | WS_MINIMIZE | WS_MAXIMIZE | WS_SYSMENU);
	SetWindowLong(MelonHwnd, GWL_STYLE, lStyle);
	SetWindowPos(MelonHwnd, 0, 0, 0, 0, 0, SWP_FRAMECHANGED);
	::SetParent(MelonHwnd,Panel1->Handle);
	SendMessage(MelonHwnd,WM_CHANGEUISTATE,UIS_CLEAR,0);
	ShowWindow(MelonHwnd,SW_MAXIMIZE);
 }
}
//---------------------------------------------------------------------
void __fastcall TForm83::FormResize(TObject *Sender)
{
 Panel1->Width=Form83->Width;
 Panel1->Height=Form83->Height;      
 PostMessage(Handle, WM_FILLPANEL, 0 ,0);
}
//---------------------------------------------------------------------------
void __fastcall TForm83::FormClose(TObject *Sender, TCloseAction &Action)
{
PostMessage(MelonHwnd,WM_CLOSE,0,0);
}
J'y retourne ! Encore merci !!!