Hi Dave, Thanks for your reply.Actually using the IShellFolder and IShellFolder2 interface was the first thing which i had tried.but i didn't have any success with them then i tried to get it through registry.Basically i want to know the sort order for a particular folder view if there is any.Hopefully by using IShellView or IShellFolder2 i can get some useful information.This is the code which i had tried. IntPtr newPidl = IntPtr.Zero ; IShellFolder ishFolder = null; IntPtr ppvOut = IntPtr.Zero; string path = @"C:\Documents and Settings\Administrator\Desktop\A"; if(Interop.SHGetDesktopFolder(ref ishFolder)==0) { // we have it: int cParsed = 0; int afItem = 0; ishFolder.ParseDisplayName( IntPtr.Zero, IntPtr.Zero, path, out cParsed, out newPidl, out afItem); IntPtr handle = IntPtr.Zero; WIN32_FIND_DATA data = new WIN32_FIND_DATA(); handle = Class2.FindFirstFile(path,out data); //here i am getting the error ishFolder.CreateViewObject(handle,ref IID_IShellFolder2,out ppvOut); ****************************************************** but i was not able to get any folder even IShellFolder interface itself from the CreateViewObject function.This is The error i got:: System.InvalidCastException: No such interface supported at TestApplication.IShellFolder.CreateViewObject(IntPtr hwndOwner, Guid& riid, IntPtr& ppvOut) How can i get IshellFolder2 or IShellView interface for any folder.what i am doing wrong here? Also thanks for the .ini link but i don't think it is going to solve my problem.Any ideas will be greatly appreciated.Thanks in Advance. Rakesh