标签: windows-shell

如何从python脚本中控制Windows shell窗口的大小?

从Windows启动脚本类型的python文件时,会得到一个运行脚本的Windows shell类型窗口.脚本如何确定并设置/控制所述窗口的窗口大小,屏幕缓冲区大小和窗口位置?我怀疑这可以用pywin32模块完成,但我找不到如何.

python pywin32 windows-shell

3
推荐指数
1
解决办法
4359
查看次数

如何在Delphi中编写Windows Shell命名空间扩展?

首先,抱歉我的英语不好......

我想使用命名空间扩展(NSE)向Windows资源管理器添加一个虚拟文件夹,我希望用户能够打开这个虚拟文件夹来探索一些路径(例如c:\test).

我怎么能用Delphi做到这一点?谢谢.

windows delphi winapi windows-shell shell-extensions

3
推荐指数
1
解决办法
1836
查看次数

使用WScript.shell编写文件

如何使用WScript编写文本文件我真的很新,这就是为什么我不能提供一些细节.我想写可以保存在c日志文件://用户/用户/应用程序数据/本地

我的示例代码,使用FileSystemObject

function WriteFile() 
{
   var fso  = new ActiveXObject("Scripting.FileSystemObject"); 
   var fh = fso.CreateTextFile("d:\\Test.txt", true); 
   fh.WriteLine("Some text goes here..."); 
   fh.Close(); 
}

<body onload = "WriteFile();">
</body>
Run Code Online (Sandbox Code Playgroud)

它确实在d中返回:但在本地c:它不会.

javascript scripting windows-shell jscript

3
推荐指数
1
解决办法
8495
查看次数

如何锁定并强制用户重新输入 Windows 密码?

我想锁定当前操作用户的访问,就好像该用户

单击“开始”→指向“关机”→单击“锁定”

在 C# 中如何做到这一点?

c# windows windows-shell user-accounts

3
推荐指数
1
解决办法
418
查看次数

路径不存在时的SHParseDisplayName

我正在开发一个替代IFileOpenDialogIFileSaveDialog

我几乎可以使用它(至少是IFileOpenDialog),但是当我要返回IShellItem代表新文件名(用户已选择保存在GetResult()方法中)的时,我将无法SHParseDisplayName使用该新文件名。我总是收到一个错误"The system cannot find the file specified"

我将欣赏一些示例或其他解决方案,也许可以解决我的问题。

编辑:

    HRESULT CFileSaveDialogProxy::GetResult( __RPC__deref_out_opt IShellItem **ppsi)
    {
        //return m_Original->GetResult(ppsi);

        WCHAR pszPath[MAX_PATH] = {0};
        HRESULT hr = ERROR_CANCELLED;

        if (m_SelectedFiles.size() > 0)
        {
            QString s = m_SelectedFiles.at(0);
            s.replace(QString("/"),QString("\\"));
            s.toWCharArray(pszPath);

            //PCIDLIST_ABSOLUTE pIdL = ILCreateFromPath(pszPath);
            PIDLIST_ABSOLUTE pIdL = NULL;
            SFGAOF out;
            hr = SHParseDisplayName(pszPath,NULL,&pIdL,SFGAO_FILESYSTEM,&out);
            if (SUCCEEDED(hr))
            {
                hr = SHCreateItemFromIDList(pIdL, IID_PPV_ARGS(ppsi));
            }
        }

        return hr;
    }
Run Code Online (Sandbox Code Playgroud)

c++ winapi windows-shell

3
推荐指数
1
解决办法
2690
查看次数

如何正确更新托盘通知图标?

说,我创建了我的图标:

//'ghIcon' of type HICON
ghIcon = LoadImage(m_hInstance, MAKEINTRESOURCE(IDI_ICON1), IMAGE_ICON, nCx, nCy, 0);
Run Code Online (Sandbox Code Playgroud)

然后将其设置为显示在系统托盘上:

NOTIFYICONDATA nid;
memset(&nid, 0, sizeof(nid));
nid.cbSize = sizeof(nid);
nid.hWnd = hMyWnd;
nid.uID = TRAY_ICON_ID1;
nid.uFlags = NIF_ICON;
nid.uCallbackMessage = TRAY_NOTIFICATION_ID1;
nid.hIcon = ghIcon;

Shell_NotifyIcon(NIM_ADD, &nid);
Run Code Online (Sandbox Code Playgroud)

然后在某个时候我想用一个新图标替换它:

if(ghIcon)
{
    //Delete old icon first
    DestroyIcon(ghIcon);
}

//Load new icon
ghIcon = LoadImage(m_hInstance, MAKEINTRESOURCE(IDI_ICON2), IMAGE_ICON, nCx, nCy, 0);

NOTIFYICONDATA nid;
memset(&nid, 0, sizeof(nid));
nid.cbSize = sizeof(nid);
nid.hWnd = hMyWnd;
nid.uID = TRAY_ICON_ID1;
nid.uFlags = NIF_ICON;
nid.hIcon = ghIcon;

Shell_NotifyIcon(NIM_MODIFY, …
Run Code Online (Sandbox Code Playgroud)

c++ winapi trayicon system-tray windows-shell

3
推荐指数
1
解决办法
1212
查看次数

创建类似 Windows 资源管理器的目录树

目前,我正在使用 wxWidgets 的 wxGenericDirCtrl,它为我提供了目录树的用户界面。它看起来像这样:

wxGenericDirCtrl

但是,我希望它看起来像这样:

Windows 资源管理器目录树

在与 wxWidgets 开发人员交谈时,他们建议一种好的方法是修改 wxGenericDirCtrl 类以使用本机 Windows 目录控件。我想自己将此功能贡献给 wxWidgets,但我不确定从哪里开始,并且可以使用一些建议来帮助我开始。

问题:

  1. 在 C++ 中创建此类控件的正确本机方法是什么?我使用 MFC、.NET 还是其他语言?
  2. 有没有关键字可以帮助我找到这些信息?
  3. 有任何示例代码显示如何执行此操作吗?

c++ winapi wxwidgets windows-shell

3
推荐指数
1
解决办法
2440
查看次数

哪个 DLL 有 PathCchAppend?

我正在尝试有条件地使用(如果可用)该函数PathCchAppend。我已经从 header 获得了函数签名pathcch.h。但是,当我尝试从 获取函数的地址时SHLWAPI.DLL,它失败了:

auto pca = GetProcAddress(GetModuleHandle(L"shlwapi.dll"), "PathCchAppend");
Run Code Online (Sandbox Code Playgroud)

使用 Depends,我看到这个 DLL 中不存在这个函数(我在 Windows 10 上)。不存在任何pathcch.dll,因此也无法加载它。

这个函数放在哪个DLL中?

编辑:感谢您的回答。在这里我找到了 DLL 的名称,如下面的答案中所述:

https://learn.microsoft.com/en-us/windows/win32/apiindex/windows-81-api-sets

c++ dll winapi windows-shell visual-c++

3
推荐指数
1
解决办法
1208
查看次数

如何根据文件夹的路径获取LPITEMIDLIST指针?

我想获取指定文件夹的系统图标,但是检索图标的唯一方法是使用SHGetFileInfo()方法.SHGetFileInfo()方法的第一个参数是LPITEMIDLIST的指针.

如果我只有文件夹的绝对路径,我如何根据路径获取指针?

explorer icons windows-shell

2
推荐指数
1
解决办法
2540
查看次数

Windows如何将图标与资源管理器shell中的文件相关联?

我安装了InDesign CS2和CS3.两者都使用扩展名为.indd的文件.Windows如何知道使用哪个图标?它使用正确的图标,即CS2文件有cs2图标,CS3文件有CS3图标.

Windows如何知道如何做到这一点?

如何在程序中提取或使用此版本检测系统?

编辑:

感谢您的shell-extension-icon-handler答案.对我来说是新事物.但有什么方法可以连接到InDesign提供的IconHandler并使用它来检测InDesign文件的版本?

windows icons windows-explorer windows-shell detection

2
推荐指数
1
解决办法
2034
查看次数