ObjectARX

Reply
Active Contributor
cadproman
Posts: 42
Registered: ‎03-20-2002
Message 1 of 4 (1,370 Views)
Accepted Solution

ARX file fails to load

1370 Views, 3 Replies
01-19-2012 01:46 PM

I'm getting a message at the command line saying that my newest arx file "is an invalid ARX file" and next that "AcRxDynamicLinker failed to load" the file. Immediately before these lines, it shows that another older ARX file has loaded and works in AutoCAD.

 

While the older one was built using VS 2005 (I'm using AutoCAD 2008), the newer one was built with VS 2010 after making the modifications necessary to build using the 2005 platform toolset, shown at the following page:

 

http://nanlee.wordpress.com/2010/11/06/building-against-msvc2005-toolset-using-msvc2010/

 

After finding that the file would not load on all computers, I went back and created a new project in VS 2005 and inserted the existing CPP and H files just to end up with the same errors.

 

The arx file loads and works fine on the computer I compiled it from, as well as several others. I do not understand why it will not load on all of the computers. All are running Windows XP Service Pack 3 and AutoCAD 2008 Service Pack 1.

 

Please let me know if you have any ideas as to how this can be corrected, or if any additional information might be useful.

 

Ralph

Distinguished Mentor
owenwengerd
Posts: 606
Registered: ‎08-06-2002
Message 2 of 4 (1,363 Views)

Re: ARX file fails to load

01-19-2012 03:58 PM in reply to: cadproman

The information you used to add a VC 2005 target platform is incomplete. You should use Daffodil instead:

http://otb.manusoft.com/2010/10/visual-studio-2010-native-multi-targeting.htm

 

If you want to resolve the problem manually without using Daffodil, this might help:

http://otb.manusoft.com/2007/01/my-manusoft-manifest-manifesto.htm

--

Owen Wengerd

ManuSoft

 

--
Owen Wengerd
ManuSoft
Active Contributor
cadproman
Posts: 42
Registered: ‎03-20-2002
Message 3 of 4 (1,331 Views)

Re: ARX file fails to load

01-25-2012 02:04 PM in reply to: owenwengerd

Owen, thanks for the response. I installed Daffodil, which was much easier than what I tried first. I wish I had found it when I was first trying to figure out how to use VS 2010. I changed the Platform Toolset to v80 and tried to build, but got the same results as before.

I ended up making the following changes, one of which solved the problem:

1. Starting another new project using the ObjectARX wizard in VS 2005

2. Putting it directly on my computer instead of the server

3. Creating new files in VS 2005 and copy and pasting the text from the 2010 files to the 2005 ones instead of adding the 2010 ones to the project. I did use the wizard to add the commands to the premade acrxEntryPoint file, and only changed it to call my main function from another h/cpp file.

 

Hopefully something was left over from adding the existing files that prevented it from working when using Daffodil. I will try it next time from a fresh start. Thanks again for letting me know about it.

 

There were a couple of things I don't understand that are possibly related. Originally, I saved the project on a server and got the following messages when creating the project:

 

Visual C++ found a suitable loation to store its browsing database and IntelliSense files for the solution "M:\Toolbox\Support 2008\ARX\Source Code Files\Visual Studio 2010\FindUnsizedBeams\FindUnsizedBeams.sln."

Visual C++ examined the folder "M:\Toolbox\Support 2008\ARX\Source Code Files\Visual Studio 2010\FindUnsizedBeams." This folder is not suitable because of the following:
The directory is on a network share or drive mapped to a network share.

Because a 'Fallback Location' was not specified in the C++ Advanced Options, Visual C++ is attempting to use your temporary directory.

Visual C++ examined the folder "C:\DOCUME~1\RALPHG~1\LOCALS~1\Temp\VC++\findunsiz​edbeams-57a3f303." This folder is suitable because of the following:
The directory is on a local drive.

The 'Fallback Location' is configurable under C++ Advanced Options.

Press OK to use this location.
Press Cancel to disable C++ browsing information and IntelliSense for this session.

 

Also, I get the following warnings when building the release file that wont load:

 

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil​d.targets(990,5): warning MSB8012: TargetPath(M:\Toolbox\Support 2008\ARX\Source Code Files\Visual Studio 2010\FindUnsizedBeams\Win32\Release\FindUnsizedBea​ms.dll) does not match the Linker's OutputFile property value (M:\Toolbox\Support 2008\ARX\Source Code Files\Visual Studio 2010\FindUnsizedBeams\Win32\Release\MLAWFindUnsize​dBeams.arx). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

 

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil​d.targets(991,5): warning MSB8012: TargetExt(.dll) does not match the Linker's OutputFile property value (.arx). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

 

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil​d.targets(992,5): warning MSB8012: TargetName(FindUnsizedBeams) does not match the Linker's OutputFile property value (MLAWFindUnsizedBeams). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

 

If anyone knows if these are related to the problem, or how to prevent them, please let me know.

 

Thanks,

Ralph

ADN Support Specialist
fenton.webb
Posts: 352
Registered: ‎07-24-2007
Message 4 of 4 (1,306 Views)

Re: ARX file fails to load

01-30-2012 03:31 PM in reply to: cadproman

These errors are related to Visual Studo 2010 property sheet changes...

 

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil​d.targets(990,5): warning MSB8012: TargetPath(M:\Toolbox\Support 2008\ARX\Source Code Files\Visual Studio 2010\FindUnsizedBeams\Win32\Release\FindUnsizedBea​ms.dll) does not match the Linker's OutputFile property value (M:\Toolbox\Support 2008\ARX\Source Code Files\Visual Studio 2010\FindUnsizedBeams\Win32\Release\MLAWFindUnsize​dBeams.arx). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

<<<<<<<<< Goto the General Page and make sure the Output Directory and the Intermediate directory are set with the same parameters as those used in your Output path... e.g. General->Output Directory=$(SolutionDir)$(Platform)\$(Configuration)\ and Linker->Output File=$(OutDir)$(TargetName)$(TargetExt)

 

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil​d.targets(991,5): warning MSB8012: TargetExt(.dll) does not match the Linker's OutputFile property value (.arx). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

<<<<<<<<<<<<< Change General->Target Extension=.arx

 

1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuil​d.targets(992,5): warning MSB8012: TargetName(FindUnsizedBeams) does not match the Linker's OutputFile property value (MLAWFindUnsizedBeams). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).

<<<<<<<<<<<<<<<<<<< same as the first problem.

 

Cheers
Fenton Webb

Autodesk Developer Network





Fenton Webb

Developer Technical Services

Autodesk Developer Network


You are not logged in.

Log into access your profile, ask and answer questions, share ideas and more. Haven't signed up yet? Register

Announcements
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.

Need installation help?

Start with some of our most frequented solutions to get help installing your software.

Ask the Community