从 Web 窗体单击窗口上的按钮

本文关键字:按钮 窗口 单击 Web 窗体 | 更新日期: 2023-09-27 18:36:53

我创建了一个Windows表单程序,该程序可以执行一些商业智能,但随后需要通过Web表单访问它。我对编程相当陌生,所以我不知道在这里可以实现什么。但本质上,我希望有人上网,当用户按下按钮时,它会向文件中的 Windows 表单可执行文件发送一条消息并告诉它运行,然后按下表单上的按钮,该按钮运行一种方法来生成图形图像。这可能吗?

这是相关代码。

在网络表单中,我有这个按钮。

protected void rolloutSmartSheets(object sender, EventArgs e)
    {
        string message = string.Format("Starting processes");
        ltMessage.Text = message;
        Process process = new Process();
        process.StartInfo.FileName = @"P:'Visual Studio 2013'Projects'Smartsheet'SmartsheetAPI'obj'Debug'SmartSheetAPI.exe";
        process.Start();
        message = string.Format("Ended all processes");
        ltMessage.Text = message;
    }

它运行可执行文件,但它打开了 windows 表单,我想如果可执行文件位于另一台计算机上,那不会在那台计算机上打开吗?在这种情况下,我希望它告诉它按下运行我需要的方法的 windows 窗体上的此按钮,然后用户无需担心它。

    public void commitToDatabase_Click(object sender, EventArgs e)
    {
        commitToDataBase();
    }

从 Web 窗体单击窗口上的按钮

如果能够让客户端提前安装某些内容,则可以使用自定义协议处理程序提供此功能。

MSDN 文章中的示例协议处理程序

HKEY_CLASSES_ROOT
   alert
      (Default) = "URL:Alert Protocol"
      URL Protocol = ""
      DefaultIcon
         (Default) = "alert.exe,1"
      shell
         open
            command
               (Default) = "C:'Program Files'Alert'alert.exe" "%1"

然后像这样在您的网络表单上添加一个链接

href="alert://test"

只要客户端在注册表和可执行文件中安装了处理程序,它就会C:'Program Files'Alert'alert.exe运行,将"test"作为第一个参数传递给它。

您可以轻松更改此设置,以提供运行本地图形生成器的功能,并从可能需要的 Web 表单传递任何参数。