Index: trunk/ab5.0/abdev/abdev/MessageCallOperation.cpp
===================================================================
--- trunk/ab5.0/abdev/abdev/MessageCallOperation.cpp	(revision 625)
+++ trunk/ab5.0/abdev/abdev/MessageCallOperation.cpp	(revision 629)
@@ -41,5 +41,5 @@
 	CallBackNameLen=pWindowInfo->GetCallbackName().size();
 
-	buffer = ReadBuffer( projectInfo.GetWorkDir().GetPath() + pWindowInfo->GetSourceFileName() );
+	buffer = ReadBuffer( projectInfo.GetWorkDir().GetPath() + pWindowInfo->GetSourceFileNameForOldVer( projectInfo.GetWorkDir().GetPath() ) );
 
 	*num=0;
@@ -50,79 +50,83 @@
 	//メッセージ
 	*ppItemEventInfo=(ITEMEVENTINFO *)HeapAlloc(hHeap,HEAP_ZERO_MEMORY,sizeof(ITEMEVENTINFO));
-	for(i=0,i4=0;;i++){
-		if(buffer[i]=='\0') break;
-
-		//注釈（複数行）
-		if(buffer[i]=='/'&&buffer[i+1]=='*'){
-			i+=2;
-			while(!(buffer[i]=='*'&&buffer[i+1]=='/')){
-				if(buffer[i]=='\0'){
-					i--;
-					break;
-				}
-				i++;
-			}
-			continue;
-		}
-
-		if((buffer[i]=='\r'&&buffer[i+1]=='\n'&&buffer[i+2]!='\0')||i==0){
-			if(buffer[i]=='\r'&&buffer[i+1]=='\n') i2=i+2;
-			else i2=i;
-			while(buffer[i2]>='0'&&buffer[i2]<='9') i2++;
-			while(buffer[i2]==' '||buffer[i2]=='\t') i2++;
-			if(memicmp(buffer+i2,"Sub",3)==0&&(buffer[i2+3]==' '||buffer[i2+3]=='\t')){
-				i2+=4;
+
+	if( buffer )
+	{
+		for(i=0,i4=0;;i++){
+			if(buffer[i]=='\0') break;
+
+			//注釈（複数行）
+			if(buffer[i]=='/'&&buffer[i+1]=='*'){
+				i+=2;
+				while(!(buffer[i]=='*'&&buffer[i+1]=='/')){
+					if(buffer[i]=='\0'){
+						i--;
+						break;
+					}
+					i++;
+				}
+				continue;
+			}
+
+			if((buffer[i]=='\r'&&buffer[i+1]=='\n'&&buffer[i+2]!='\0')||i==0){
+				if(buffer[i]=='\r'&&buffer[i+1]=='\n') i2=i+2;
+				else i2=i;
+				while(buffer[i2]>='0'&&buffer[i2]<='9') i2++;
 				while(buffer[i2]==' '||buffer[i2]=='\t') i2++;
-				strncpy(temporary,buffer+i2,NameLen);
-				temporary[NameLen]=0;
-				if( pWindowInfo->GetName() == temporary && buffer[i2+NameLen] == '_' ){
-					for(i2+=NameLen+1,i3=0;;i2++,i3++){
-						if(!IsVariableChar(buffer[i2])){
-							temporary[i3]=0;
-							break;
-						}
-						temporary[i3]=buffer[i2];
-					}
-					i6=GetItemMessageInfo(WndInfoNum,temporary,temp2);
-					if(i6){
-						//アイテムメッセージ（WM_COMMAND、WM_NOTIFY）
-						for(i5=0;;i5++){
-							if((*ppItemEventInfo)[i5].IdName==0){
-								*ppItemEventInfo=(ITEMEVENTINFO *)HeapReAlloc(hHeap,HEAP_ZERO_MEMORY,*ppItemEventInfo,(i4+2)*sizeof(ITEMEVENTINFO));
-								(*ppItemEventInfo)[i4].IdName=(char *)HeapAlloc(hHeap,0,lstrlen(temporary)+1);
-								lstrcpy((*ppItemEventInfo)[i4].IdName,temporary);
-								(*ppItemEventInfo)[i4].pEventNames=(char **)HeapAlloc(hHeap,0,1);
-								(*ppItemEventInfo)[i4].ClassID=i6;
-								i4++;
+				if(memicmp(buffer+i2,"Sub",3)==0&&(buffer[i2+3]==' '||buffer[i2+3]=='\t')){
+					i2+=4;
+					while(buffer[i2]==' '||buffer[i2]=='\t') i2++;
+					strncpy(temporary,buffer+i2,NameLen);
+					temporary[NameLen]=0;
+					if( pWindowInfo->GetName() == temporary && buffer[i2+NameLen] == '_' ){
+						for(i2+=NameLen+1,i3=0;;i2++,i3++){
+							if(!IsVariableChar(buffer[i2])){
+								temporary[i3]=0;
 								break;
 							}
-							if(lstrcmp((*ppItemEventInfo)[i5].IdName,temporary)==0) break;
+							temporary[i3]=buffer[i2];
 						}
-						(*ppItemEventInfo)[i5].pEventNames=(char **)HeapReAlloc(hHeap,0,(*ppItemEventInfo)[i5].pEventNames,((*ppItemEventInfo)[i5].EventNum+1)*sizeof(char *));
-						(*ppItemEventInfo)[i5].pEventNames[(*ppItemEventInfo)[i5].EventNum]=(char *)HeapAlloc(hHeap,0,lstrlen(temp2)+1);
-						lstrcpy((*ppItemEventInfo)[i5].pEventNames[(*ppItemEventInfo)[i5].EventNum],temp2);
-						(*ppItemEventInfo)[i5].EventNum++;
+						i6=GetItemMessageInfo(WndInfoNum,temporary,temp2);
+						if(i6){
+							//アイテムメッセージ（WM_COMMAND、WM_NOTIFY）
+							for(i5=0;;i5++){
+								if((*ppItemEventInfo)[i5].IdName==0){
+									*ppItemEventInfo=(ITEMEVENTINFO *)HeapReAlloc(hHeap,HEAP_ZERO_MEMORY,*ppItemEventInfo,(i4+2)*sizeof(ITEMEVENTINFO));
+									(*ppItemEventInfo)[i4].IdName=(char *)HeapAlloc(hHeap,0,lstrlen(temporary)+1);
+									lstrcpy((*ppItemEventInfo)[i4].IdName,temporary);
+									(*ppItemEventInfo)[i4].pEventNames=(char **)HeapAlloc(hHeap,0,1);
+									(*ppItemEventInfo)[i4].ClassID=i6;
+									i4++;
+									break;
+								}
+								if(lstrcmp((*ppItemEventInfo)[i5].IdName,temporary)==0) break;
+							}
+							(*ppItemEventInfo)[i5].pEventNames=(char **)HeapReAlloc(hHeap,0,(*ppItemEventInfo)[i5].pEventNames,((*ppItemEventInfo)[i5].EventNum+1)*sizeof(char *));
+							(*ppItemEventInfo)[i5].pEventNames[(*ppItemEventInfo)[i5].EventNum]=(char *)HeapAlloc(hHeap,0,lstrlen(temp2)+1);
+							lstrcpy((*ppItemEventInfo)[i5].pEventNames[(*ppItemEventInfo)[i5].EventNum],temp2);
+							(*ppItemEventInfo)[i5].EventNum++;
+						}
+						else if(temporary[0]){
+							//一般メッセージ
+							ppNames=(char **)HeapReAlloc(hHeap,0,ppNames,(*num+1)*sizeof(char *));
+							ppNames[*num]=(char *)HeapAlloc(hHeap,0,lstrlen(temporary)+1);
+							lstrcpy(ppNames[*num],temporary);
+							(*num)++;
+						}
 					}
-					else if(temporary[0]){
-						//一般メッセージ
-						ppNames=(char **)HeapReAlloc(hHeap,0,ppNames,(*num+1)*sizeof(char *));
-						ppNames[*num]=(char *)HeapAlloc(hHeap,0,lstrlen(temporary)+1);
-						lstrcpy(ppNames[*num],temporary);
-						(*num)++;
+				}
+				if(memicmp(buffer+i2,"Function",8)==0&&(buffer[i2+8]==' '||buffer[i2+8]=='\t')){
+					//[WndName]_WindowProcのみFunction定義
+					i2+=9;
+					while(buffer[i2]==' '||buffer[i2]=='\t') i2++;
+					if(memicmp(buffer+i2,pWindowInfo->GetCallbackName().c_str(),CallBackNameLen)==0&&
+						(buffer[i2+CallBackNameLen]==' '||buffer[i2+CallBackNameLen]=='\t'||buffer[i2+CallBackNameLen]=='(')){
+						*pbAlways=1;
 					}
 				}
 			}
-			if(memicmp(buffer+i2,"Function",8)==0&&(buffer[i2+8]==' '||buffer[i2+8]=='\t')){
-				//[WndName]_WindowProcのみFunction定義
-				i2+=9;
-				while(buffer[i2]==' '||buffer[i2]=='\t') i2++;
-				if(memicmp(buffer+i2,pWindowInfo->GetCallbackName().c_str(),CallBackNameLen)==0&&
-					(buffer[i2+CallBackNameLen]==' '||buffer[i2+CallBackNameLen]=='\t'||buffer[i2+CallBackNameLen]=='(')){
-					*pbAlways=1;
-				}
-			}
-		}
-	}
-	HeapDefaultFree(buffer);
+		}
+		HeapDefaultFree(buffer);
+	}
 
 	return ppNames;
@@ -136,9 +140,9 @@
 	ActiveBasic::PM::WindowInfo *pWindowInfo = projectInfo.windowInfos[WndInfoNum];
 
-	hChild=OpenFileWithExtension( projectInfo.GetWorkDir().GetPath() + pWindowInfo->GetSourceFileName() );
+	hChild=OpenFileWithExtension( projectInfo.GetWorkDir().GetPath() + pWindowInfo->GetSourceFileNameForOldVer( projectInfo.GetWorkDir().GetPath() ) );
 	if(!hChild) return;
 	WndNum=GetWndNum(hChild);
 
-	pBuf=MdiInfo[WndNum].pMdiTextEdit->buffer;
+	pBuf=MdiInfo[WndNum]->pMdiTextEdit->buffer;
 
 	for(i=0;;i++){
@@ -195,5 +199,5 @@
 		TextEdit_SetSel(WndNum,i+2,i+i2);
 	}
-	SetFocus(MdiInfo[WndNum].pMdiTextEdit->hEdit);
+	SetFocus(MdiInfo[WndNum]->pMdiTextEdit->hEdit);
 }
 void InsertEventToList(HWND hList,int ItemNum,char *EventName,char *MessageName,char *OutLine){
@@ -221,5 +225,5 @@
 
 	MaxCount=ListView_GetItemCount(hList);
-	if(MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]==SELECT_WINDOW){
+	if(MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]==SELECT_WINDOW){
 		if(dwEventType==EVENTTYPE_DEFAULT){
 			for(i=0;i<MaxCount;i++){
@@ -296,5 +300,5 @@
 				sprintf(EventName,"%s_%s_%s",
 					pWindowInfo->GetName().c_str(),
-					pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->GetName().c_str(),
+					pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->GetName().c_str(),
 					temporary);
 				break;
@@ -303,5 +307,5 @@
 		if(i==MaxCount) return 0;
 
-		if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_LISTVIEW){
+		if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_LISTVIEW){
 			//ListView
 			if(i==0) lstrcpy(Parameter,"ByRef nmListView As NMLISTVIEW");
@@ -327,18 +331,18 @@
 			else if(i==20) lstrcpy(Parameter,"ByRef nmLVDispInfo As NMLVDISPINFO");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_PROGRESSBAR){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_PROGRESSBAR){
 			//ProgressBar
 			lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TRACKBAR){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_TRACKBAR){
 			//TrackBar
 			lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TREEVIEW){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_TREEVIEW){
 			//TreeView
 			if(0<=i&&i<=7) lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
 			else lstrcpy(Parameter,"ByRef nmTreeView As NMTREEVIEW");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_UPDOWN){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_UPDOWN){
 			//UpDown
 			if(i==0) lstrcpy(Parameter,"ByRef nmHdr As NMHDR");
@@ -400,7 +404,7 @@
 
 	WndNum=GetWndNum(GetWindow(hClient,GW_CHILD));
-	ActiveBasic::PM::WindowInfo *pWindowInfo = GetWndInfo(MdiInfo[WndNum].path);
+	ActiveBasic::PM::WindowInfo *pWindowInfo = GetWndInfo(MdiInfo[WndNum]->path);
 	i=0;
-	if(MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]==SELECT_WINDOW){
+	if(MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]==SELECT_WINDOW){
 		EnableWindow(GetDlgItem(hDlg,IDC_DEFAULT),1);
 		EnableWindow(GetDlgItem(hDlg,IDC_MENU),1);
@@ -458,15 +462,15 @@
 		EnableWindow(GetDlgItem(hDlg,IDC_MMSYS),0);
 		SendDlgItemMessage(hDlg,IDC_DEFAULT,BM_SETCHECK,BST_CHECKED,0);
-		if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_BUTTON){
+		if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_BUTTON){
 			//Button
 			InsertEventToList(hList,i++,"Click","BN_CLICKED","ﾎﾞﾀﾝがｸﾘｯｸされた時");
 			InsertEventToList(hList,i++,"DblClick","BN_DBLCLK","ﾎﾞﾀﾝがﾀﾞﾌﾞﾙ ｸﾘｯｸされた時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_CHECKBOX){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_CHECKBOX){
 			//CheckBox
 			InsertEventToList(hList,i++,"Click","BN_CLICKED","ﾁｪｯｸ ﾎﾞｯｸｽがｸﾘｯｸされた時");
 			InsertEventToList(hList,i++,"DblClick","BN_DBLCLK","ﾁｪｯｸ ﾎﾞｯｸｽがﾀﾞﾌﾞﾙ ｸﾘｯｸされた時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_COMBOBOX){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_COMBOBOX){
 			//ComboBox
 			InsertEventToList(hList,i++,"CloseUp","CBN_CLOSEUP","ﾘｽﾄ ﾎﾞｯｸｽが非表示になる時");
@@ -482,5 +486,5 @@
 			InsertEventToList(hList,i++,"SetFocus","CBN_SETFOCUS","入力ﾌｫｰｶｽを取得した時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_EDIT){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_EDIT){
 			//Edit
 			InsertEventToList(hList,i++,"Change","EN_CHANGE","ｴﾃﾞｨｯﾄ ﾎﾞｯｸｽの内容が変更された時（後処理）");
@@ -493,10 +497,10 @@
 			InsertEventToList(hList,i++,"VScroll","EN_VSCROLL","垂直ｽｸﾛｰﾙを行った時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_IMAGEBOX){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_IMAGEBOX){
 			//ImageBox
 			InsertEventToList(hList,i++,"Click","STN_CLICKED","ｲﾒｰｼﾞ ﾎﾞｯｸｽがｸﾘｯｸされた時");
 			InsertEventToList(hList,i++,"DblClick","STN_DBLCLK","ｲﾒｰｼﾞ ﾎﾞｯｸｽがﾀﾞﾌﾞﾙ ｸﾘｯｸされた時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_LISTBOX){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_LISTBOX){
 			//ListBox
 			InsertEventToList(hList,i++,"SelChange","LBN_SELCHANGE","ﾘｽﾄ内の選択が変更された時");
@@ -507,23 +511,23 @@
 			InsertEventToList(hList,i++,"SetFocus","LBN_SETFOCUS","入力ﾌｫｰｶｽを取得した時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_LISTVIEW){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_LISTVIEW){
 			//ListView
 			i=SetDefaultNotifyMessagesInList(hList,CT_LISTVIEW);
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_PROGRESSBAR){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_PROGRESSBAR){
 			//ProgressBar
 			InsertEventToList(hList,i++,"OutOfMemory","NM_OUTOFMEMORY","ﾒﾓﾘ不足でｺﾝﾄﾛｰﾙの動作が完了できない時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_RADIOBUTTON){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_RADIOBUTTON){
 			//RadioButton
 			InsertEventToList(hList,i++,"Click","BN_CLICKED","ﾗｼﾞｵ ﾎﾞﾀﾝがｸﾘｯｸされた時");
 			InsertEventToList(hList,i++,"DblClick","BN_DBLCLK","ﾗｼﾞｵ ﾎﾞﾀﾝがﾀﾞﾌﾞﾙ ｸﾘｯｸされた時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_STATIC){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_STATIC){
 			//Static
 			InsertEventToList(hList,i++,"Click","STN_CLICKED","ｽﾀﾃｨｯｸ ﾃｷｽﾄがｸﾘｯｸされた時");
 			InsertEventToList(hList,i++,"DblClick","STN_DBLCLK","ｽﾀﾃｨｯｸ ﾃｷｽﾄがﾀﾞﾌﾞﾙ ｸﾘｯｸされた時");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TRACKBAR){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_TRACKBAR){
 			//TrackBar
 			InsertEventToList(hList,i++,"OutOfMemory","NM_OUTOFMEMORY","ﾒﾓﾘ不足でｺﾝﾄﾛｰﾙの動作が完了できない時");
@@ -531,9 +535,9 @@
 			InsertEventToList(hList,i++,"CustomDraw","NM_CUSTOMDRAW ","ｶｽﾀﾑ描画操作の通知");
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_TREEVIEW){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_TREEVIEW){
 			//TreeView
 			i=SetDefaultNotifyMessagesInList(hList,CT_TREEVIEW);
 		}
-		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum].MdiRadInfo->SelectingItem[0]]->Control==CT_UPDOWN){
+		else if(pWindowInfo->childWindowInfos[MdiInfo[WndNum]->MdiRadInfo->SelectingItem[0]]->Control==CT_UPDOWN){
 			//UpDown
 			InsertEventToList(hList,i++,"OutOfMemory","NM_OUTOFMEMORY","ﾒﾓﾘ不足でｺﾝﾄﾛｰﾙの動作が完了できない時");
@@ -595,5 +599,5 @@
 		hList=GetDlgItem(hwnd,IDC_EVENTLIST);
 		WndNum=GetWndNum(GetWindow(hClient,GW_CHILD));
-		WndInfoNum=GetWndInfoNum(MdiInfo[WndNum].path);
+		WndInfoNum=GetWndInfoNum(MdiInfo[WndNum]->path);
 
 		ListView_DeleteAllItems(hList);
@@ -644,5 +648,5 @@
 			{
 				WndNum=GetWndNum(GetWindow(hClient,GW_CHILD));
-				ActiveBasic::PM::WindowInfo *pWindowInfo = GetWndInfo(MdiInfo[WndNum].path);
+				ActiveBasic::PM::WindowInfo *pWindowInfo = GetWndInfo(MdiInfo[WndNum]->path);
 				NowMenuNum=GetMenuInfoNum(pWindowInfo->GetMenuIdName().c_str());
 			}
@@ -671,5 +675,5 @@
 					hList=GetDlgItem(hwnd,IDC_EVENTLIST);
 					WndNum=GetWndNum(GetWindow(hClient,GW_CHILD));
-					WndInfoNum=GetWndInfoNum(MdiInfo[WndNum].path);
+					WndInfoNum=GetWndInfoNum(MdiInfo[WndNum]->path);
 					if(GetEventProcedureNameFromListView(hList,WndNum,WndInfoNum,temporary,temp2,dwEventType)){
 						SelectProcedureOfMessageCall(WndInfoNum,temporary,temp2);
@@ -689,5 +693,5 @@
 					hList=GetDlgItem(hwnd,IDC_EVENTLIST);
 					WndNum=GetWndNum(GetWindow(hClient,GW_CHILD));
-					WndInfoNum=GetWndInfoNum(MdiInfo[WndNum].path);
+					WndInfoNum=GetWndInfoNum(MdiInfo[WndNum]->path);
 					if(GetEventProcedureNameFromListView(hList,WndNum,WndInfoNum,temporary,temp2,dwEventType)){
 						sprintf(temporary+lstrlen(temporary),"(%s)",temp2);
