public static int Main(string[] args)
        {
            string strUrlWsaaWsdl       = DEFAULT_URLWSAAWSDL;
            string strIdServicioNegocio = DEFAULT_SERVICIO;
            string strRutaCertSigner    = DEFAULT_CERTSIGNER;
            string strPassword          = "******";

            strIdServicioNegocio = "wsfe";
            strRutaCertSigner    = "c:\\certificado.pfx";

            // Argumentos OK, entonces procesar normalmente...

            LoginTicket   objTicketRespuesta = null;
            Task <string> strTicketRespuesta = null;


            try {
                objTicketRespuesta = new LoginTicket();

                strTicketRespuesta = objTicketRespuesta.ObtenerLoginTicketResponse(strIdServicioNegocio, strUrlWsaaWsdl, strRutaCertSigner, strPassword);
            } catch (Exception excepcionAlObtenerTicket) {
                Console.WriteLine("***EXCEPCION AL OBTENER TICKET:");
                Console.WriteLine(excepcionAlObtenerTicket.Message);
                return(-10);
            }
            return(0);
        }
        public async Task <bool> login(string certificadoPFX, string password, string servicio = "wsfe")
        {
            mCertificadoPFX = certificadoPFX;
            mPassword       = password;
            LoginTicket loginTicket = new LoginTicket();

            try
            {
                var url = mModoProduccion ? URLWSAA : URLWSAA_HOMO;
                await loginTicket.ObtenerLoginTicketResponse(servicio, url, certificadoPFX, password);

                mAuthRequest       = new wsfev1.FEAuthRequest();
                mAuthRequest.Token = loginTicket.Token;
                mAuthRequest.Sign  = loginTicket.Sign;
                mAuthRequest.Cuit  = (long)loginTicket.CUIT;

                return(true);
            }
            catch (Exception e)
            {
                mErrorCode = -1;
                mErrorDesc = e.Message;
                return(false);
            }
        }