рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рд╕рдордЭрд╛рдКрдВрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рд╣рдорд╛рд░реЗ рд╕рдВрдХреЗрддрдХреЛрдВ (рднрд╛рдЧ 1, рднрд╛рдЧ 2) рдореЗрдВ рддрд░реНрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПред MSXNthArg рдФрд░ MSXNthCustomString: MSX рдбрд╛рдпрдиреЗрдорд┐рдХ рд▓рд╛рдпрдмреНрд░реЗрд░реА DLL рдХреЗ рддрд░реНрдХ рдореЗрдВ рджреЛ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВред
рдмрд╣рд╕
MSXNthArg рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдЖрд░рдВрднреАрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдЬрд┐рд╕рдореЗрдВ рддрд░реНрдХ рд╣реЛрддреЗ рд╣реИрдВред
BOOL __stdcall MSXNthArg (int a_iNthFunc, int a_iNthArg, MSXFuncArgDef *a_psFuncArgDef)
рдЬрд╣рд╛рдБ
тАв a_iNthFunc - рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХред
тАв a_iNthArg рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╣реИред
тАв a_psFuncArgDef - MSXFuncArgDef рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдлрд╝рдВрдХреНрд╢рди рджреЗрддрд╛ рд╣реИ:
тАв MSX_SUCCESS рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рд╕рд╣реА рд╣реИ рдФрд░
тАв рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ MSX_ERRORред
рд╕рднреА рддрд░реНрдХреЛрдВ рдХреЛ рдЪрд╛рд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
тАв MSXDataArray - рдбреЗрдЯрд╛ рдРрд░реЗ
тАв MSXNumeric - рд╕рдВрдЦреНрдпрд╛,
тАв MSXString - рд╕реНрдЯреНрд░рд┐рдВрдЧ,
тАв MSXCustom - рдХрд╕реНрдЯрдоред
рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрдкрдирд╛ рдкреНрд░рдХрд╛рд░ рдФрд░ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред MSXCustom рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рддрд░реНрдХ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЗрдЯ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рджрд╕реНрдп рдореБрдЭреЗ рдХрд╕реНрдЯрдо рддрд░реНрдХ рдХрд╣реЗрдВрдЧреЗред рдпрджрд┐ рддрд░реНрдХ рдкреНрд░рдХрд╛рд░ MSXCustom рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХрд╕реНрдЯрдо рддрд░реНрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреА рд╣реЛрдЧреАред рдпрд╣реА рд╣реИ, рдЬрдм рддрд░реНрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо MSXNthArg рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрддреЗ рд╣реИрдВ
рдЧреИрд░- MSXCustom рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП:
a_psFuncArgDef->iArgType = MSXDataArray;
MSXCustom рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП:
a_psFuncArgDef->iArgType = MSXCustom; a_psFuncArgDef->iNCustomStrings = 8;
MSXNthCustomString рдХрд╕реНрдЯрдо рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░ рд╣реИред
BOOL __stdcall MSXNthCustomString (int a_iNthFunc, int a_iNthArg, int a_iNthString, MSXFuncCustomString *a_psCustomString)
рдЬрд╣рд╛рдБ
тАв a_iNthFunc - рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХред
тАв a_iNthArg рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рд╣реИред
тАв a_iNthString - рдХрд╕реНрдЯрдо рддрд░реНрдХ рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХред
тАв a_psFuncArgDef - MSXFuncCustomString рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдХрд┐рд╕реА рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрд╕реНрдЯрдо рддрд░реНрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдлрд╝рдВрдХреНрд╢рди рдкрд┐рдЫрд▓реЗ рдорд╛рдиреЛрдВ рдХреЗ рд╕рдорд╛рди рдорд╛рди рд▓реМрдЯрд╛рддрд╛ рд╣реИред
рдХрд╕реНрдЯрдо рддрд░реНрдХ рдПрдХ рдЬреЛрдбрд╝реА рд╣реИ: рд╕реНрдЯреНрд░рд┐рдВрдЧ-рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ред MSXNthCustomString рдлрд╝рдВрдХреНрд╢рди рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдФрд░ рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ (рдЖрдИрдбреА) рдХреЗ рдкрддреНрд░рд╛рдЪрд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдПрдХ рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ, рдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдХрд╕реНрдЯрдо рддрд░реНрдХ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдХрд╕реНрдЯрдо рддрд░реНрдХреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рддрд╛рд░ рдореЗрдВ рдХреЗрд╡рд▓ рдЕрд▓реНрдлрд╝рд╛рдиреНрдпреВрдореЗрд░рд┐рдХ рд╡рд░реНрдг рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдФрд░ рд╡рд┐рд╢реЗрд╖ рд╡рд░реНрдгреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред рдХрд╕реНрдЯрдо рддрд░реНрдХ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд░реНрдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рджрд╕ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреАред рдпрд╣ рдордд рднреВрд▓реЛ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдФрд░ рддрд░реНрдХ 0 рд╕реЗ рдЧрд┐рдиреЗ рдЬрд╛рддреЗ рд╣реИрдВред
рдЕрдкрд╡рд╛рдж
рдореЗрдЯрд╛рд╕реНрдЯреЙрдХ рдХреНрд░реИрд╢ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд╣рд░реА рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдЕрдкрд╡рд╛рдж рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдЕрдкрд╡рд╛рдж рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:
тАв рдЕрдорд╛рдиреНрдп рддрд░реНрдХ,
тАв рдЖрдиреЗ рд╡рд╛рд▓реА (рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреБрдХреНрдд) рд╕рд░рдгреА рдореЗрдЯрд╛рд╕реНрдЯреЙрдХ рдорд╛рдирдХреЛрдВ рдХрд╛ рдЕрдиреБрдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИ (рднрд╛рдЧ 2 рджреЗрдЦреЗрдВ),
тАв рддрд░реНрдХ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ,
тАв рддрд░реНрдХ рд╕рддреНрдп рдирд╣реАрдВ рд╣реИ,
тАв рдЖрдЙрдЯрдкреБрдЯ (рдЧрдгрдирд╛ рдкрд░рд┐рдгрд╛рдо) рд╕рд░рдгреА рдореЗрдЯрд╛рд╕реНрдЯреЙрдХ рдорд╛рдирдХреЛрдВ рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдореЗрдВ рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рдВрднрд╛рд▓реЗрдВрдЧреЗ:
if ( , , ) { strncpy (a_psResult->szExtendedError, "Error: ", sizeof(a_psResult->szExtendedError)-1);
рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдЬреЛрдбрд╝реАрдВред
рдЙрджрд╛рд╣рд░рдг
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдореИрдВрдиреЗ рдЪрд╛рд░ рд╕рдВрдХреЗрддрдХ рдмрдирд╛рдП рдЬреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рд╕реМрджрд╛ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдХреЗрддрдХ рдХреЗ рджреЛ рддрд░реНрдХ рд╣реЛрддреЗ рд╣реИрдВ - рдПрдХ рд╕рд░рдгреА, рдФрд░ рджреВрд╕рд░рд╛ рдЪрд╛рд░ рдкреНрд░рдХрд╛рд░ рдХрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рднрд╛рдЧ рдореЗрдВ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдореИрдВрдиреЗ рдЪрд░рдгреЛрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЛ рдЪрд┐рддреНрд░рд┐рдд рдХрд┐рдпрд╛ред
рд╣рдо рддреАрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ: MSXStruc.h, Add.cpp, Add.defред рд╣рдорд╛рд░реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдирд╛рдо Add.dll рд╣реЛрдЧрд╛ред
рдЪрд░рдг 1 - рд╣реЗрдбрд░ рдФрд░ рдирд┐рд░реНрдпрд╛рддрдХреЛрдб #include <string.h> #include <stdlib.h> #include <math.h> #include <float.h> #include <tchar.h> #include "MSXStruc.h" #define DLL_EXPORT extern "C" __declspec(dllexport)
рдЪрд░рдг 2 - рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдкреИрд░рд╛рдореАрдЯрд░рдпрд╣рд╛рдВ рдлрд╝рдВрдХреНрд╢рди рдФрд░ рддрд░реНрдХреЛрдВ рдХреЗ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдкреИрд░рд╛рдореАрдЯрд░ рдкрдВрдЬреАрдХреГрдд рд╣реИрдВред
рдЪрд░рдг 3 - рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд╛рд░реНрдпрдЪрд╛рд░ рдХрд╛рд░реНрдп рдпрд╣рд╛рдБ рд╡рд░реНрдгрд┐рдд рд╣реИрдВ: MSXInfo, MSXNthFunction, MSXNthArg, MSXNthCustomStringред
рдЪрд░рдг 4 - рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рд░реНрдпрдпрд╣рд╛рдВ рд╣рдо рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд┐рдЦрддреЗ рд╣реИрдВред
рдХреЛрдб #define MSXMax(a,b) (((a) > (b)) ? (a) : (b)) #define MSXMin(a,b) (((a) < (b)) ? (a) : (b)) double ForceFloatRange (double a_lfDbl) { if (a_lfDbl > 0.0) { a_lfDbl = MSXMin (a_lfDbl, double(FLT_MAX)); a_lfDbl = MSXMax (a_lfDbl, double(FLT_MIN)); } else { if (a_lfDbl < 0.0) { a_lfDbl = MSXMax (a_lfDbl, double(-FLT_MAX)); a_lfDbl = MSXMin (a_lfDbl, double(-FLT_MIN)); } } return a_lfDbl; } /* MSXArray - MetaStock. MSXDataRec . , MSXDataRec. , , Metastock BasicData, . , , MetaStock'. */ BOOL MSXArray(const MSXDataRec *BasicData, const MSXDataInfoRec *ArgData) { if (ArgData->iFirstValid < 0) return FALSE; if (ArgData->iLastValid < 0) return FALSE; if (ArgData->iLastValid < ArgData->iFirstValid) return FALSE; if (ArgData->iFirstValid < BasicData->sClose.iFirstValid) return FALSE; if (ArgData->iLastValid > BasicData->sClose.iLastValid) return FALSE; return TRUE; }
рдЪрд░рдг 5 - рдмрд╛рд╣рд░реА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВfan1 рджреЛ рдбреЗрдЯрд╛ рд╕рд░рдгрд┐рдпреЛрдВ (
ExtFml ("Add.fan1", DA1, DA2) рдХреЛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдлрд╝рдВрдХреНрд╢рди рдХреЗ рджреЛ рддрд░реНрдХ рд╣реИрдВ, рджреЛрдиреЛрдВ рдбреЗрдЯрд╛ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИред
fan1 DLL_EXPORT BOOL __stdcall fan1 (const MSXDataRec *a_psBasic, const MSXDataInfoRecArgsArray *a_psArrayArgs, const MSXNumericArgsArray *a_psNumericArgs, const MSXStringArgsArray *a_psStringArgs, const MSXCustomArgsArray *a_psCustomArgs, MSXResultRec *a_psResult) { int i = 0;
fan2 рдбреЗрдЯрд╛ рд╕рд░рдгреА рдФрд░ рд╕рдВрдЦреНрдпрд╛ (
ExtFml ("Add.fan2", DA1, Numeric) рдХреЛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рджреЛ рддрд░реНрдХ рд╣реИрдВ, рдПрдХ рдбреЗрдЯрд╛ рд╕рд░рдгреА рд╣реИ, рджреВрд╕рд░рд╛ рдПрдХ рдирдВрдмрд░ рд╣реИред
fan2 DLL_EXPORT BOOL __stdcall fan2 (const MSXDataRec *a_psBasic, const MSXDataInfoRecArgsArray *a_psArrayArgs, const MSXNumericArgsArray *a_psNumericArgs, const MSXStringArgsArray *a_psStringArgs, const MSXCustomArgsArray *a_psCustomArgs, MSXResultRec *a_psResult) { int i = 0;
fan3 рдбреЗрдЯрд╛ рд╕рд░рдгреА рдФрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рд╕рд░рдгреА рдХреЛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ
(
ExtFml ("Add.fan3", DA1, DAStr) )ред
рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рджреЛ рддрд░реНрдХ рд╣реИрдВ, рдПрдХ рдбреЗрдЯрд╛ рд╕рд░рдгреА рд╣реИ, рджреВрд╕рд░рд╛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реИред
fan3 DLL_EXPORT BOOL __stdcall fan3 (const MSXDataRec *a_psBasic, const MSXDataInfoRecArgsArray *a_psArrayArgs, const MSXNumericArgsArray *a_psNumericArgs, const MSXStringArgsArray *a_psStringArgs, const MSXCustomArgsArray *a_psCustomArgs, MSXResultRec *a_psResult) { int i = 0; int iMinRecords = a_psBasic->sClose.iFirstValid; int iMaxRecords = a_psBasic->sClose.iLastValid; const MSXDataInfoRec *l_psInput1; l_psInput1 = a_psArrayArgs->psDataInfoRecs[0];
fan4 рдбреЗрдЯрд╛ рд╕рд░рдгреА рдФрд░ рдХрд╕реНрдЯрдо рддрд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдбреЗрдЯрд╛ рд╕рд░рдгреА рдХреЛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ
(
ExtFml ("Add.fan4", DA1, DACust) )ред
рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рджреЛ рддрд░реНрдХ рд╣реИрдВ, рдПрдХ рдбреЗрдЯрд╛ рдХреА рдПрдХ рд╕рд░рдгреА рд╣реИ, рджреВрд╕рд░рд╛ MSXCustom рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рддрд░реНрдХ рд╣реИред
fan4 DLL_EXPORT BOOL __stdcall fan4 (const MSXDataRec *a_psBasic, const MSXDataInfoRecArgsArray *a_psArrayArgs, const MSXNumericArgsArray *a_psNumericArgs, const MSXStringArgsArray *a_psStringArgs, const MSXCustomArgsArray *a_psCustomArgs, MSXResultRec *a_psResult) { int i = 0; int iMinRecords = a_psBasic->sClose.iFirstValid; int iMaxRecords = a_psBasic->sClose.iLastValid; const MSXDataInfoRec *l_psInput1; l_psInput1 = a_psArrayArgs->psDataInfoRecs[0];
рдЪрд░рдг 6 - DEF рдлрд╝рд╛рдЗрд▓рдиреАрдЪреЗ рдореЗрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг DEF рдлрд╝рд╛рдЗрд▓ рд╣реИред
DEF рдлрд╝рд╛рдЗрд▓ рдПрдХ рдЕрд▓рдЧ рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рдорд╛рди рдирд╛рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
Add.def LIBRARY Add EXPORTS MSXInfo MSXNthFunction MSXNthArg MSXNthCustomString fan1 fan2 fan3 fan4
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореЗрд░реЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рдореИрдВ рдореЗрдЯрд╛рд╕реНрдЯреЙрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрддрд┐рд╢реАрд▓ рдПрдордПрд╕рдПрдХреНрд╕ рдбреАрдПрд▓рдПрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рд╕реБрд▓рдн рддрд░реАрдХреЗ рд╕реЗ рд╕рдордЭрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред