怎么获取自定义的命令行参数?

福昕高级PDF编辑器和福昕阅读器,都可以通过命令行的方式启动,来实现打开文件等动作。

如果需要第三方软件,在通过命令行方式来启动编辑器打开某个文档,并希望传入自定义的命令,和对应的参数数据,用于控制插件UI的呈现或后续应用。可以通过 FRAppCommandLineGetArgumen()接口获取自定义的命令参数。

例如要实现一个通过我们传入的命令行为:

FoxitPDFEditor.exe /Test 参数1 参数2 C:\Users\Administrator\1.pdf

我们自定义的命令为 “Test”,传入的参数有两个,分别为“参数1”和“参数2”。

如何获取我们传入的命令和对应的参数,示例代码如下:


//获取自定义的命令“Test”的参数输入个数
int count= FRAppCommandLineGetArgumentCount(L"Test");
for (int i = 0; i < count; i++)
{
	FS_WideString wstr = FSWideStringNew();
	FRAppCommandLineGetArgument(L"Test", i, &wstr);
	FS_LPCWSTR lpcwstr = FSWideStringCastToLPCWSTR(wstr);
//弹窗显示接收到的参数:
	FRSysShowMessageBox2(lpcwstr, 0, NULL, NULL, false, NULL());
}

如果将上述代码放在编辑器或阅读器的UI加载时,也就是PIInitUIProcs.PILoadRibbonUI()当中;编译生成插件后,通过cmd打开命令行窗口,进入到编辑器的目录,输入 “FoxitPDFEditor.exe /Test 参数1 参数2 C:\Users\Administrator\1.pdf”

效果是先弹出两个窗口显示接受到的参数,最后显示整个编辑器页面并打开指定的文档,如下图所示:

最后打开PDF: