コード例 #1
0
ファイル: methods.cs プロジェクト: wyrdnixx/JoHeSupporter
        public methods(param _givenparam)
        {
            // Parameterobjekt übergeben
            _param = _givenparam;

            // XML Datei laden
//            _param.Cfgxml = AppDomain.CurrentDomain.BaseDirectory + "config.xml";
            parsecfgxml(_param.Cfgxml);


            #region Lizenzprüfung
            license _license = new license();



            // lizenz für das Programm prüfen
            if (!_license.checkLicense(_param.AppCfg_License))
            {
                string _licenseDate = "";


                // Versuche zu lesen, ob das Lizenzdatum abgelaufen ist.
                try
                {
                    _licenseDate = _license.getLicenseExpireDate();
                }
                catch (Exception) { }

                if (_licenseDate != "")     // Wenn ein Ablaufdatum gelesen werden konnte
                {
                    MessageBox.Show("Lizenz ist abgelaufen. \nAblaufdatum: " + _license.getLicenseExpireDate() + "\nProgramm wird beendet.", "JoHeSupporter");
                }
                else                        // Wenn kein Abalufdatum aus dem Schlüssel gelesen werden konnte.
                {
                    MessageBox.Show("Lizenz ist ungültig. Programm wird beendet.", "JoHeSupporter");
                }
                // Programm wegen Lizenzfehler beenden
                System.Environment.Exit(1);
            }

            // Mail Nachricht senden, wenn die Lizenz in weniger als 30 Tagen abläuft.

            if (_license.getLicenseDaysLeft() < 30)
            {
                sendLicenseWarningMail(_license.getLicenseExpireDate().ToString());
            }

            // Lizenzablaufdatum für HTML Text auslesen.
            try
            {
                _LicenseExpireDate = _license.getLicenseExpireDate().ToString();
                //MessageBox.Show(_LicenseExpireDate);
            }
            catch (Exception e) { MessageBox.Show(e.Message.ToString()); }

            #endregion Lizenzprüfung
        }
コード例 #2
0
        // Vesaatz der Position in Titelleiste

        public GUI(methods _methods)
        {
            // damit die Form klein genug werden kann
            this.MinimumSize = new System.Drawing.Size(16, 5);
            this.Size        = new System.Drawing.Size(16, 5);


            methods = _methods;
            param   = methods._Param;

            // setze CustomIcon, wenn vorhanden - ansonnsten nimm das Default
            try
            {
                this.BackgroundImage = Image.FromFile
                                           (AppDomain.CurrentDomain.BaseDirectory
                                           + param.AppCfg_CustomIconFile);
            }
            catch (Exception)
            {
                this.BackgroundImage = global::JoHeSupporter.Properties.Resources.Icon;
            }



            InitializeComponent();

            this.ShowInTaskbar = false;
            // ToolTip für den Button
            ToolTip GuiToolTip = new ToolTip();

            GuiToolTip.SetToolTip(this, "JoHeSupporter\n[Shift] + Maus -> Bewegen\nRechtsklick -> Menü");



            // Active Window Change event definieren
            dele = new WinEventDelegate(WinEventProc);
            //IntPtr m_hhook = SetWinEventHook(EVENT_SYSTEM_FOREGROUND, EVENT_OBJECT_LOCATIONCHANGE, IntPtr.Zero, dele, 0, 0, WINEVENT_OUTOFCONTEXT);

            IntPtr m_hhook = SetWinEventHook(EVENT_SYSTEM_FOREGROUND, EVENT_OBJECT_LOCATIONCHANGE, IntPtr.Zero, dele, 0, 0,
                                             WINEVENT_OUTOFCONTEXT
                                             //WINEVENT_SKIPOWNPROCESS |
                                             //  EVENT_SYSTEM_MENUSTART |
                                             //  EVENT_SYSTEM_MENUPOPUPSTART |
                                             //  EVENT_SYSTEM_CONTEXTHELPSTART |
                                             //    EVENT_SYSTEM_SCROLLINGSTART //|
                                             //EVENT_SYSTEM_DESKTOPSWITCH
                                             );

            // Größe des Icons nach dem Wert der XML Datei anpassen.
            this.ClientSize = new Size(param.AppCfg_IconSize, param.AppCfg_IconSize);
        }
コード例 #3
0
        public UserDialog(methods _methods, param _param)
        {
            // methodenObjekt übergeben
            Methods = _methods;
            Param   = _param;

            InitializeComponent();

            //Priorität in dem Userdialog zur Auswahl
            if (Param.AppCfg_EnablePrio == "true")
            {
                this.check_HighPrio.Visible = true;
            }
            else
            {
                this.check_HighPrio.Visible = false;
            }
        }
コード例 #4
0
ファイル: Program.cs プロジェクト: wyrdnixx/JoHeSupporter
        static void Main(string[] args)
        {
            //Objekte für Parameterklasse und Methodenklasse
            param param = new param();

            param.Cfgxml = AppDomain.CurrentDomain.BaseDirectory + "config.xml";

            methods methods = new methods(param);

            // normaler Programmstart
            if (args.Length == 0)
            {
                // Normal Startup
            }
            else if (args.Length == 1 && args[0] == "-encryptpwd")     // Wenn mit -encryptpwd passwort gestartet wurde
            {
                // Mailpasswort verschlüsseln
                Application.Run(new GUIChangePassword(methods));

                System.Environment.Exit(1);
            }
            else       // Wenn unguelltige Parameter uebergeben wurden
            {
                MessageBox.Show("Programm wurde mit ungültigen Parametern gestartet. \n Bitte ohne parameter starten oder \n JoHeSupporter.exe -encryptpwd MeinMailPasswort \n um ein Email Passwort für die Config.xml zu erstellen.", "JoheSupporter");
                System.Environment.Exit(1);
            }



            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);



            //MessageBanner msgBanner = new MessageBanner();
            //new Thread(() => new MessageBanner().ShowDialog()).Start();
            new Thread(() => Application.Run(new MessageBanner())).Start();



            param.UserMail = methods.getUserMail();

            Application.Run(new GUI(methods));
        }
コード例 #5
0
 public GUIChangePassword(methods _methods)
 {
     InitializeComponent();
     methods = _methods;
     param   = methods._Param;
 }