Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Dectect a Grid on a Form
Message
 
 
To
07/12/2005 09:29:18
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 9
OS:
Windows XP SP2
Network:
Windows XP
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01075605
Message ID:
01075706
Views:
14
Della should take the credit. If I'm not mistaken she posted it while ago and I just picked up. I have a whole library of goodies from my old work. <g>

>That's even better. I just look if there's an application associated with .xls
>__
>>>Hi all ,
>>>
>>>How can I detect a Grid on a form ?
>>>How can I detect MS excel ?
>>>
>>>Best Regards
>>
>>* CheckServer.PRG
>>* Published in _Microsoft Office Automation with Visual FoxPro_,
>>* Hentzenwerke Publishing, June, 2000.
>>* www.hentzenwerke.com
>>* lWordExists = CheckServer("Word.Application")
>>* Copyright 2000 by Tamar E. Granor and Della Martin All Rights Reserved
>>
>>LPARAMETER cServerName
>>if vartype(cServerName)<>"C"
>>   cServerName = "Word.Application" && Default check for Word
>>endif
>>LOCAL oRegistry, cClassID, cEXEName, lEXEExists, ;
>>      aClassIDValues, aClassIDValues, aServerNameValues
>>
>>IF VERSION() >= "Visual FoxPro 06"
>>   oRegistry = NewObject("Registry", HOME() + "FFC\Registry")
>>ELSE
>>  SET PROCEDURE TO HOME() + "samples\classes\registry.prg" ADDITIVE
>>  oRegistry = CreateObject("Registry")
>>ENDIF
>>
>>lEXEExists = .F.
>>
>>DECLARE aClassIDValues[1], aServerNameValues[1]
>>
>>WITH oRegistry
>>  * Find the CLSID of the server. First, look for
>>  * the Class's Key.
>>  IF .OpenKey(cServerName + "\CLSID") = 0
>>    * The Class's Key is open, now enumerate its values
>>    .EnumKeyValues(@aClassIDValues)
>>
>>    * The data portion of the first (only) value returned
>>    * is the CLSID. Find the LocalServer32 key for the CLSID
>>    IF .OpenKey("CLSID\" + aClassIDValues[1,2] + "\LocalServer32") = 0
>>      * Enumerate the LocalServer32 values
>>      .EnumKeyValues(@aServerNameValues)
>>
>>      * The EXE file is stored in the first (only) data value returned.
>>      cEXEName = aServerNameValues[2]
>>
>>      * The value that's returned may have " -Automation" or " /Automation" or
>>      * " /AUTOMATION" & other trailing stuff at the end. Strip it off.
>>      IF "AUTO" $ UPPER(cEXEName)
>>        cEXEName = LEFT(cEXEName, ATC("AUTO", UPPER(cEXEName)) - 2)
>>      ENDIF
>>
>>      * Verify that the file exists
>>      lEXEExists = FILE(cEXEName)
>>    ENDIF
>>  ENDIF
>>ENDWITH
>>
>>RETURN lEXEExists
>>
If it's not broken, fix it until it is.


My Blog
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform