Ejemplo n.º 1
0
        private static string GetSelectedItemCore(IWebBrowserApp webBrowserApp)
        {
            var serviceProvider = webBrowserApp.QueryInterface <Interop.IServiceProvider>();

            var shellBrowser = serviceProvider.QueryService <IShellBrowser>(SID.STopLevelBrowser);

            var shellView = shellBrowser.QueryActiveShellView();

            var folderView = shellView.QueryInterface <IFolderView>();

            int focus = folderView.GetFocusedItem();

            var persistFolder2 = folderView.GetFolder <IPersistFolder2>();

            var shellFolder = persistFolder2.QueryInterface <IShellFolder>();

            var pidl = folderView.Item(focus);

            var fileName = shellFolder.GetDisplayNameOf(pidl, SHGDNF.FORPARSING);

            // Cleanup
            Marshal.FreeCoTaskMem(pidl);

            Marshal.FinalReleaseComObject(shellFolder);
            Marshal.FinalReleaseComObject(folderView);
            Marshal.FinalReleaseComObject(shellBrowser);
            Marshal.FinalReleaseComObject(serviceProvider);

            return(fileName);
        }
Ejemplo n.º 2
0
        private static void OpenReportInIE()
        {
            object           o  = new object();
            InternetExplorer ie = new InternetExplorerClass();
            IWebBrowserApp   wb = (IWebBrowserApp)ie;

            wb.Visible = true;

            wb.Navigate(ConfigurationManager.AppSettings["logTextFileName"].ToString(), ref o, ref o, ref o, ref o);
        }
Ejemplo n.º 3
0
    private FileSystemInfo?GetSelectedItemCore(IWebBrowserApp webBrowserApp)
    {
        // ReSharper disable once SuspiciousTypeConversion.Global
        var serviceProvider = (IServiceProvider)webBrowserApp;

        serviceProvider.QueryService(PInvoke.SID_STopLevelBrowser, out IShellBrowser shellBrowser);

        shellBrowser.QueryActiveShellView(out var shellView);

        // ReSharper disable once SuspiciousTypeConversion.Global
        var folderView = (IFolderView)shellView;

        folderView.GetFocusedItem(out var index);
        folderView.Item(index, out IntPtr ppidl);

        folderView.GetFolder(out IPersistFolder2 persistFolder2);

        // ReSharper disable once SuspiciousTypeConversion.Global
        var shellFolder = (IShellFolder)persistFolder2;

        shellFolder.GetDisplayNameOf(ppidl, (uint)_SHGDNF.SHGDN_FORPARSING, out var pName);

        Span <char> pszBuf = new char[PInvoke.MAX_PATH];

        PInvoke.StrRetToBuf(ref pName, ppidl, pszBuf);

        try
        {
            var selectedPath = new string(pszBuf.TrimEnd('\0'));

            if (File.Exists(selectedPath))
            {
                return(new FileInfo(selectedPath));
            }

            if (Directory.Exists(selectedPath))
            {
                return(new DirectoryInfo(selectedPath));
            }

            return(null);
        }
        finally
        {
            Marshal.FreeCoTaskMem(ppidl);

            Marshal.ReleaseComObject(shellFolder);
            Marshal.ReleaseComObject(persistFolder2);
            Marshal.ReleaseComObject(folderView);
            Marshal.ReleaseComObject(shellView);
            Marshal.ReleaseComObject(shellBrowser);
            Marshal.ReleaseComObject(serviceProvider);
        }
    }
Ejemplo n.º 4
0
        public void AddNewFriend()
        {
            object           o  = null;
            InternetExplorer ie = new InternetExplorerClass();

            IWebBrowserApp wb = ie;

            wb.Visible = true;
            wb.ToolBar = 0;
            wb.Width   = 600;
            wb.Height  = 600;
            wb.Navigate("http://www.facebook.com/addfriend.php?id=" + uidToAddTextBox.Text, ref o, ref o, ref o, ref o);
        }
Ejemplo n.º 5
0
        // Checks any hash on VirusTotal using IE COM without using VT API
        static string vt(string hash)
        {
            try
            {
                // We can't use WebClient because VirusTotal websites executes some JavaScript
                // We are not using WebBrowser because it shows too many Javascript engine errors and VT just doesn't work with it

                // The solution is to create Ineternet Explorer object via COM
                InternetExplorer IEControl = new InternetExplorer();
                IWebBrowserApp   ie        = (IWebBrowserApp)IEControl;

                // make IE invisible
                ie.Visible = false;

                // navigate to virustotal for old browsers
                ie.Navigate("https://www.virustotal.com/old-browsers/file/" + hash);

                // wait for the page to download
                while (ie.Busy)
                {
                    System.Threading.Thread.Sleep(1000);
                }

                // get the HTML content
                IHTMLDocument2 doc  = (IHTMLDocument2)ie.Document;
                string         html = doc.body.innerHTML;

                // find information about detections
                Match m = Regex.Match(html, "<span id=\"detections\">(.*?)</span>");
                if (m.Length > 0)
                {
                    return(m.Groups[1].ToString());
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception e)
            {
                return(null);
            }
        }
Ejemplo n.º 6
0
        public void OpenWebSite(RadioButton rbB2B, RadioButton rbB2C, RadioButton rbKPMRead, TextBox tB2BID, TextBox tB2BPW, ref List <Process> processes)
        {
            g_Util.DebugPrint("I'm accessing KPM...");

            Process[] processesBefore = Process.GetProcessesByName("iexplore");

            IE         = new InternetExplorer();
            webBrowser = (IWebBrowserApp)IE;

            Process[] processesAfter = Process.GetProcessesByName("iexplore");
            FindNewProcess(processesBefore, processesAfter, ref processes);

            object URL = null;

            //rbB2B.Checked = true;
            //rbB2C.Checked = false;

            if (rbKPMRead.Checked == true || rbB2B.Checked == true)
            {
                //if (sID != null && sPW != null)
                //{
                //    URL = "https://" + sID + ":" + sPW + "@sso.volkswagen.de/kpmweb/Index.action";
                //}
                //else
                {
                    URL = "https://sso.volkswagen.de/kpmweb/Index.action";
                }
            }
            else
            {
                URL = "https://quasi.vw.vwg/kpm/kpmweb/Index.action";
            }

            //if (rbB2C.Checked == true)
            //{
            //    MessageBox.Show("Wait!!! Login and Go to Main page. And then press OK", "Please Login KPM");
            //}

            GoToURL(URL, rbB2C);
        }
Ejemplo n.º 7
0
        private static string GetSelectedItemCore(IWebBrowserApp webBrowserApp)
        {
            var serviceProvider = webBrowserApp.QueryInterface<Interop.IServiceProvider>();

            var shellBrowser = serviceProvider.QueryService<IShellBrowser>(SID.STopLevelBrowser);

            var shellView = shellBrowser.QueryActiveShellView();

            var folderView = shellView.QueryInterface<IFolderView>();

            int focus = folderView.GetFocusedItem();

            var persistFolder2 = folderView.GetFolder<IPersistFolder2>();

            var shellFolder = persistFolder2.QueryInterface<IShellFolder>();

            var pidl = folderView.Item(focus);

            var fileName = shellFolder.GetDisplayNameOf(pidl, SHGDNF.FORPARSING);

            // Cleanup
            Marshal.FreeCoTaskMem(pidl);

            Marshal.FinalReleaseComObject(shellFolder);
            Marshal.FinalReleaseComObject(folderView);
            Marshal.FinalReleaseComObject(shellBrowser);
            Marshal.FinalReleaseComObject(serviceProvider);

            return fileName;
        }
Ejemplo n.º 8
0
        private void Internet_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                InternetExplorer ie         = new InternetExplorer();
                IWebBrowserApp   webBrowser = ie;

                webBrowser.Visible = true;
                webBrowser.GoHome();
                IWebBrowserApp wb = (IWebBrowserApp)ie;

                wb.Visible = true;
                wb.GoHome();

                internetCount++;
            }
            catch
            {
                System.Windows.MessageBox.Show("internet connect");
            }

            //인터넷 최대화 단축키
            keybd_event(0x5B, 0, 0, 0); // window key
            keybd_event(0x26, 0, 0, 0); // arrow up key
            keybd_event(0x5B, 0, 0x0002, 0);
            keybd_event(0x26, 0, 0x0002, 0);

            if (isInternet == false)
            {
                SHDocVw.ShellWindows shellWindows = new SHDocVw.ShellWindows();
                IntPtr handle = GetForegroundWindow();
                foreach (SHDocVw.WebBrowser IE in shellWindows)
                {
                    if (IE.HWND.Equals(handle.ToInt32()))
                    {
                        while (IE.Busy == true || IE.ReadyState != SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE)
                        {
                            System.Threading.Thread.Sleep(100);
                        }
                        try
                        {
                            doc = IE.Document as mshtml.HTMLDocument;
                        }
                        catch
                        {
                            System.Windows.MessageBox.Show("err");
                        }
                    }
                }
                if (doc != null)
                {
                    Uri    uri  = new Uri(doc.url);
                    String host = uri.Host;

                    if (host.Contains(youtube))
                    {
                        InternetY dlg = new Renewal.InternetY();
                        dlg.Show();
                        //isInternetY = true;
                    }
                    else if (host.Contains(facebook))
                    {
                    }
                    else // naver, daum, google etc. (default)
                    {
                        Internet dlg = new Renewal.Internet();
                        dlg.Show();
                        isInternet = true;
                    }
                }
                else
                {
                    System.Windows.MessageBox.Show("Internet open error");
                }
            }
        }