Hello again,
I was experimenting a little bit with the fs9gps:map and rose.
Actually i wanted to use these IGaugeCDrawable(s) via a c++ gauge. Using the panel_get_registered_c_callback etc.
I managed to create them both (note that id for the map is 0x10001 and for the rose is 0x100002 ) but unfortunately map doesn't draw at all.
The code behind the Draw method exposed by the map interface is empty.
The call address is 0x20856550 which is inside gps.dll but if you check the address you will see this.
xor al, al
retn 14h
As you can understand this portion of code can not draw the map.
I have tried to identify where the map is drawn but i couldn't find it.
One more thing. There a window (found with Spy++) having caption "MapWindow" (thats inside the fsui not in the 3d). This window is used by the weather dialog and the flightplan dialog is order to show the map (u know airspaces airport stations etc). MapWindow uses the same visualization with th fs9gps:map fact that leads me to the conclusion that the actual drawing is happening somewhere outside the gps.dll (note that only the rose map draw proc uses some gdi function inside the gps.dll which means that there is no other drawing inside the dll)
Is there any idea where the map drawing happens.
Thanks in advance!!
Kioussis Konstantinos.
ps. I have found where the L:vars are stored and also i made a 'hijack' at panels.dll in order to callback a user defined proc when write/read occurs.
I was experimenting a little bit with the fs9gps:map and rose.
Actually i wanted to use these IGaugeCDrawable(s) via a c++ gauge. Using the panel_get_registered_c_callback etc.
I managed to create them both (note that id for the map is 0x10001 and for the rose is 0x100002 ) but unfortunately map doesn't draw at all.
The code behind the Draw method exposed by the map interface is empty.
The call address is 0x20856550 which is inside gps.dll but if you check the address you will see this.
xor al, al
retn 14h
As you can understand this portion of code can not draw the map.
I have tried to identify where the map is drawn but i couldn't find it.
One more thing. There a window (found with Spy++) having caption "MapWindow" (thats inside the fsui not in the 3d). This window is used by the weather dialog and the flightplan dialog is order to show the map (u know airspaces airport stations etc). MapWindow uses the same visualization with th fs9gps:map fact that leads me to the conclusion that the actual drawing is happening somewhere outside the gps.dll (note that only the rose map draw proc uses some gdi function inside the gps.dll which means that there is no other drawing inside the dll)
Is there any idea where the map drawing happens.
Thanks in advance!!
Kioussis Konstantinos.
ps. I have found where the L:vars are stored and also i made a 'hijack' at panels.dll in order to callback a user defined proc when write/read occurs.




