Page 15 - Upgrading to ExtendSim 10
P. 15

If your code calls a DLL or Shared Library that returns a pointer, you need to change the code to save the returned
value to a pointertype. See the Technical Reference for more information.
The procedure address returned by DLLmakeProcInstance and similar functions is NOT a 64-bit Pointertype
variable. Instead, it is a 32-bit (4-byte) integer index that points to a pointer internal to ES10. This means the 32-bit
block code used in previous releases is compatible with the 64-bit code of ES10.
DLLLongCFunction, DLLLongPascalFunction, and DLLLongStdCallFunction all call a DLL that returns a 64-bit
integer that can be saved as either a ModL integer (32-bit) or, if needed, a pointertype (64-bit integer/pointer).
 Use the Icon Positioner if model connection lines are misaligned:
 
  
Each animation object now has a Properties dialog that allows you to see the object’s zOrder, exactly positioning it
within the layers of animation objects.
When models that were built prior to ExtendSim 10 are converted to ExtendSim 10 the position of the model’s
blocks could be slightly different, causing connection lines to be unaligned. In those cases, the Icon Positioner can be
used to adjust the relative location of the icon within the Icon tab so that the connection lines to the block are
correctly aligned. This adjustment has already been made in the current ExtendSim libraries, but you may want to
use the positioner for any custom blocks that have been converted from earlier versions.
The Show icon positioner checkbox, located in the Icon tab of the block’s structure, hides and shows the
icon positioner, the pink icon shown here. By default, the icon positioner is located at the upper leftmost
position of the icon’s graphic items. The Reset Icon Positioner button resets the location of the icon positioner to the
To use the icon positioner, first determine approximately how many pixels and in what direction the icon needs to
move so that the connection lines are aligned. Then in the Icon tab select the icon positioner and move it with the
cursor or the keyboard arrow keys.
There is also a ModL function, blockAdjustPosition, that uses the location of the item positioner to shift the
location of the block by the offset of the positioner location.
DateToString, TimeToString, and CalcDate are no longer supported. See instead the EDDateToString and
EDCalcDate functions in the Technical Reference.
There are new EColor functions that store the color information as a single integer, rather than using RGV or HSV.
(Legacy functions that use and support the old color information are still working in ES10.)
As of release 10 ExtendSim no longer supports Dynamic Data Exchange (DDE). It is an outmoded approach that's
incompatible with many IT setups, is no longer recommended for use, and is not really being supported by Microsoft.
Use instead any of the other IPC capabilities ExtendSim supports, such as OLE.

   11   12   13   14   15