zoukankan      html  css  js  c++  java
  • c# 启动的时候向其他程序传值

    本文实例讲述了Winform启动另一个项目传值的方法。分享给大家供大家参考。具体如下:

    背景:从A项目中登陆后,跳转到B项目的某个页面(B不再登陆)。

    A项目启动进程:

    public Form1()
    {
        InitializeComponent();
    }
    #region 调用进程
    [DllImport("Shell32.dll")]
    private static extern int ShellExecute(
         IntPtr hwnd,
         string lpOperation,      //多为"open"
         string lpFile,           //文件名称
         string lpParameters,   //参数
         string lpDirectory,      //文件路径 
         int nShowCmd
         );
    /// <summary>
    /// 加载相应的应用程序
    /// </summary>
    private void StartApplication(string projname, string arg)
    {
        ShellExecute(IntPtr.Zero, "Open", projname, arg, Application.StartupPath + @"", 1);
    }
    #endregion
    
    private void btnJump_Click(object sender, EventArgs e)
    {
        StartApplication("B", "Doctor,00045,14092701");//从这里跳转
    }
    

      B项目中:

    /// <summary>
    /// 应用程序的主入口点。
    /// </summary>
    [STAThread]
    static void Main(string[] args)
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        if (args.Length>0)
        {
           string[] strArr = args[0].ToString().Split(new char[] { ','});
           Application.Run(new MainForm(strArr[0], strArr[1], strArr[2]));
        }
        else
        {
     Application.Run(new MainForm());
        }
    }
    

      

    备注:

    1.其中B项目Main方法的参数 string[] args,只能接收args[0],这一个string串,而不是整个数组。所以A项目传值的时候,传递的是string(使用逗号,来分割)。

    2. 重载方法Application.Run(new MainForm())来传递这三个参数:strArr[0], strArr[1], strArr[2]。

    3.属性传值方法:

    public MainForm(string _module,string _userID,string _patientID)
    {
        InitializeComponent();
        module = _module;
        userID = _userID;
        patientID = _patientID;
    }   
         private string userID="";
    public string UserID
    {
        get { return userID; }
        set { userID = value; }
    }
    

      

  • 相关阅读:
    AKKA学习(二) 未完
    AKKA学习(一)
    seata项目结构
    seata demo
    FESCAR
    GTS原理、架构
    Fescar使用(资料)
    高性能异步分布式事务TCC框架(资料汇总)
    TIDB学习资料
    自旋锁
  • 原文地址:https://www.cnblogs.com/wolly88/p/4284003.html
Copyright © 2011-2022 走看看