Windows 如何为指向特定firebird数据库存档的应用程序创建快捷方式?

Windows 如何为指向特定firebird数据库存档的应用程序创建快捷方式?,windows,delphi,Windows,Delphi,如何为指向特定firebird数据库存档的应用程序创建快捷方式 比如: \\192.168.235.5\application\app.exe \\192.168.235.2:3050:C:\firebird\db.fdb \\192.168.235.5\application\app.exe->应用程序运行路径正常,客户端计算机没有客户端。所有机器从服务器运行应用程序;及 \\192.168.235.2:3050:C:\firebird\db.fdb->情况说明:数据库存档存储在另一台计算

如何为指向特定firebird数据库存档的应用程序创建快捷方式

比如:

\\192.168.235.5\application\app.exe \\192.168.235.2:3050:C:\firebird\db.fdb
  • \\192.168.235.5\application\app.exe->应用程序运行路径正常,客户端计算机没有客户端。所有机器从服务器运行应用程序;及
  • \\192.168.235.2:3050:C:\firebird\db.fdb->情况说明:数据库存档存储在另一台计算机中
我想我在几年前看到了一个启动器,当我使用Windows时,我看到了这个角色。也许在一台运行银行应用程序的机器上,财务部门负责管理树型企业。那是一个12年。现在我一直在使用Linux


此应用程序可以与不同的数据库一起运行,客户端计算机可以有多个快捷方式。

在使用Delphi函数后,通过代码创建快捷方式:

function CreateShellLink(
    const ATargetName  : String;
    const AArguments   : String;
    const ALinkFolder  : String;
    const ALinkName    : String;
    const ADescription : String): Boolean;
var
    ISLink       : IShellLink;
    IPFile       : IPersistFile;
    LinkFileName : String;
    hr           : HRESULT;
const
    IID_IPersistFile: TGUID = (
        D1:$0000010B;D2:$0000;D3:$0000;D4:($C0,$00,$00,$00,$00,$00,$00,$46));
begin
    Result := FALSE;
    if ALinkName = '' then
        Exit;

    hr := CoCreateInstance(CLSID_ShellLink,
                           nil,
                           CLSCTX_INPROC_SERVER,
                           IID_IShellLink,
                           ISLink);
    if not Succeeded(hr) then
        Exit;

    hr := ISLink.QueryInterface(IID_IPersistFile, IPFile);
    if not Succeeded(hr) then
        Exit;

    ISLink.SetDescription(PChar(ADescription));
    ISLink.SetPath(PChar(ATargetName));
    ISLink.SetWorkingDirectory(PChar(ExtractFilePath(ATargetName)));
    ISLink.SetArguments(PChar(AArguments));

    ForceDirectories(ALinkFolder);
    LinkFileName := IncludeTrailingBackslash(ALinkFolder) +
                    ChangeFileExt(ALinkName,
                    '.lnk');

    DeleteFile(LinkFileName);
    if IPFile.Save(PChar(LinkFileName), FALSE) = S_OK then
        Result := TRUE;
end;
示例用法:

CreateShellLink('C:\Program Files\Notepad++\notepad++.exe',
                'E:\Temp\BugReport1.txt',
                'C:\Users\MyUserCode\Desktop',
                'ShortcutTest',
                'Demo of CreateShellLink');
当然,与其硬编码的dektop文件夹,不如查询系统以获取桌面文件夹。如果你不知道怎么做,自己也找不到,那就另问一个问题

应用于您问题的数据,呼叫变为:

CreateShellLink('\\192.168.235.5\application\app.exe',
                '\\192.168.235.2:3050:C:\firebird\db.fdb',
                'C:\Users\MyUserCode\Desktop',
                'Databse access',
                'Use this shortcut to start database access');

不清楚您的问题是什么,但我认为这与Firebird没有直接关系,而是与您如何在Delphi应用程序中接受和处理命令行选项有关,对吗?你可能想把你的问题重新表述一下,使之更清楚,并且确保在问题的主体中提出明确的问题,而不仅仅是在标题中。你真的是这个意思吗?或者只是一个命令提示符来添加?
“C:\\Windows\Temp”
?本地路径没有双反斜杠。我不确定我是否理解你的问题。。。如果您的问题是“编写脚本”来运行带有参数的应用程序,那么您将看到如何编写批处理文件(扩展名为.bat的文本文件)。在该文件中,您可以输入显示的文本。然后创建一个快捷方式,将其放在用户桌面或其“开始”菜单中。最简单的方法是使用鼠标右键拖放批处理文件并将其放到桌面上,然后选择“在此处创建快捷方式”。如果这不是你问的问题,请编辑你的问题,使其变得清晰。谢谢@fpiette先生。捷径就是这个术语。你知道怎么做吗?