Remote desktop : error running Lisp

Remote desktop : error running Lisp

hanslammerts
Collaborator Collaborator
2,587 Views
25 Replies
Message 1 of 26

Remote desktop : error running Lisp

hanslammerts
Collaborator
Collaborator

Hi, i am experiencing the BASE.DCL error when running a .vlx on a remote

I can't get find a sollution for this error. Does this have anything do do with the fact that i run it on a remote desktop?

.. maybe AutoCAD gets confused about the whereabouts of my roaming profile..(?)

 

 

remote desktop error.jpg

0 Likes
Accepted solutions (1)
2,588 Views
25 Replies
Replies (25)
Message 21 of 26

hanslammerts
Collaborator
Collaborator

I tried everything i could. It's a tough one..

 

0 Likes
Message 22 of 26

hanslammerts
Collaborator
Collaborator

 

Created this sample VLX. Having problems running it.

See att.

 

0 Likes
Message 23 of 26

john.vellek
Alumni
Alumni

HI @hanslammerts,

 

I am afraid that it has been way too long since I last wrote or debugged any code.

 

I am able though to compile some of my old lisp into vlx (as I showed in my previous post) and run it in AutoCAD 2018.

 

When I run your LSP or VLX I see the same error indicating "error: bad argument type: stringp nil"

 

 


John Vellek


Join the Autodesk Customer Council - Interact with developers, provide feedback on current and future software releases, and beta test the latest software!

Autodesk Knowledge Network | Autodesk Account | Product Feedback
0 Likes
Message 24 of 26

hanslammerts
Collaborator
Collaborator

@juan.c.ayalawrote:

Check your secureload settings. You may have it set to not run lisp files fi they are not in a trusted path.

 

When using the find file command, you need to specify the file name, not file type. Lets say I want to see if AutoCAD finds my DCL file named JAtest, I would enter (findfile "JAtest.dcl") in the command line. If it returns NIL then it can not find the JAtest.DCL file which would explain why its failing.


Secureload set to 0

(findfile "fillett.dcl") nil

(findfile "singla.dcl") nil 

.. in a AutoCAD version, where it is working .. (?!)

 

 

Strange you can't get the LSP / DCL to work, John

Can you check some of my other routines.

It should work if you put them in a supported path..

 

command : FG

 

Knipsel.JPG

 

 

 

 

 

0 Likes
Message 25 of 26

hanslammerts
Collaborator
Collaborator

This is help from F1 in Vlisp, it explains a lot more

please be aware that this is different from the google search @john.vellek

Which in my opinion is in many cases too limited. I mean, this link as search result

It would certainly help others if this resource would be mentioned

 

https://knowledge.autodesk.com/support/autocad/troubleshooting/caas/sfdcarticles/sfdcarticles/DCL-er...

 

 

 

About DCL Error Handling (DCL)

 

The PDB feature checks a DCL file for errors the first time you load it. If a syntax error, a misuse of attributes, or any other error is encountered (such as failure to specify a key attribute for an active tile), the PDB does not load the DCL file.
NOTE:DCL support in AutoLISP is limited to Windows only.
When an error is encountered, one or more dialog boxes alerting you to the error are displayed, or a list of errors are written to a text file named acad.dce. If the error messages are written to acad.dce, it alerts you to this with a message similar to the following:

You can inspect the contents of acad.dce to find the problem. The acad.dce file is placed in the current working directory. When a DCL file is read successfully, the acad.dce file is deleted.
If your application uses multiple DCL files, the acad.dce file is overwritten (or deleted if no errors occur) when each new file is loaded. When you test the program, acad.dce shows errors (if any) from only the DCL file most recently read. You can also load and debug each file manually in AutoCAD with the load_dialog function. The following load_dialog function loads the DCL file hellofile.dcl:
Command:  (load_dialog "hellofile")
3
If the dialog box loads successfully, load_dialog returns a positive integer that identifies the DCL file. You pass this value to the new_dialog function to initialize individual dialog boxes in the file.
The new_dialog function returns T if it succeeds; otherwise it returns nil. If new_dialog returns T, call the start_dialog function to display the dialog box.
Once you have debugged each DCL file, you can load your program and test the dialog boxes in combination. If your program calls a restricted function between the start_dialog and done_dialog calls, AutoCAD terminates all dialog boxes and displays the following error message:
AutoCAD rejected function

 

About Semantic Auditing of DCL Files (DCL)

AutoCAD provides a choice of four levels (0-3) of semantic auditing for DCL files.
NOTE:DCL support in AutoLISP is limited to Windows only.
Auditing attempts to detect code in the DCL file that is likely to be problematic or unnecessary. These audits are done at DCL load time. An audit level for a DCL file can be set by including a line such as the following anywhere within the DCL file, but not inside any tile definitions:
dcl_settings : default_dcl_settings
{
  audit_level = 3;
}
If your DCL file references other DCL files with include directives, you should define dcl_settings in only one file. The defined audit level is used in all included files. The following table describes each audit level:
Semantic auditing levels
Level
Description
0
No checking. Use only if the DCL files have been audited and have not been touched since the audit.
1
Errors. Finds DCL bugs that may cause AutoCAD to terminate. This level of checking is the default and involves almost no delay. Errors can include using undefined tiles and circular prototype definitions.
2
Warnings. Finds DCL bugs that result in dialog boxes with undesired layout or behavior. A modified DCL file should be audited at this level at least once. The warning level catches mistakes such as missing required attributes and inappropriate attribute values.
3
Hints. Finds redundant attribute definitions.
NOTE:You should set audit_level to 3 during program development to get the most out of the auditing facility. Remember to remove or comment out the dcl_settings line before shipping DCL files to users.
Related Concepts

0 Likes
Message 26 of 26

hanslammerts
Collaborator
Collaborator
Accepted solution

This helped me!

 

 

step 1.

Delete

C:\Users\hala6\AppData\Roaming\Autodesk\..\enu\support

from the support path

step 2. close AutoCAD

step 3. open AutoCAD

step 4.

Add to support path

C:\Users\hala6\AppData\Roaming\Autodesk\..\enu\support

Close

step 5. close AutoCAD

step 6. open AutoCAD

Dialogs work!

 

For some reason this path needed to be 'updated' manually

This is a workaround for the problem

0 Likes