I was given a test program by one of my friends well compiled and the challenge was to edit the source code. I got to know the program was written in VB6 and I got the vb-decompiler. I got lots of forms (.frm files) and a project.vbp . Now, I downloaded the VB6 for Windows from unofficial sources and when I import my project, I get out of memory error on every form. I ignore the error and when import is complete, It give a message about a log file -
Line 77: Cannot load control txtServer.
Line 85: Cannot load control txtUID.
Line 93: Cannot load control txtPwd.
Line 101: Cannot load control txtFTPPath.
Line 109: Cannot load control txtFTPSharedFolder.
Line 117: Cannot load control txtPort.
Line 222: Cannot load control txtType.
Line 266: Cannot load control txtPath.
Line 274: Cannot load control txtSharedFolder.
Line 310: Cannot load control cmdSave.
I tried to update my vb6 to vb.net through visual basic 2008 express but I get errors
upgrade failed: application has caused an exception
What should I do now? Edit : I read the frm file. I opened the frm file and saw it had lines like -
begin xyz.txtServer
Now xyz is the name of application and txtServer is the error in the log file as stated in the question.
Edit 2: I have a new development. I opened the frm file and got to know that the line having - begin VB.(some Command) runs perfectly but the line - begin xyz2000(some command) gives error. It is clear that it is dll error. The frm does not call any xyz2000.dll . I did not get any xyz2000.dll in the software given to me. So where did this xyz2000 came from?
The "cannot load" errors are most likely due to DLL (or OCX files, a type of DLL) references which are missing or at least not registered on your development computer. VB6 is not a statically linked language, or even truly dynamically linked, but instead DLL references are all discovered at runtime based on COM - essentially meaning that DLLs generally have to be centrally registered in Windows.
To further diagnose the specific issues:
Look in the FRM files in a text editor. File where the control "txtServer" is defined and what type it is. The type name may indicate which DLL is required to provide the control.
Look the top of the FRM files, you should see lines listing Object = "..."
references. These also indicate required DLL / OCX files.
Look in the .VBP file, you will see similar Object
and Reference
lines.
(If you add some examples of those items to the question people may be able to provide more help.)