PxPlus User Forum

Twitter Twitter Twitter

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - EVa

Pages: 1 2 3 [4]
46
Harry,


Don't know why that is - it works for non pxplus executables.  Try this one:

0020 LET exe$="C:\Windows\System32\cmd.exe"+$00$


-Eric-

47
Bob,


Something like this ?

0010 BEGIN
0020 LET exe$="D:\pxplus\pvxplus9\pxplus.exe"+$00$
0030 DIM tmp$(512,$00$)
0040 LET size=DLL("version.dll","GetFileVersionInfoSizeA",exe$,tmp$)
0050 IF size=0 THEN GOTO ERROR ELSE DIM tmp$(0)
0060 DIM bfr$(size,$00$)
0070 LET r=DLL("version.dll","GetFileVersionInfoA",exe$,$$,size,bfr$)
0080 IF r=0 THEN GOTO ERROR
0090 DIM where$(4,$00$),length$(4,$00$)
0100 LET r=DLL("version.dll","VerQueryValueA",bfr$,"\\"+$00$,where$,length$)
0110 IF r=0 THEN GOTO ERROR
0120 ! VS_FIXEDFILEINFO structure
0130 ! dwFileVersionMS = 9,4
0140 ! dwFileVersionLS = 13,4
0150 ! dwProductVersionMS = 17,4
0160 ! dwProductVersionLS = 21,4
0170 LET tmp$=MEM(DEC(SWP(where$)),DEC(SWP(length$)))
0180 LET tmp$=SWP(tmp$(9,4))+SWP(tmp$(13,4))+SWP(tmp$(17,4))+SWP(tmp$(21,4))
0190 LET fv$=""; FOR n=1 TO 8 STEP 2; LET fv$+=STR(DEC(tmp$(n,2)))
0200 IF n<8 THEN LET fv$+="." END_IF ; NEXT ; PRINT "FileVersion: ",fv$
0210 LET pv$=""; FOR n=9 TO 16 STEP 2; LET pv$+=STR(DEC(tmp$(n,2)))
0220 IF n<16 THEN LET pv$+="." END_IF ; NEXT ; PRINT "ProductVersion: ",pv$
0230 STOP
0240 !
0250 ERROR: LET error=DLL("kernel32","GetLastError")
0260 LET size=512,text$=DIM(size,$00$)
0270 LET result=DLL("Kernel32","FormatMessageA",DEC($1000$),0,error,0,text$,size,0)
0280 IF result=0 THEN {
0290 PRINT "An unknown error occured" } ELSE {
0300 PRINT text$(1,POS($0D0A$=text$))
0310  }

-Eric-

48
Programming / Re: ESC key behaviour Providex Plus 15.
« on: February 19, 2019, 03:27:08 AM »
Bill,

CALL "*uck" - in the second column top row, you'll notice ESCAPE.  Move to that field, hit enter and then hit the ESC key.  After 1B appears, hit F4 and try your code again.  ESC should now perform a true escape (after about 2 seconds - see parameter +D).

-Eric-

49
Programming / Re: detect embedded quotes
« on: January 30, 2019, 03:54:55 AM »
When you compile a text with missing quotes, TCB(43) will tell you where the problem happened.  For example:

0010 SETERR OOPS
0020 LET x$="INDICATOR SET TO "+QUO+"A"+QUO+", AND  THE SENDING AND RECEIVING ELEMENT"
0030 LET y$=CPL("X$="+QUO+x$+QUO)
0040 PRINT "All is well"; STOP
0050 OOPS: LET position=TCB(43); PRINT "Error",ERR
0060 PRINT "Right here: ",x$(position-4) ! 4 = length of (X$=") in CPL()
-:run
Error 20
Right here: "A", AND  THE SENDING AND RECEIVING ELEMENT

-Eric-

50
Language / Re: *VIEWER* with SSH
« on: January 17, 2019, 05:38:57 AM »
Ned,


You are getting an error at this line:

0624 OPEN OBJECT (_._._.Channel,KEY="*PaRaMTr",ERR=OC_OpenErr)_._._.FileName$

The program then jumps to:

0641 OC_OpenErr:

And you get another error at this line:

0642 IF ERR=12 THEN { KEYED _._._.FileName$,[1:1:10:"+"],[2:1:32:"C"]+[3:1:96:"C

So it appears that _._._.FileName$ is causing a problem.  The filename comes from the ENTER at line 619 (*viewer/parameters.pvc).  Try adding this line of code to *viewer/parameters.pvc to identify the name of that file:

0621 MSGBOX "Filename = "+_._._.filename$,"Info"

That will at least tell us what file is the cause of the error.


-Eric-

51
Language / Re: *VIEWER* with SSH
« on: January 16, 2019, 10:33:56 AM »
Ned,


Can you start the trace window and enable host tracing (& log all errors) and tell us on what line in which program you are getting the error 99 ?


-Eric-

52
Language / Re: *VIEWER* with SSH
« on: January 15, 2019, 04:17:53 AM »
Ned,

What's the output of PKG when entered in console mode ?

-Eric-

53
Programming / Re: journal files size issue
« on: November 08, 2018, 05:09:43 AM »
Why don't you manually copy the 314 server file to the other system ?

54
Programming / Re: error 17 on program file
« on: September 12, 2018, 06:29:54 AM »
Although I don't think this is a good idea, there's a way to get all server variables in the WindX session.  On the server, run this code:

0001 LET abc=123; LET abc$="abc" ! test variables
0010 OPEN (1)"[wdx]*memory*;xyzzy"
0020 DUMP (1)
0030 PRINT (1)"! DONE",'-B'
0040 CALL "[wdx]*windx.utl;get_num","ffn("+QUO+"*memory*;xyzzy"+QUO+")",chan
0050 IF chan<=0 THEN STOP
0060 CALL "[wdx]read",chan

The 'read' program on the WindX side looks like this:

0010 ENTER x ! PRINT PTH(x)
0030 LET L$=RCD(x,IND=0,ERR=DONE)
0040 WHILE 1; PRINT L$
0050 LET L$=RCD(x,ERR=*BREAK); WEND
0060 DONE: EXIT

You want to 'execute L$' at line 45.  Be carefull with global variables as you can destroy WindX variables that you really shouldn't touch.


Eric Vanpaeschen
EDIAS Support

55
Programming / Re: error 17 on program file
« on: September 11, 2018, 07:59:33 AM »
When I try to perform or load the programm I get an error 17.
I could use som help.
LET WDX$="[WDX]C:\USR\PVX125\WINDX\"
PERFORM WDX$+"VLB903C;GRID_VULLEN"

You can't PERFORM programs on the WindX workstation but you can CALL them.


Regards,

Eric Vanpaeschen
EDIAS Support

Pages: 1 2 3 [4]