Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

C# does Shell, Part 4

, 26 Mar 2003
This article is about the AutoComplete features enabled by windows and how to use them with C#. AutoComplete is the ability to expand strings written in an edit box. The article will develop a class for using this functionality in you applications.
csdoesshell4_demo.zip
ShellBasics
ShellBasics
bin
Release
ShellBasics.dll
obj
Release
ShellBasics.dll
ShellLib.projdata
temp
TempPE
ShellBasics.snk
ShellLib.csproj.user
ShellBasics.suo
WinTester4
App.ico
bin
Release
ShellBasics.dll
WinTester4.exe
obj
Release
temp
TempPE
WinTester4.exe
WinTester4.projdata
WinTester4.csproj.user
csdoesshell4_src.zip
using System;
using System.Runtime.InteropServices;

namespace ShellLib
{
	[ComImport]
	[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
	[Guid("91956D21-9276-11D1-921A-006097DF5BD4")]
	public interface ICurrentWorkingDirectory 
	{
		/// <summary>
		/// Retrieves the current working directory.
		/// </summary>
		[PreserveSig]
		Int32 GetDirectory(
			[MarshalAs(UnmanagedType.LPWStr)]
			String pwzPath,		// Address of a buffer. On return, it will hold a null-terminated Unicode string with 
								// the current working directory's fully qualified path. 
			UInt32 cchSize);	// Size of the buffer in Unicode characters, including the terminating NULL character. 

		/// <summary>
		/// Sets the current working directory.
		/// </summary>
		[PreserveSig]
		Int32 SetDirectory(
			[MarshalAs(UnmanagedType.LPWStr)]
			String pwzPath);	// Address of a null-terminated Unicode string with the fully qualified path of the 
								// new working directory. 

	}
}
	

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Microsoft Public License (Ms-PL)

Share

About the Author

Arik Poznanski
Software Developer (Senior) Verint
Israel Israel
Arik Poznanski is a senior software developer at Verint. He completed two B.Sc. degrees in Mathematics & Computer Science, summa cum laude, from the Technion in Israel.
 
Arik has extensive knowledge and experience in many Microsoft technologies, including .NET with C#, WPF, Silverlight, WinForms, Interop, COM/ATL programming, C++ Win32 programming and reverse engineering (assembly, IL).
Follow on   Twitter   Google+

| Advertise | Privacy | Mobile
Web04 | 2.8.140826.1 | Last Updated 27 Mar 2003
Article Copyright 2003 by Arik Poznanski
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid