コード例 #1
0
ファイル: RunIW.cs プロジェクト: Galise31/ImportWeb
        // -------------------------------------------------------------
        // On lance l'ImportWeb
        // -------------------------------------------------------------
        private void timer1_Tick(object sender, EventArgs e)
        {
            timer1.Enabled = false;
            string  lcData = "";
            IniFile loIni  = new IniFile(AppDomain.CurrentDomain.BaseDirectory + "IW_Login.txt");

            // Si compte TEST, pas de fichier IW_Login.txt
            if (File.Exists(AppDomain.CurrentDomain.BaseDirectory + "IW_Login.txt"))
            {
                // On charge les paramètres de la procédure
                // Vous devez utiliser votre source de données
                int lnIndice = 0;
                foreach (var line in File.ReadAllLines(AppDomain.CurrentDomain.BaseDirectory + "IW_Login.txt"))
                {
                    if (lnIndice == 0)
                    {
                        if (line.Contains("[" + IwTools.cAppli + "]"))
                        {
                            lnIndice = 1;
                        }
                    }
                    else if (line.StartsWith("["))
                    {
                        break;
                    }
                    else
                    {
                        lcData = lcData + line + Environment.NewLine;
                    }
                }
            }

            // Appel de l'ImportWeb
            lcData = @"<IW>
	<User>"     + IwTools.cIWUser + @"</User>
	<Pwd>"     + IwTools.cIWPwd + @"</Pwd>
	<Action>"     + IwTools.cAction + @"</Action>
	<ActionParam>"     + IwTools.cActionParam + @"</ActionParam>
	<Cie>"     + IwTools.cAppli + @"</Cie>
	<CieLogin>"     + loIni.Read("txtWebLogin", IwTools.cAppli) + @"</CieLogin>
	<CiePwd>"     + loIni.Read("txtWebPwd", IwTools.cAppli) + @"</CiePwd>
	<cXMLReponse></cXMLReponse>
	<nOption></nOption>
	<CieParam>"     + lcData + @"</CieParam>
</IW>";

            string lc = IwTools.loIW.Start(lcData);

            if (IwTools.loIW.cErreur != String.Empty)
            {
                imgWait.Visible = false;
                MessageBox.Show(IwTools.loIW.cErreur + Environment.NewLine +
                                lcData, "Erreur ImportWeb", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            ;
            IwTools.cIW = IwTools.loIW.cXMLReponse;

            // Selon l'action, on appelle Contrat.cs ou Bordereau.cs
            Thread thread;

            if (IwTools.cAction == "Contrat_Creer")
            {
                thread = new Thread(delegate() { ThreadContrat(); });
            }
            else
            {
                thread = new Thread(delegate() { ThreadBordereau(); });
            }
            thread.SetApartmentState(ApartmentState.STA);     // Pour le WebBrowser
            thread.Start();

            this.Close();
        }