Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Open the physical table which is also included in exe
Message
 
To
12/05/2007 13:25:08
General information
Forum:
Visual FoxPro
Category:
Project manager
Environment versions
Visual FoxPro:
VFP 9 SP1
OS:
Windows XP SP1
Miscellaneous
Thread ID:
01224831
Message ID:
01225045
Views:
29
Tracy,

This trick works in all VFP versions. In earlier versions of VFP (with neither the ExecScript() function nor Compile command), we can include a compiled PRG (FXP file) in our EXE. Whenever needed, the FXP will be copied from the EXE to disk and called. We can then pass 'Use MyTable' to the FXP and execute it as a macro.

Ben


>How long has this been possible? I really missed it...
>
>
>
>
>>Dragan,
>>
>>The following command will open the external table rather than the one included in the EXE:
>>
>>ExecScript('Use MyTable')
>>
>>
>>Ben
>>
>>>>>>>Hah - I managed to put that all in the title.
>>>>>>>
>>>>>>>OK - here's the deal: a lookup table is included in the exe, and I'm writing an utility which would allow the developers to update it while running the exe. Now since it's included in the exe, it's read only. Is there a way to open the original table on disk instead, or will Fox open the included one no matter what I do?
>>>>>>
>>>>>>
>>>>>>
>>>>>>or will Fox open the included one no matter what I do?
>>>>>>

>>>>>>
>>>>>>:-))
>>>>>
>>>>>I feel stupid, I missed the joke... any help instead, bratko?
>>>>
>>>>VFP always search first in the EXE. So no matter what you'll do the table in EXE will be opened INSTEAD of when you build it in EXE first rename it to something else and use something like:
>>>>
>>>>
>>>>TRY
>>>>  USE MyExternalTable IN 0 ALIAS MyTable
>>>>CATCH
>>>>  *** The External Table don't exists
>>>>   USE MyInternalTable IN 0 ALIAS MyTable
>>>>ENDTRY
>>>>
>>>
>>>I tried a really dirty trick here... assuming that any machine is somehow in a network,
>>>
	lcLC=FULLPATH("mytable.dbf")
>>>	lcLC=CHRTRAN(lcLC, ":","$")
>>>	lcLC="\\127.0.0.1\"+lcLC
>>>	WAIT WINDOW lclc
>>>	USE (lcLC) ALIAS mytable
>>>
>>>but to no avail... can't outfox the fox, it still translates into the internal table... which is read only.
Previous
Reply
Map
View

Click here to load this message in the networking platform