Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
After building under VFP9 new forms are missing from exe
Message
 
 
To
15/12/2005 06:13:54
Cetin Basoz
Engineerica Inc.
Izmir, Turkey
General information
Forum:
Visual FoxPro
Category:
Troubleshooting
Environment versions
Visual FoxPro:
VFP 9
OS:
Windows XP SP2
Miscellaneous
Thread ID:
01078041
Message ID:
01078207
Views:
20
Would it work if you remove ( and " in your do form statements?

Also here we put all the forms into the project ourselves. We're not using forms (scx), but rather vcx based forms.

If we try to build a project from the main program, only few programs will get inserted. In other words, here we're obliged to always insert new classes, reports, programs, etc. into the project manually. We keep the project in VSS.

>You're lucky then:) I don't use createobject() nor set classlib but NewObject().
>Here is some more interesting observation:
>I created a little prg to pull all files in the project and call them explicitly by their fullpath. It looks like:
>
>
>*Main.prg
>do progs\ProjectFiles.prg
>...
>
>*ProjectFiles.prg
>if .f.
> do form ("c:\myDevPath\Forms\FormName.scx")
>...
> do ("c:\myDevPath\Progs\ProgName.prg")
>...
> report form ("c:\myDevPath\Reports\RepName.frx")
>...
> set classlib to ("c:\myDevPath\Classes\ClassName.vcx")
>...
>endif
>
I created a new project, just put the main.prg in it and rebuild the project. Guess what. All those new (relatively) forms are missing from the project!!! Worse a lot more than old reports are missing etc.
>Tried a few workarounds to no avail and getting extremely frustrated by this. Up to date it has been a piece of cake to compile an exe but now:(
>Cetin
>
>>Not to any consolation, but the exact same scenario works fine here. E.g. we have doForm function as part of MereMortals framework. All classes are included in the project. There is a metafile, which is either getting re-created from the project file (in debug mode, where you have debug.txt file present), or using existed file. The special setup program sets procedure to all functions included into the project and classlib to all libraries included into the project. Then DoForm works fine.
>>
>>May be one your forms is not set in the set('CLASSLIB') if you're using CREATEOBJECT function or your SET('CLASSLIB') is too long.
>>
>>>Old version of the application was build under VFP7.
>>>New version was developed using the old projectunder VFP9. Forms are not called directly like:
>>>do form formname
>>>
>>>but formnames are in a table included in the project - table has field action:
>>>DoForm("formname",'parms')
>>>FormMethod('methodname','parms')
>>>etc.
>>>An 'executor' object handles what to call based on that data. This worked very well in previous version.
>>>
>>>New forms/classes/frx/prg/prg based classes etc were added in new project (files needed are explicitly added -included- to the project). After build however the exe complains about missing files. ie:
>>>
>>>c:\exepath\formX.scx doesn't exist.
>>>
>>>but that form is explicitly included in project. Did anybody encounter this and know of a quick solution? (I'm going to add
>>>if .f.
>>>do form ...
>>>do this
>>>do that
>>>endif) but I don't think it'd do.
>>>TIA
>>>Cetin
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