Your best source of information and news about microsoft, microsoft and microsoft on the internet

Vista ARTICLES TOP 50 Spyware Virus Vista SOFT Vista HELP

Coding

You are currently browsing the articles from MS Windows Vista Compatible Software matching the category Coding.

Shell Namespace Extension: Enabling Deep Search

Overview

From my past posts about implementing your own Shell Namespace, there have been some great questions posted by readers.  Many of these stem from the fact that the Namespace example is fairly simple in that it does not implement all of the behavior that is possible in Explorer.  This was done to focus on the core steps in getting a working Namespace implemented.  Yet, there are a few extra steps you can take that don’t require too much more coding on your part to add more useful features.  One question in particular that comes up quite often is how to enable deep searching in your Namespace.

You will notice from the existing Namespace example that if you enter a search term in the search box in Explorer, the search only filters items that are currently in the view.  It does not search into the folders.  In the below images, we try to search for “Two” in the search box which only results in 1 item.  Thus, the sub folders were not included.

Filter Search

...
Click to continue reading "Shell Namespace Extension: Enabling Deep Search"

Written by chrdavis on March 3rd, 2008 with no comments.
Read more articles on namespace and otherSoftware and extension and Search and Organize and shell and Coding and Programming and vista and search and API and Windows Vista.

Proper Shell Scripting on Windows Servers with Perl

  • Fact: Shell scripting is a must for any serious IT admin managing a server. From automating backups to checking logs and keeping server performance and load in check, scripting is a must.
  • Fact: Shell scripting on Windows sucks. Monad (Microsoft Power Shell) attempts to fix that, but so far the results are mixed.
  • Fact: Shell scripting on Linux and other *nix operating systems is powerful, well-documented, and quite straight-forward.

Most people take a look at these three facts, and instantly come to a conclusion.. the wrong conclusion: you can’t properly manage a Windows server because it’s inherently lacking in the shell scripting department.

Click to continue reading "Proper Shell Scripting on Windows Servers with Perl"

Written by Computer Guru on November 13th, 2007 with no comments.
Read more articles on Perl and Macintosh and Server Management and Shell Scripting with Perl and Batch and Bash and Operating Systems and Coding and Programming and Windows and Linux and Guides and Hacking and software.

Complete .NET Portability with Wine & Mono?

Mono is the open-source version of Microsoft’s .NET Framework. It implements most of the backend framework features, but unfortunately, falls flat on its pretty little face when attempting to display the user interface - which is what desktop apps are all about.

Wine on the other-hand, is a Linux port of (major parts of) Microsoft’s Win32 library - the core dependencies of the Windows development libraries, and more importantly, the win32 interface elements. With Wine, you can run many traditional C++ win32 executables on Linux, with certain limitations.

Mono’s biggest stumbling block is the GUI and .NET programs that use P/Invoke to call native non-managed win32 dlls - Mono is a pure .NET environment, and can’t handle them. But from the description above, that’s exactly what WINE excel at… So can’t we use WINE + Mono to make just about any .NET program run on Linux fresh out of the .NET compiler?

Unfortunately, the answer is no. Back when the Mono project was first starting out, the Mono development team considered using WINE to implement the System.Windows.Forms namespace of the .NET Framework (which is practically 100% native C++ unmanaged win32 code in .NET wrappers). But they made the right choice in deciding to not take the easy way and go that route, leaving the integrity of the Mono project intact and focusing on true cross-platform user interface libraries instead (the GTK# is now the UI Library of choice for cross-platform .NET applications).

Click to continue reading "Complete .NET Portability with Wine & Mono?"

Written by Computer Guru on September 19th, 2007 with no comments.
Read more articles on Coding and Alternatives and Mono and WINE and .NET Framework and c# and Windows and Programming and Linux and software.

Shell Namespace Extension: Adding Custom Command Module Items

Overview

In my earlier post, I showed how to create a Shell Namespace Extension using the default IShellView implementation (also known as DefView).  One thing you might have noticed from the sample is that the Commands Module is void of even the default items such as “Organize” and “Views”. 

Commands Module - FolderViewImpl

If you are developing your own Namespace and want to include the default buttons and/or add your own elements to the Commands Module as well, how do you accomplish this?  The answer:   you must implement the IExplorerCommand, IExplorerCommandProvider and IEnumExplorerCommand interfaces.

Below I describe what each of the interfaces is used for and what you need to do to properly implement them in your code.

IExplorerCommandProvider

After your Namespace is loaded, the Shell will ask your Namespace for an instance of an IExplorerCommandProvider.  This interface exposes two methods:  GetCommand and GetCommands.  The Shell calls the GetCommand method to retrieve a specific IExplorerCommand object that matches the supplied GUID (Each command is identified by a GUID).  The

Click to continue reading "Shell Namespace Extension: Adding Custom Command Module Items"

Written by chrdavis on September 5th, 2007 with no comments.
Read more articles on shell and namespace and Coding and API and Programming and vista and Windows Vista.