Classic VB Corner

Redesign IDE Dialogs

Ever felt the VB IDE dialogs were poorly designed? Here's a way for you to tweak them a bit more to your liking.

An ongoing frustration of mine was always found in the ClassicVB Project References dialog. You've probably growled or at least grumbled at it a few times, too. What's with that chopped off Location field??? As often as not, you can't actually see the name of the file highlighted in the listbox below, as shown here:


[Click on image for larger view.]
Figure 1.

Shoot, there's even a horizontal scrollbar on that list! That might've been a somewhat reasonable design in the days when a few folks still used 640x480 screens, but no more.

What if you could tweak that dialog, making the listbox a little wider? Those priority buttons seem rather poorly placed too, don't they? They could slide over to the right, the listbox could be widened. Heck, the entire dialog could be widened, all the buttons slid over, the Location and Language labels widened... You see where this is going.

Well, there's a tool you can use to do modify these sorts of settings to your heart's content. Resource Hacker is a freeware utility to view, modify, rename, add, delete and extract resources in 32-bit Windows executables and resource files. I've long found it one of the best tools available to explore "the guts" (resources) of executables.

ResHacker offers a dialog tool that's extremely similar to Classic VB's -- you just drag the dialog elements around, resizing them to suit. Or you can edit the raw resource script, and watch the changes play out in the dialog designer. Simply open the "Dialog" node in the treeview, find the dialog you want to edit, and go to town. When you're happy with the new design, press the "Compile Script" button, then just do a File | Save to write the changes to disk. (Be sure to make a backup of the original file, first, of course, unless you enjoy doing re-installs.)

To modify the Classic VB Project-References dialog, open the VB6IDE.DLL (or VB5IDE.DLL) file in ResHacker, find Dialog #4040 and get to work. Here's the "after" shot to compare with the "before" above. Which would you rather use?


[Click on image for larger view.]
Figure 2.

I've posted the resource script used for this dialog on my Web site. You can also flip back and forth between the original and modified dialogs by using these two links and pressing the Back and Forward buttons in your browser to visualize the changes. If you like my redesign and would rather not hand-manipulate all the controls into a similar layout, you can just download my script and paste it into the ResHacker script editor.

Now you'll always know which file is associated with each named reference. Sweet.

If you'd like to share your own ideas for really useful IDE resource hacks, please do so below, or email me and we may find a way to sneak the really good ideas into a future column.


About the Author

Karl E. Peterson wrote Q&A, Programming Techniques, and various other columns for VBPJ and VSM from 1995 onward, until Classic VB columns were dropped entirely in favor of other languages. Similarly, Karl was a Microsoft BASIC MVP from 1994 through 2005, until such community contributions were no longer deemed valuable. He is the author of VisualStudioMagazine.com's new Classic VB Corner column. You can contact him through his Web site if you'd like to suggest future topics for this column.

comments powered by Disqus

Featured

  • GitHub Expands Copilot Enterprise Search in Visual Studio and VS Code

    GitHub supercharged search for its Copilot Enterprise AI assistant in both Microsoft's Visual Studio IDE and Visual Studio Code so developers can now get results from well beyond local codebases, including the internet.

  • What's New in TypeScript 5.5, Now Generally Available

    Microsoft shipped the latest iteration of its type-infused superset of JavaScript, TypeScript 5.5, introducing inferred type predicates, control flow narrowing, JSDoc @import and other enhancements.

  • GitHub Copilot for Azure Gets Preview Glitches

    This reporter, recently accepted to preview GitHub Copilot for Azure, has thus far found the tool to be, well, glitchy.

  • New .NET 9 Templates for Blazor Hybrid, .NET MAUI

    Microsoft's fifth preview of .NET 9 nods at AI development while also introducing new templates for some of the more popular project types, including Blazor Hybrid and .NET MAUI.

  • What's Next for ASP.NET Core and Blazor

    Since its inception as an intriguing experiment in leveraging WebAssembly to enable dynamic web development with C#, Blazor has evolved into a mature, fully featured framework. Integral to the ASP.NET Core ecosystem, Blazor offers developers a unique combination of server-side rendering and rich client-side interactivity.

Subscribe on YouTube