예제 #1
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);
        }
예제 #2
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;
            }
        }
예제 #3
0
        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));
        }
예제 #4
0
 public GUIChangePassword(methods _methods)
 {
     InitializeComponent();
     methods = _methods;
     param   = methods._Param;
 }