在Windows中,当一个人在Windows资源管理器中并右键单击文件或目录时,会出现一个Windows上下文菜单,其中包含可以对此文件或目录执行的所有操作.
回想当天,Brad Stowers编写了一个单元ItemProp.pas,它在一个人自己的Delphi应用程序中做了完全相同的事情.这个单元通过Delphi 5工作得很好,但对于D7及以上版本,会抛出很多错误.
http://www.koders.com/delphi/fid7ABE724EBD5F2123FF824AFD45151D2A087C5E6C.aspx?s=network
好的!我承认!我很懒,已经谷歌搜索了一个更新的单位,甚至像这样的一个,已经工作了几个小时试图使这个单位至少D7兼容但我想我错过了某些地方,因为我没有成功的任何努力这个.
所以...我的问题是,是否有人为D7及更高版本更新了此单元或者是否存在执行此代码的单元或组件?
提前致谢!
约翰
我怀疑所需要的只是更新DFS.inc中的编译器版本指令
我补充道
{$DEFINE DFS_DELPHI}
{$DEFINE DFS_COMPILER_4_UP}
{$DEFINE DFS_NO_COM_CLEANUP}
{$DEFINE DFS_COMPILER_3_UP}
Run Code Online (Sandbox Code Playgroud)
到主文件(ItemProp.pas),它在Delphi 2007上编译好了,但我还没有尝试运行代码.
而不是翻译这个单元你可以使用更新的JEDI JCL库,检查JclShell单元,在这个单元内部存在一个名为whcih的函数,DisplayContextMenu显示一个File的shell上下文菜单.
function DisplayContextMenu(const Handle: HWND; const FileName: string;
Pos: TPoint): Boolean;
Run Code Online (Sandbox Code Playgroud)