MZP@ !L!This program must be run under Microsoft Windows. $NE  @P P q B00000 000 0 IdapiversionLIBENTRYWEP˸yBorland Standard File@|~@ RScriptFormDataFormUIManagerUIContainerUIObject f&open+close+canArrive2arrive2setFocus+canDepart2removeFocus+depart2mouseEnter,mouseExit,mouseMove,mouseDown,mouseUp,mouseDouble,mouseRightDown,mouseRightUp,mouseRightDouble,keyPhysical-keyChar-action.menuAction/timer4pushButton+changeValue0calcField+run+newValue+proc+error3status1mouseClick,init+stringListChange+UsesTypeVarConstProcXR 9; Creation et remplissage par SQL d'une table test ; puis execution de requetes test ; ; ; ------------------------------------------------------------ ; methode principal ; ------------------------------------------------------------ method run(var eventInfo Event) var newTab Table txt string tbl Tcursor str1,str2,str3,str4, idll String fs filesystem tsR textstream strWildLeft, strVN, strWildRight, strRead, strFile, strFileName, strReg1 string ; strIdapiPath string ;// moved to global Var arKeys1 array[] string arSubKeys1 array[] string arFormats array[] string arBreak1 array[] string arBreak2 array[] string liste popupmenu dyn1 dynarray[] anytype liB2, liN2, liX2, liSize2 longInt loLast, loCase, loVN logical endVar liste.addtext("Quelle dll examiner ?") liste.addSeparator() liste.addtext("IDAPI32.DLL") liste.addtext("IDR2000C.DLL") liste.addtext("IDR20009.DLL") liste.addSeparator() liste.addtext("IDDBAS32.DLL") liste.addtext("IDPDX32.DLL") liste.addtext("IDASCI32.DLL") liste.addtext("IDODBC32.DLL") liste.addtext("IDDAO32.DLL") liste.addtext("IDDA3532.DLL") liste.addtext("IDDR32.DLL") liste.addtext("IDBAT32.DLL") liste.addSeparator() liste.addtext("Configuration 1") liste.addtext("Configuration 2") liste.addSeparator() liste.addtext("Arreter le script ?") choix = liste.show() switch ; now take action based on selection case choix = "IDAPI32.DLL" : idll = "IDAPI32.DLL" case choix = "IDR2000C.DLL" : idll = "IDR2000C.DLL" case choix = "IDR20009.DLL" : idll = "IDR20009.DLL" case choix = "IDDBAS32.DLL" : idll = "IDDBAS32.DLL" case choix = "IDPDX32.DLL" : idll = "IDPDX32.DLL" case choix = "IDASCI32.DLL" : idll = "IDASCI32.DLL" case choix = "IDODBC32.DLL" : idll = "IDODBC32.DLL" case choix = "IDDAO32.DLL" : idll = "IDDAO32.DLL" case choix = "IDDA3532.DLL" : idll = "IDDA3532.DLL" case choix = "IDDR32.DLL" : idll = "IDDR32.DLL" case choix = "IDBAT32.DLL" : idll = "IDBAT32.DLL" case choix = "Configuration 1" : idll = "IDAPI32.CFG" case choix = "Configuration 2" : idll = "IDAPI.CFG" case choix = "Arreter le script ?" : return endSwitch strReg1 = "SOFTWARE\\Borland" enumRegistryKeys(strReg1, regKeyLocalMachine, arKeys1) sleep() for liN2 from 1 to arKeys1.size() breakapart(arKeys1[liN2],arBreak1,"\\") enumRegistryValueNames(strReg1 + "\\" + arBreak1[arBreak1.size()], regKeyLocalMachine, arSubKeys1) sleep() for liX2 from 1 to arSubKeys1.size() dyn1[arBreak1[arBreak1.size()] + ":" + arSubKeys1[liX2]] = getRegistryValue( strReg1 + "\\" + arBreak1[arBreak1.size()], arSubKeys1[liX2], RegKeyLocalMachine ) endFor endFor strIdapiPath = dyn1["Database Engine:DLLPATH"] strFile = "" ;strFileName = "C:\\Program Files\\Fichiers communs\\Borland Shared\\Bde\\idr2000c.dll" strFileName = strIdapiPath + "\\" + idll ;============================================================= ;// To see the Registry values returned in the DynArray dyn1, ;// remove the comments infront of line below used for testing. ; dyn1.view("Registry Values") ;//--Find Version Value in the Idapi32.dll file loLast = False if fs.findfirst(strFileName) then str3 = string(fs.time()) liSize2 = fs.size() str2 = string(liSize2) str4 = string(longint(liSize2/1024)) else msgstop("Erreur", "Soit, la DLL : "+idll+ "\nn'est pas prsente"+ "\ndans votre version de BDE"+ "\nCas par exemple d'Idr2000c.dll, et d'idr20009.dll"+ "\nsuivant la langue du BDE"+ "\n\nSoit le script chou et va s'arreter" ) return endif strFile = "" tsR.open(strFileName, "r") ;// Open the DLL in Read Only! tsR.setposition(liSize2 - 1000) for liB2 from liSize2 - 1000 to liSize2 - 1 tsR.readchars(strRead,1) if (ansicode(strRead) >= 46 and ansicode(strRead) < 122) then strFile = strFile + strRead loLast = False else if (ansicode(strRead) = 0 and loLast) then strFile = strFile + "" endif if ansicode(strRead) = 0 then loLast = True else loLast = False endif endif endfor tsR.close() sleep() loCase = isIgnoreCaseInStringCompares() If not loCase then IgnoreCaseInStringCompares(yes) endIf if strFile.match("..Fileversion..Internal..", strWildLeft, strVN, strWildRight) then breakapart(strVN,arBreak2, "") for liX2 from 1 to arBreak2.size() if arBreak2[liX2].size() > 1 then strVN = arBreak2[liX2] endif endfor loVN = True else loVN = False endif If not loCase then IgnoreCaseInStringCompares(No) endIf if not loVN = False then str1 = (strVN) else str1 ="inconnue" endif msginfo("version Interne de "+ idll , "Numero de votre version : "+(str1)+ "\n\nTaille en octets : "+(str2)+" octets,"+ "\nSoit une taille en Ko : "+ (str4)+" Ko"+ "\n\nDate-Heure (Timestamp) : "+(str3)+" " ) ;return(strVN) endmethod run+p].4QC:\Program Files\Corel\WordPerfect Office 2002\Paradox\PDOXHome\WINSTYLES.FTB#Script1POST>  Vd8  CONTAINERd\bACTIVE>LASTMOUSECLICKED\SUBJECTbZLASTMOUSERIGHTCLICKED<SELFZ#SCRIPT1?[8RUN METHOD_SELF EVENTINFO6AV,!Xw  METHOD_SELF l EVENTINFOqNEWTABLTXT0eTBLjSTR1\STR2xSTR3STR4IDLLFSHTSR(! STRWILDLEFTd?STRVN STRWILDRIGHTSTRREADSTRFILE STRFILENAMESTRREG1 ARKEYS1,8 ARSUBKEYS18 ARFORMATS!8ARBREAK1P8ARBREAK2L8LISTEmDYN18LIB2"ILIN2"aLIX2"1LISIZE2"LOLASTLOCASELOVNCHOIXP STRIDAPIPATHrrZ 2 f r Z   <  (D`|P4 4*tP%(H*P%(H*P%(H*P%(H*P %(H *lP(%(H(*BPD%(HD*P`%(H`*P|%(H|*P%(H*P%(H*pP%(H$*FP%(H@*P%(Hq \*( x, A(KA*,(t"Os,, ( %4($%(x A(KA*L(tL"O  $%4(,%(T %($%(,x AT*t'9'z*t*% % *t*t(H=(4H#= 4*H"=*x4 4*4% 4*b,%4(H%(d%(%(%(%(NA*(( ((%%*%("D?(( ("%("%%.%4(**t"%(h%%4(*"%(h,*t*t'(((KA((*t&( ,(8d !L *L(t"OUL,LL%((L,*',*t*t&( &(%X\*\T*p%4(\%(%(x%(%(%(%d(%H(%,(%(4%(MA <C(,4HPd (H=\x0L$ LTz L[E,Ad +  2|  2~4pT8,zsle`[VdQHL,GB=61,'"x\@ $|`D( )('&%$#"! z. 0Quelle dll examiner ? IDAPI32.DLL IDR2000C.DLL IDR20009.DLL IDDBAS32.DLL IDPDX32.DLL IDASCI32.DLL IDODBC32.DLL IDDAO32.DLL IDDA3532.DLL IDDR32.DLL IDBAT32.DLLConfiguration 1Configuration 2Arreter le script ? IDAPI32.CFG IDAPI.CFGSOFTWARE\Borland\:Database Engine:DLLPATHErreurSoit, la DLL :  n'est pas prsente dans votre version de BDE2 Cas par exemple d'Idr2000c.dll, et d'idr20009.dll suivant la langue du BDE) Soit le script chou et va s'arreterr..Fileversion..Internal..inconnueversion Interne de Numero de votre version : # Taille en octets :  octets, Soit une taille en Ko :  Ko Date-Heure (Timestamp) :