所以,我无法将程序与特定文件类型,而不强迫穷人用户输入的管理员密码关联(它可能是确定为家庭用户,但它是为用户在企业ENV一个巨大的问题).在这种情况下,唯一的解决方案是仅为当前用户建立关联.
我试过了,但有些东西不起作用.
如果我理解正确,我必须在ctCurUserFileExt中写一个像(例如)'.mp3'这样的密钥并写入类似'my_file'的东西.然后在ctCurUserClases中我添加一个这样的键:
WriteReg_String(RootKey, ctCurUserClases+ 'my_file\shell\open\command', '', Application.ExeName+ ' "%L"', TRUE)
Run Code Online (Sandbox Code Playgroud)
但是,当我双击该文件时,Windows会询问我应该打开它的应用程序.
这是常数:
CONST
RootKey= 'HKEY_CURRENT_USER';
ctCurUserFileExt= '\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\';
ctCurUserClases = '\Software\Classes\';
Run Code Online (Sandbox Code Playgroud) 我需要用户能够双击.pdb文件并使用myPgm.exe打开它.
将文件类型(myData.pdb)与可执行文件(myPgm.exe)相关联的语法是什么?
它是注册表项吗?
其他人也问了类似的问题,但我想澄清一下.我想在安装时无需管理权限即可构建我的应用程序.对于文件关联,我理解我需要在注册表中编写,但到目前为止,我在stackoverflow文章中找到了两个不同的位置:
HKEY_CURRENT_USER\Software\Classes
另一个在
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts
那么哪一个合适呢?