Beantwoorden
Kweethetniemeer
Freshman Beetjesweter
Berichten: 8
Mooi, mooi! Pageturner! Gelezen en goedgekeurd! De kop is eraf!

Batchfile schrijven voor ledigen van prullenbak

Ik wil een batchfile schrijven voor het ledigen van de folders voor de prullenbak en spam.

Het openen van telenetwebmail is geen enkel probleem. MAAR

Het aanspreken van sneltoetscombinaties lukt  niet 😞

 

Heeft hier iemand een oplossing voor?

 

Dank bij voorbaat

 

0 Likes
16 reacties
Kweethetniemeer
Freshman Beetjesweter
Berichten: 8
Mooi, mooi! Pageturner! Gelezen en goedgekeurd! De kop is eraf!

Batchfile schrijven voor ledigen van prullenbak

Alvast bedankt voor de tijd, moeite en energie die je erin stopt
thx

0 Likes
Arthur2
Experienced Meesterweter
Berichten: 3098
Krak 2017 Krak 2018 Ere-Krak Jij Netweters wikipedia!

Batchfile schrijven voor ledigen van prullenbak

Ik kan geen functietoetsen (bv Ctrl) sturen...

Als iemand weet hoe dat moet, dan hoor ik het graag.

Gewone toetsen werken wel.

 

Ik zie wel dat er toetsen worden gestuurd maar ze zijn niet juist want er gebeurd niets... (behalve dan de vt die werken alleen functietoetsen doen niks en ik kan ook geen oplossing vinden)

 

 Een groot gedeelte heb ik ergens gekopieerd.

Main

using System.Windows;

namespace WebmailCleanTrash
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void comPortInput_Click(object sender, RoutedEventArgs e)
        {
            ChromeWrapper chrome = new ChromeWrapper("https://mail.telenet.be");
            System.Threading.Thread.Sleep(5000);

            chrome.SendKey('V');
            chrome.SendKey('T');

            System.Threading.Thread.Sleep(2000);

            chrome.SendKey2('A'); // werkt niet
        }
    }
}

 

ChromeWrapper

using System;
using System.Diagnostics;
using System.Runtime.InteropServices;

namespace WebmailCleanTrash
{
    class ChromeWrapper
    {
  
        [DllImport("User32.dll")]
        private static extern int SetForegroundWindow(IntPtr point);
        [DllImport("System.Windows.Forms.dll")]
        private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam);
     
        private static uint WM_KEYDOWN = 0x100, WM_KEYUP = 0x101;
        
        private Process chromeProcess;

        public ChromeWrapper(string url)
        {
            chromeProcess = new Process();
            chromeProcess.StartInfo = new ProcessStartInfo("chrome.exe", url);
            chromeProcess.Start();
        }

        public void SendKey(char key)
        {
            if (chromeProcess.MainWindowHandle != IntPtr.Zero)
            {
    
                SendMessage(chromeProcess.MainWindowHandle, ChromeWrapper.WM_KEYDOWN, (IntPtr)key, IntPtr.Zero);

                System.Threading.Thread.Sleep(100);

                SendMessage(chromeProcess.MainWindowHandle, ChromeWrapper.WM_KEYUP, (IntPtr)key, IntPtr.Zero);
            }
        }


        //Werkt niet
        public void SendKey2(char key2)
        {
         
            SendMessage(chromeProcess.MainWindowHandle, ChromeWrapper.WM_KEYDOWN, (IntPtr)0x11, IntPtr.Zero);
            System.Threading.Thread.Sleep(100);
            SendMessage(chromeProcess.MainWindowHandle, ChromeWrapper.WM_KEYDOWN, (IntPtr)key2, IntPtr.Zero);
           
            System.Threading.Thread.Sleep(100);

            SendMessage(chromeProcess.MainWindowHandle, ChromeWrapper.WM_KEYUP, (IntPtr)0x11, IntPtr.Zero);
            SendMessage(chromeProcess.MainWindowHandle, ChromeWrapper.WM_KEYUP, (IntPtr)key2, IntPtr.Zero);
            
        }
    }
}
 

 

   Arthur2 | Ere-Krak
   Don’t comment bad code—rewrite it. – Brian Kernighan
   Vergeet niet om likes te geven en/of als oplossing te markeren.
0 Likes