Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
SERIOUS BUG, i lose the program control !
Message
De
25/11/2004 09:17:56
 
 
À
Tous
Information générale
Forum:
Visual FoxPro
Catégorie:
Visual FoxPro Beta
Titre:
SERIOUS BUG, i lose the program control !
Divers
Thread ID:
00964674
Message ID:
00964674
Vues:
44
Today, I can begin!

Previous issue Thread #964227

Bug/Issue : 16 of 36

TITLE: Bug, if a VCX ClassLoc it is not found i lose the program control

VERSION: 09.00.0000.1720 and previous

EXPECTED: At Runtime, when a something is not found, a exception error it is fired.

OBSERVED: If the application use a VCX class, and VFP engine cannot found the class definition, it open a Locate Class dialog,
and my application is on the customer hands ( or on the Hacker hands !)

NOTE: this is analogous to the issue discussed in the Thread #885697.
VFPT fixed it with the new SET TABLEPROMPT OFF setting.
When i open the Thread #885697, i use Locate Table Dialog like example.
Of course, i want a full control of my applycation into any situation.

It is not acceptable that a my customer can itself be found of forehead to a question (in English) of recovery of a program piece,
without a my filter control (is 2 years that job in order to write an application that autoripara!)

In the case of the TABLEDIALOG,
I could render the application sure putting the information in memory,
in this case, is possible to replace a class of the application with another one,
without that I notice of null ( any audit file it is useless here).

I hope that the VFPT remedies to this and all the other analogous situations, with a global
SET LOCATEPROMPTS ON|OFF
It can also remove TABLEPROMPT, why not servants to nothing.

REPRO code with comments:
CLEAR ALL
CLOSE ALL
#DEFINE FILENAME 'c:\_###$$$123456\TEMP1'
IF DIRECTORY(JUSTPATH([FILENAME]))
	ERASE (JUSTPATH([FILENAME])+'\*.*') RECYCLE
	RMDIR (JUSTPATH([FILENAME]))
	MESSAGEBOX("Change the test directory name")
	RETURN
ENDIF
MKDIR (JUSTPATH([FILENAME]))
* VCX
CREATE CLASSLIB FILENAME 
CREATE CLASS myFORM OF FILENAME  AS FORM NOWAIT
KEYBOARD '{CTRL+W}'
DOEVENTS FORCE
* SCX
CREATE FORM FILENAME as MYFORM  FROM FILENAME  NOWAIT
KEYBOARD '{CTRL+W}'
DOEVENTS FORCE
* PRG
TEXT TO smain NOSHOW
SET TABLEPROMPT OFF && <== ROLLBACK THIS NEW COMMAND SETTING
* SET LOCATEPROMPTS OFF && <=== IMPLEMENT THIS FOR ALL THE UNTRAPPED DIALOGS
TRY
	DO FORM FILENAME 
CATCH
	MESSAGEBOX(MESSAGE())
ENDTRY
ENDTEXT
STRTOFILE(m.sMain,FORCEEXT(FILENAME,'prg'))
RELEASE smain
* PRJ
CREATE PROJECT FILENAME NOWAIT SAVE
WITH _VFP.ActiveProject
	* add prg included, main
	.Files.Add(FORCEEXT(FILENAME,'prg')).Exclude = .F.
	.SetMain(FORCEEXT(FILENAME,'prg'))
	* add vcx exclude
	.Files.Add(FORCEEXT(FILENAME,'vcx')).Exclude = .T.		
	* add scx include
	.Files.Add(FORCEEXT(FILENAME,'scx')).Exclude = .F.
	.Build(FORCEEXT(FILENAME,'EXE'))
	.Close
ENDWITH
CLEAR ALL
* simulate a haker operation
ERASE FORCEEXT(FILENAME,'vcx')
* run the Application ! : A OUT OF CONTROL DIALOG APPEAR !!<
sRun = FORCEEXT(FILENAME,'EXE')
RUN /N &sRun
DO WHILE DIRECTORY(JUSTPATH([FILENAME]))
	WAIT WINDOW "wait for end" NOCLEAR TIMEOUT 1
	TRY 
		ERASE FORCEEXT([FILENAME],'*') RECYCLE
		RMDIR (JUSTPATH([FILENAME]))
	CATCH
	ENDTRY
ENDDO
WAIT CLEAR
Fabio
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform