拖拉快捷方式到程序界面(对话框),程序能够分析出该图标对应的可执行文件信息?提供思路

andy_lau 2003-06-06 05:28:51
拖拉快捷方式到程序界面(对话框),程序能够分析出该图标对应的可执行文件信息?
...全文
37 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
andy_lau 2003-06-17
  • 打赏
  • 举报
回复
没人回答?
feiniaoliang 2003-06-12
  • 打赏
  • 举报
回复
我写了一个函数,它以CString的形式返回了.lnk文件的目标和参数。

CString GetShortcutTarget(const CString LinkFileName)
{
HRESULT hres;

CString Link, Temp = LinkFileName;
Temp.MakeLower();
if (Temp.Find(".lnk")==-1) //Check if the name ends with .lnk
Link = LinkFileName + ".lnk"; //if not, append it
else
Link = LinkFileName;

CString Info;
Info.Empty();

IShellLink* psl;

//Create the ShellLink object
hres = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (LPVOID*) &psl);

if (SUCCEEDED(hres))
{
IPersistFile* ppf;
//Bind the ShellLink object to the Persistent File
hres = psl->QueryInterface( IID_IPersistFile, (LPVOID *) &ppf);
if (SUCCEEDED(hres))
{
WORD wsz[MAX_PATH];
//Get a UNICODE wide string wsz from the Link path
MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, Link, -1, wsz, MAX_PATH);

//Read the link into the persistent file
hres = ppf->Load(wsz, 0);

if (SUCCEEDED(hres))
{
//Read the target information from the link object
//UNC paths are supported (SLGP_UNCPRIORITY)
psl->GetPath(Temp.GetBuffer(1024), 1024, NULL, SLGP_UNCPRIORITY);
Temp.ReleaseBuffer();
Info = Temp;

//Read the arguments from the link object
psl->GetArguments(Temp.GetBuffer(1024), 1024);
Temp.ReleaseBuffer();
Info += " " + Temp;
}
}
}
psl->Release();
//Return the Target and the Argument as a CString
return Info;
}
andy_lau 2003-06-12
  • 打赏
  • 举报
回复
对,现在存在3个问题:
1。如何通过鼠标点几得到可执行文件快捷方式对应的*.lnk文件
2。*.lin文件的结构是什么?
freelazy 2003-06-11
  • 打赏
  • 举报
回复
是不是可执行文件的路径在 .lnk里面(用非纯文本方式打开,里面应该有一定的结构,而路径就在其中的一个结构段里),而找到执行文件的路径后,则可以得到其各种信息了.
GoogleGeek 2003-06-11
  • 打赏
  • 举报
回复
有难度!
偶不会!
你自己看看下面这篇文章吧:
http://www.codeproject.com/shell/namespcextguide1.asp
andy_lau 2003-06-10
  • 打赏
  • 举报
回复
我知道每一个快捷方式都对应一个*.lnk文件,其中包含有所有的信息
但是如何通过鼠标的电机 来找到相对的lnk文件
andy_lau 2003-06-10
  • 打赏
  • 举报
回复
快捷方式所对应的可执行文件的文件信喜。
feiniaoliang 2003-06-10
  • 打赏
  • 举报
回复
是要快捷方式文件的信息,还是快捷方式所对应的可执行文件的信息??
andy_lau 2003-06-10
  • 打赏
  • 举报
回复
多少天了都没人来光顾,倒!
andy_lau 2003-06-06
  • 打赏
  • 举报
回复
恳请各位大侠出手相救!

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧