从另一个应用程序将参数传递给部署在文件存储(而非 Web)上的 wpf clickonce 应用程序

Passing parameters to wpf clickonce application deployed on filestore (not web) from another application

我在将参数从一个 WPF 应用程序传递到另一个时遇到问题。 我正在尝试将其作为带有参数(字符串)的新进程启动,但未传递任何内容。

这是我尝试过的: AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData 为空。

ApplicationDevelopment.CurrentDevelopment.ActivationUri.Query 为空

Environment.GetCommandLineArguments 给我应用程序的路径

我是这样启动应用程序的: System.Diagnostics.Process.Start(文件路径, "argumentTest");

两个应用程序都部署为点击一次,在发布选项中的第二个应用程序中我选中了 "Allow URL parameters to be passed to application"

I'm starting the app like this: System.Diagnostics.Process.Start(filepath, "argumentTest");

filePath 应该参考建议的快捷方式 here:

StringBuilder sb = new StringBuilder();
sb.Append(Environment.GetFolderPath(Environment.SpecialFolder.Programs));
sb.Append("\");
sb.Append("WpfApplicationClickOnce"); //pubslisher name
sb.Append("\");
sb.Append("WpfApplicationClickOnce.appref-ms "); //application name
string shortcutPath = sb.ToString();

Process.Start(shortcutPath, "argumentTest");

然后您应该能够使用 AppDomain.CurrentDomain.SetupInformation.ActivationArguments.ActivationData 检索数据。