private bool establish_connection(NETRESOURCE target_resource) { //ask creds string user_name = string.Empty; string ps = string.Empty; if (Messages.AskCredentials ("Network login", "Connect to " + target_resource.lpRemoteName, ref user_name, ref ps) != System.Windows.Forms.DialogResult.OK) { return(false); } int res = WinApiWNET.WNetAddConnection2 (ref target_resource, ps, user_name, WNetConnectOptions.None); if (res != WinApiWNET.NO_ERROR) { Win32Exception win_ex = new Win32Exception(res); Messages.ShowException(win_ex); return(false); } return(true); }
private bool establish_connection(NETRESOURCE target_resource) { //ask creds var user_name = string.Empty; var ps = string.Empty; if (Messages.AskCredentials (Options.GetLiteral(Options.LANG_NETWORK_LOGIN), "Connect to " + target_resource.lpRemoteName, ref user_name, ref ps) != System.Windows.Forms.DialogResult.OK) { return(false); } var res = WinApiWNET.WNetAddConnection2 (ref target_resource, ps, user_name, WNetConnectOptions.None); if (res != WinApiWNET.NO_ERROR) { var win_ex = new Win32Exception(res); Messages.ShowException(win_ex); return(false); } return(true); }
private void keys_required_callback(Object sender, KeysRequiredEventArgs e) { if (last_pass == string.Empty) { if (Messages.AskCredentials (Options.GetLiteral(Options.LANG_ARCHIVE_PASS_NEEDED), e.FileName, ref last_pass) != System.Windows.Forms.DialogResult.OK) { return; } } e.Key = ICSharpCode.SharpZipLib.Encryption.PkzipClassic.GenerateKeys(ZipConstants.ConvertToArray(last_pass)); }
private void show_ftp_server(mFilePanel target_panel) { var opts = Options.FtpOptions; var dialog = new FtpConnectionDialog(); dialog.FtpConnectionOptions = opts; dialog.Text = Options.GetLiteral(Options.LANG_CONNECT_TO_FTP_SERVER); if (dialog.ShowDialog() != DialogResult.OK) { return; } opts = dialog.FtpConnectionOptions; Options.FtpOptions = opts; if (!opts.Anonymous) { var user = opts.UserName; var pass = opts.Password; Messages.AskCredentials (Options.GetLiteral(Options.LANG_LOGIN_TO_FTP_SERVER), opts.ServerName, ref user, ref pass); opts.UserName = user; opts.Password = pass; } var conn = new FtpConnection(opts); var fl = new FtpDirectoryList(0, false, conn); try { fl.MainWindow = this; fl.Refill(); target_panel.Source = fl; target_panel.Refresh(); } catch (Exception ex) { Messages.ShowException(ex); } }
protected override void internal_command_proc() { var e = new QueryPanelInfoEventArgs(); OnQueryCurrentPanel(e); if (e.FocusedIndex == -1) { return; } var dl = (DirectoryList)e.ItemCollection; if (dl.GetItemDisplayNameLong(e.FocusedIndex) == "..") { return; } //show dialog var psi = new ProcessStartInfo(); var file_name = dl[e.FocusedIndex].FullName; psi.FileName = file_name; var opts = Options.RunExeOptions; var dialog = new RunexeDialog(); dialog.Text = Options.GetLiteral(Options.LANG_EXECUTE); dialog.RunExeOptions = opts; dialog.textBoxArguments.Text = string.Empty; dialog.textBoxFilename.Text = dl[e.FocusedIndex].FileName; dialog.textBoxWorkingDirectory.Text = dl.DirectoryPath; if (psi.Verbs != null) { foreach (var verb in psi.Verbs) { dialog.comboBoxVerb.Items.Add(verb); } } if (dialog.ShowDialog() != DialogResult.OK) { return; } opts = dialog.RunExeOptions; Options.RunExeOptions = opts; psi.LoadUserProfile = (opts & RunExeOptions.LoadEnvironment) == RunExeOptions.LoadEnvironment; if ((opts & RunExeOptions.RunInConsole) == RunExeOptions.RunInConsole) { if (file_name.Contains(" ")) { file_name = '"' + file_name + '"'; } psi.FileName = "cmd"; psi.Arguments = "/K " + file_name; } else { psi.FileName = file_name; } if ((opts & RunExeOptions.UseRunas) == RunExeOptions.UseRunas) { var user = string.Empty; var pass = string.Empty; if (Messages.AskCredentials(Options.GetLiteral(Options.LANG_ACCOUNT), Options.GetLiteral(Options.LANG_EXECUTE) + " '" + file_name + "'", ref user, ref pass) == DialogResult.OK) { psi.UserName = user; var sec = new System.Security.SecureString(); foreach (var c in pass) { sec.AppendChar(c); } psi.Password = sec; } } psi.UseShellExecute = (opts & RunExeOptions.UseShellExecute) == RunExeOptions.UseShellExecute; psi.WorkingDirectory = dialog.textBoxWorkingDirectory.Text; psi.Verb = dialog.comboBoxVerb.Text; psi.Arguments = psi.Arguments + " " + dialog.textBoxArguments.Text; try { Process.Start(psi); } catch (Exception ex) { Messages.ShowException (ex, string.Format(Options.GetLiteral(Options.LANG_CANNOT_EXCUTE_0_1), psi.FileName, psi.Arguments)); } }