old vb script compatibility issues

old vb script compatibility issues

Anonymous
Not applicable
1,424 Views
7 Replies
Message 1 of 8

old vb script compatibility issues

Anonymous
Not applicable

I have a DVB file that I currently use with AutoCAD 2000 on Windows XP. I'd like to get it working on a Windows 7 computer, but AutoCAD 2000 isn't compatible. I am hearing that my file also isn't compatible with a newer version of AutoCAD because it uses different DLL's. I have AutoCAD 2018 (Trial) installed on Windows 7, but I am getting object errors. 

 

I'm afraid this XP machine will fail and I'll be stuck not being able to run this file at all. Does anyone have any advice? 

 

Can an expert review my DVB file and create a new one compatible with new versions of AutoCAD? 

Do I focus on getting AutoCAD 2000 installed on a Windows 7 machine or through virtualization? 

 

Thanks for your thoughts!

0 Likes
1,425 Views
7 Replies
Replies (7)
Message 2 of 8

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

>> Can an expert review my DVB file and create a new one compatible with new versions of AutoCAD? 

Maybe, if you show the file. But you should know that reading/evaluating code from anyone else is very much depending on how clean and documented the code was created.

Upload the DVB so we can look into it, please also describe what the code is doing (how you are working with that) and if it depends on some specific drawings then please attach these drawings too.

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 Likes
Message 3 of 8

Ed__Jobe
Mentor
Mentor

In the vba ide, go to Tools>References and see if there are any references that say "MISSING". You probably need to reference the 2018 type library.

Ed


Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
How to post your code.

EESignature

0 Likes
Message 4 of 8

Anonymous
Not applicable

Yes, there were some MISSING entries. I copied the missing files from my XP workstation and pasted and registered them on my Windows 7 workstation. It no longer says MISSING, but errors still occur.

0 Likes
Message 5 of 8

Ed__Jobe
Mentor
Mentor

@Anonymous wrote:

Yes, there were some MISSING entries. I copied the missing files from my XP workstation and pasted and registered them on my Windows 7 workstation. It no longer says MISSING, but errors still occur.


What files were missing?

Ed


Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.
How to post your code.

EESignature

0 Likes
Message 6 of 8

Anonymous
Not applicable

attached file and an old document that explains the script. thanks!

0 Likes
Message 7 of 8

Anonymous
Not applicable

mscomct2.ocx
dbgrid32.ocx
mscomm32
msdatgrd
msflxgrd

0 Likes
Message 8 of 8

norman.yuan
Mentor
Mentor

From the file name list, it looks like your VBA app has quite "advanced" user interface, and those files Microsoft UI control components libraries (I did not try to open the DVB file, though).

 

Unfortunately, copying them and registering then as ActiveX controls components (assuming you had done it correctly) most likely do not help at all, because of your AutoCAD2018 being 64-bit version and those old components being 32-bit version. There are no equivalent counterparts of those ActiveX components in 64-bit.

 

So, if you want your old VBA code to work in the same way, you need to use 32-bit AutoCAD (which poses another issue: how do you get a 32-bit AutoCAD installed with your likely 64-bit Win7 computer). Or you can choose an earlier version of 64-bit AutoCAD with 32-bit VBA (Acad2013 or earlier.

 

If you stick with later version of 64-bit AutoCAD (you'd better be), then your VBA app would be very limited in terms of UI support: only VBA built-in controls, unless you are very good Window API programmer that enables to directly dig into vast Windows API for the UI (not worth it in most cases, even you are capable).

 

So, I can only see 2 options to salvage the old VBA program, both involves re-writing (assuming the old program does have advanced/complicated UI requirements):

 

1. Modifying the UI to replace the 32-bit controls from outside VBA with VBA built-in controls. You may have to lose the UI functionality significantly. But if the end result is acceptable, then...

 

2. Rewrite the program with AutoCAD .NET APIs, where you have rich UI components equivalent to, or better than, what you had before. Well, you need to know how to program with AutoCAD .NET API.

 

I omitted the options, such as rewriting in LISP/ObjectARX C++, which would only be harder than the 2 options I mentioned.

Norman Yuan

Drive CAD With Code

EESignature

0 Likes