IonicWind Software

IWBasic => IWB3.x Bug Reports => Resolved Issues => Topic started by: Logman on August 10, 2015, 07:50:50 AM

Title: Can't Create Import Libraries
Post by: Logman on August 10, 2015, 07:50:50 AM
Larry,

Version 2.0 allowed me to create an import library for msvcrt.dll as well as others like msvcr120.dll and msvcr120_clr0400.

Version 3.0 started the creation process for msvcrt.dll, but froze. Version 3.0 will not create an import library for any other types that I desperately need such as msvcr120.dll and msvcr120_clr0400.

Without the ability to quickly create import libraries for these DLL files (found in "c:\windows\system32\"), I'll have to revert back to version 2.0; giving up on Version 3.0 for now to create programs. I count on these libraries for the assembly work I am doing and without them, I'm at a standstill with Version 3.0.

Can you look into why Version 3.0 cannot create import libraries for these DLLs like Version 2.0 did? Also, even though Version 2.0 created these import libraries, they were never listed in the \iwbdev\lib\ folder, but they were created somewhere because they worked.

Logman
Title: Re: Can't Create Import Libraries
Post by: LarryMc on August 10, 2015, 12:30:24 PM
I know that 3.x will create imports (see attached screenshots)
So now it becomes an issue of why it didn't for you.

I'm running a "memorystick" installation on my c:\ hard drive.

Where are you running 3.x from?

I have an appointment with my foot doctor concerning my neuropathy in a bit.
I'll look further into this when I return.
Title: Re: Can't Create Import Libraries
Post by: Logman on August 11, 2015, 05:12:31 AM
Larry,

Let me experiment a little more. Right now, I don't have a clue as to why my Version 3.2 can't create the same import libraries.

I'll check back in this afternoon after I work the issue a little more.

Logman
Title: Re: Can't Create Import Libraries
Post by: Logman on August 11, 2015, 06:01:39 AM
Larry,

Still no good. To reiterate, on the main menu bar I select TOOLS, and in the popup dialogue I select CREATE IMPORT LIBRARY. This brings up the SELECT DLL TO IMPORT dialogue. I select the Windows/SystemWOW64 folder because that is where the 32-bit DLLs are located, and then selected MSVCRT.DLL and attempted to convert it to a library. Then I tried the others including MSVCR120 and MSVCR120_CLR0400.

In every instance I received an error message stating that there was an "Error Creating Import Library."

I then attempted the same procedure using the Windows/System32 folder where all the Windows 64-bit DLLs are stored. This didn't work either. I still received the same error message.

Just by chance maybe the import libraries were created, I attempted to run the programs where I imported functions from those libraries. I got all kinds of errors, as expected because none of the functions were imported.

I do have an idea though. You mentioned that you installed your version of IWBasic 3.x on an USB memory stick. I think the problem might be that you can't write files back to the Program Files (x86) folder without administrator rights for the user account you are using. the Program Files (x86) folder is write protected.

I'm going to install IWBasic 3.2 on an USB memory stick and see if that's the case. If so, I'll uninstall my version in the Program Files (x86) folder and install IWBasic 3.2 directly in a separate folder on the C:/ drive.

I'll get back to you on this.

Logman

UPDATE:

Voila! Turns out that the issue WAS that the Program Files (x86) folder being write protected prevented any created libraries from being saved to the IWBdev3/lib folder. I don't know why I'm always so slow catching on to these things. I should've known better.

My next step is to uninstall IWBasic 3.2 from the Program Files (x86) folder and reinstall the program to another folder on the C:/ drive. Thanks for the tip Larry. It appears I'm back in business.