Esempio n. 1
0
        public void KnownFolder_GetIShellItem()
        {
            IKnownFolderManager manager = ShellDesktopMethods.GetKnownFolderManager();
            IKnownFolder        folder  = manager.GetFolder(KNOWNFOLDERID.Windows);
            IShellItem          item    = folder.GetShellItem(0, new Guid(InterfaceIds.IID_IShellItem));

            item.Should().NotBeNull();
            IShellItem2 item2 = (IShellItem2)folder.GetShellItem(0, new Guid(InterfaceIds.IID_IShellItem2));

            item2.Should().NotBeNull();
        }
Esempio n. 2
0
        public void ShellItem_GetDisplayName()
        {
            IKnownFolderManager manager = ShellMethods.GetKnownFolderManager();
            IKnownFolder        folder  = manager.GetFolder(KnownFolderIds.Windows);
            IShellItem          item    = folder.GetShellItem(0, new Guid(InterfaceIds.IID_IShellItem));

            item.GetDisplayName(ShellItemDisplayNames.NormalDisplay).Should().Be("Windows");
        }
Esempio n. 3
0
        public void ShellItem_GetDisplayName()
        {
            IKnownFolderManager manager = ShellDesktopMethods.GetKnownFolderManager();
            IKnownFolder        folder  = manager.GetFolder(KNOWNFOLDERID.Windows);
            IShellItem          item    = folder.GetShellItem(0, new Guid(InterfaceIds.IID_IShellItem));

            item.GetDisplayName(SIGDN.NORMALDISPLAY).Should().Be("Windows");
        }
 /// <summary>
 /// </summary>
 /// <returns></returns>
 public ShellItem CreateShellItem()
 {
     if (_mComInterface != null)
     {
         return(new ShellItem(_mComInterface.GetShellItem(0,
                                                          typeof(IShellItem).GUID)));
     }
     return(new ShellItem((Environment.SpecialFolder)_mCsidl));
 }
Esempio n. 5
0
        /// <summary>
        ///     Create a new instance of the <see cref="ShellKnownFolder" /> class
        ///     to the specified <see cref="IKnownFolder" />.
        /// </summary>
        /// <param name="knownFolderInterface"><see cref="IKnownFolder" />.</param>
        /// <returns><see cref="ShellKnownFolder" />.</returns>
        private static ShellKnownFolder CreateKnownFolder(IKnownFolder knownFolderInterface)
        {
            Contract.Requires <ArgumentNullException>(knownFolderInterface != null);

            // IKnownFolderから IShellItem2を取得する。
            IShellItem2 shellItemNative;
            var         guid = new Guid(ShellIID.IShellItem2);
            var         hr   = knownFolderInterface.GetShellItem(0, ref guid, out shellItemNative);

            if (HRESULT.Failed(hr))
            {
                return(null);
            }

            var shellItem = new ShellItem(shellItemNative);

            return(new ShellKnownFolder(shellItem, knownFolderInterface));
        }