Windows offline files

Notes on the Windows offline files cache and RoboCache, a command-line tool for managing it.

December 5, 2010 · 2 min · Owen Wengerd

Disable AutoCAD InfoCenter

Over the years, I and others have provided instructions for turning off the AutoCAD InfoCenter (or Communication Center in older versions). The instructions are different depending on the AutoCAD version. To make things simple, I decided to roll them all up into a single one-size-fits-all MSI file that disables InfoCenter for any and all versions of AutoCAD or AutoCAD LT in one fell swoop. ...

November 1, 2010 · 2 min · Owen Wengerd

Visual Studio 2010 Migration Post Mortem

I have more or less completed the task of migrating my internal projects to Visual Studio 2010. Native C++ programmers are pretty low on the totem pole of programming coolness these days, but Microsoft did throw us a few bones. At this point I have to say I’m ambivalent overall with VS 2010, but I really like some of the architectural changes and I’m excited about the future. ...

October 18, 2010 · 6 min · Owen Wengerd

Visual Studio 2010 Native Multi-Targeting

I was hoping that Microsoft would address the need to target earlier versions of Visual Studio within the Visual Studio 2010 IDE, but since they decided to punt (https://connect.microsoft.com/VisualStudio/feedback/details/570466/vs-2010-native-build-cannot-produce-ansi-response-files), I tackled the problem myself. I’ve released my solution as an open source project named Daffodil for Visual Studio. ...

October 7, 2010 · 1 min · Owen Wengerd

QuikPik 4.1 Adds Classic Title Bar Feature

Those of you with bad eyesight (and the rest of us throwbacks) will appreciate the new ‘Classic title bar’ feature in QuikPik 4.1. This new feature addresses AutoCAD 2009 and later versions of AutoCAD with the fancy schmancy title bar and menu bar. ...

September 24, 2010 · 1 min · Owen Wengerd

The Cancel Retry Paradox

Yesterday when I attempted to install the AutoCAD 2011 service pack (http://withoutanet.typepad.com/without_a_net/2010/08/update-1-released-for-autocad-and-autocad-lt-2011-.html) (er, I mean “update”), I encountered the classic UI paradox where you’re forced to choose from a set of equally undesirable choices, this time with a bonus. I received error 1321. My choices were to retry or cancel. If I chose to retry, I got the same error again. If I chose to cancel, I got a bonus question: it asked whether I really wanted to cancel. I had to lie and choose yes, otherwise I would be trapped in an infinite loop. ...

August 25, 2010 · 1 min · Owen Wengerd

Missing Language Pack DWG File Repair

I wrote before about corrupt text causing bogus “Missing Language Pack” warnings in AutoCAD. That case prompted me to write a file repair utility. However, since the case appeared to be isolated, I never released the utility to the public. The problem has been rearing its ugly head again, so I decided to dust off the original code and release it. The repair utility is now available on the freebies page (look for CleanLanguage.zip) for AutoCAD 2007 and later versions of AutoCAD. I have not tested any recent cases, so I can’t be sure it is the same problem. If you try the utility, please report your results by leaving a comment here.

July 22, 2010 · 1 min · Owen Wengerd

Using VC 7 build tools in Visual Studio 2010

[Update: See Visual Studio 2010 Native Multi-Targeting] Developers, if you use VC Build Hook and/or need the same capability in Visual Studio 2010, please let Microsoft know by voting for a fix (https://connect.microsoft.com/VisualStudio/feedback/details/570466/vs-2010-native-build-cannot-produce-ansi-response-files). I’ve written before (and here) about the problem. I think it is possible to hack a third party solution, but by far the best solution is for Microsoft to add back the ability to produce ANSI response files in service pack 1.

June 24, 2010 · 1 min · Owen Wengerd

GlowCode Success Story

I use GlowCode (http://www.glowcode.com) for profiling ObjectARX applications. As far as I know, this is the only profiler that works with AutoCAD. What makes GlowCode special is that it can instrument code on the fly, including a monster like AutoCAD. It has a clunky interface that takes some patience to figure out, but it’s a lifesaver when you need it. ...

June 12, 2010 · 2 min · Owen Wengerd

Visual Studio 2010 Ships

Visual Studio 2010 shipped today (http://blogs.msdn.com/visualstudio/archive/2010/04/12/visual-studio-2010-is-now-available.aspx) accompanied by .NET Framework 4.0. I blogged before about the switch to using the MSBuild build system, and how that theoretically could be helpful in targeting multiple AutoCAD versions from the same solution. The shipping VS 2010 does not support non-Unicode response files, so out-of-the-box it cannot target VC 7.0 (for AutoCAD 2006 and earlier). When time permits, I’m planning to see if I can find a workaround; in the meantime, I’ll continue to use VS 2008 for ObjectARX.

April 12, 2010 · 1 min · Owen Wengerd

Port Your ObjectARX Code to 64 Bit

AutoCAD versions since AutoCAD 2008 (and since AutoCAD LT 2009) have included both 32 bit and 64 bit flavors on the same media. If you install on a 64 bit Windows system, you get the 64 bit AutoCAD; otherwise you get the 32 bit AutoCAD. The 64 bit AutoCAD can take advantage of as much memory as you can throw at it, whereas the 32 bit version is limited to 2 GB (3 GB if you cheat). They should be otherwise identical in theory, but in practice there are major differences. One big difference is VBA. Microsoft put VBA out to pasture many years ago when they introduced the .NET framework, so there will never be a 64 bit version of VBA. Autodesk had to resort to a seriously inefficient kludge to get it to work at all in the 64 bit flavor of AutoCAD (VBA has to run in a separate 32 bit process, which makes typical applications two orders of magnitude slower). The other big difference is that any third party ObjectARX applications must be installed for the correct architecture. A 32 bit ObjectARX application will not work in a 64 bit AutoCAD. [Note that .NET (or “managed”) applications typically work fine in both architectures – I’m referring to native C++ ObjectARX applications only.] On the Autodesk discussion groups, many people ask how they can install the 32 bit version of AutoCAD on their new 64 bit operating system. Why would they want to do that? Almost always because they need to use an application that is only available for 32 bit AutoCAD architectures, or because they discover that their VBA applications become unbearably slow. It is possible, with some hacking of the AutoCAD installation database, to install the 32 bit flavor of AutoCAD on a 64 bit system, but I don’t recommend that. There is just no excuse any more to not support the 64 bit architecture. If you find yourself in this situation, put pressure on the developer of the application to get it ported. In fact, if you rely on an application that hasn’t been ported to the 64 bit architecture, I’d like to hear from you. Add a comment to this post and let me know the name of the application. If you are a vendor or developer that has not yet ported your 32 bit application, please contact me – I will gladly port it for you. Even large applications can typically be ported in several hours. BTW, I am well aware that even Autodesk is guilty of not supporting 64 bit platforms in some of its vertical market AutoCAD versions (and corresponding object enablers). I certainly hope they remedy that situation in the next release cycle.

March 11, 2010 · 3 min · Owen Wengerd

Visual Studio 2010 and VC Build Hook

[Update: See Visual Studio 2010 Native Multi-Targeting] Many of you use my VC Build Hook utility to target multiple versions of AutoCAD from a single solution in Visual Studio 2008. Visual Studio 2010 now includes a new feature called native multi-targeting that performs the same function as VC Build Hook. The new feature works great for using build tools back to VC 7.1, but it does not work with VC 7, which is required for targeting AutoCAD versions 2006 and earlier. ...

January 11, 2010 · 1 min · Owen Wengerd