public static bool TryLogin2 ( this ManagedClient64 client, IWin32Window owner ) { while (Login2(client, owner)) { try { client.Connect(); if (client.Connected) { return(true); } } // ReSharper disable once EmptyGeneralCatchClause catch { return(false); } } return(false); }
private void _Worker ( object state ) { int[] chunk = (int[])state; //foreach (int mfn in chunk) //{ // IrbisRecord record = new IrbisRecord{Mfn = mfn}; // _PutRecord(record); //} //_event.Set(); using (ManagedClient64 client = new ManagedClient64()) { client.ParseConnectionString(ConnectionString); client.Connect(); BatchRecordReader batch = new BatchRecordReader ( client, chunk ); foreach (IrbisRecord record in batch) { _PutRecord(record); } } _event.Set(); }
private void _Worker ( object state ) { int[] chunk = (int[])state; using (ManagedClient64 client = new ManagedClient64()) { client.ParseConnectionString(ConnectionString); client.Connect(); BatchRecordFormatter batch = new BatchRecordFormatter ( client, chunk, Format ); foreach (string line in batch) { _PutLine(line); } } _event.Set(); }
private ManagedClient64 _GetNewClient() { if (_activeConnections.Count >= Capacity) { return(null); } ManagedClient64 result = new ManagedClient64(); result.ParseConnectionString(ConnectionString); result.Connect(); return(result); }
public IrbisHandler() { try { client = new ManagedClient64(); client.ParseConnectionString("host=127.0.0.1;port=8888; user=СПА;password=1;"); client.Connect(); client.PushDatabase("MPDA"); Console.WriteLine("Connected to irbis_server successfully"); } catch (Exception ex) { Console.WriteLine(ex); } }
/// <summary> /// Получаем уже подключенного клиента. /// </summary> /// <returns></returns> /// <exception cref="ApplicationException"> /// Если строка подключения в app.settings не найдена. /// </exception> public static ManagedClient64 GetClient() { string connectionString = GetConnectionString(); if (string.IsNullOrEmpty(connectionString)) { throw new ApplicationException("Connection string not specified!"); } ManagedClient64 result = new ManagedClient64(); result.ParseConnectionString(connectionString); result.Connect(); return(result); }
public FindReplaceScriptEditor(ExtractedValue recordsData) { this.recordsData = recordsData; config = null; string exeConfigPath = this.GetType().Assembly.Location; try { config = ConfigurationManager.OpenExeConfiguration(exeConfigPath); if (config != null) { activeTabIndex = Convert.ToByte(GetAppSetting(config, "activeTabIndex")); string connectionString = GetAppSetting(config, "connection-string"); client = new ManagedClient64(); client.ParseConnectionString(connectionString); try { client.Connect(); if (!String.IsNullOrEmpty(recordsData.DBName)) { client.Database = recordsData.DBName; } curDatabase = client.IrbisDatabases.dataBases[client.IrbisDatabases.SelectedIndex]; } catch { client.Shutdown(); } InitializeComponent(); cmbTemplateType.SelectedIndex = 1; } } catch (Exception ex) { //handle errror here.. means DLL has no sattelite configuration file. MessageBox.Show(ex.Message); return; } }
internal void Connect() { try { if (connected) { Disconnect(); } client.ParseConnectionString("host=127.0.0.1;port=8888; user=a; password=1;"); client.Connect(); client.PushDatabase("MPDA"); connected = true; Console.WriteLine("Connected!"); } catch (Exception ex) { Console.WriteLine(ex.ToString() + "Error!"); } }
private ManagedClient64 _CreateClient() { ManagedClient64 result = new ManagedClient64 { Host = Host, Port = Port, Database = RequestDatabase, Username = Login, Password = Password }; if (AllowDebug) { result.DebugWriter = File.AppendText("Watcher.log"); result.AllowHexadecimalDump = true; } result.Connect(); return(result); }
private int[] _GetMfnList ( string connectionString ) { if (string.IsNullOrEmpty(connectionString)) { throw new ArgumentNullException("connectionString"); } using (ManagedClient64 client = new ManagedClient64()) { client.ParseConnectionString(connectionString); client.Connect(); int maxMfn = client.GetMaxMfn() - 1; if (maxMfn <= 0) { throw new ApplicationException("MaxMFN=0"); } int[] result = Enumerable.Range(1, maxMfn).ToArray(); return(result); } }
internal void Connect(string database, string login, string password) { try { if (connected) { Disconnect(); } client.ParseConnectionString("host=127.0.0.1;port=8888; user="******";password="******";"); //client.ParseConnectionString("host=194.169.10.3;port=8888; user="******";password="******";"); client.Connect(); client.PushDatabase(database); connected = true; MessageBox.Show("Connected!"); } catch (Exception ex) { logging.WriteLine("ERROR DURING CONNECTION!"); logging.WriteLine(ex.StackTrace); logging.WriteLine(ex.ToString()); MessageBox.Show("Error!"); } }
static void Main(string[] args) { using (ManagedClient64 client = new ManagedClient64()) { //client.AllowHexadecimalDump = true; //client.DebugWriter = Console.Out; client.Connect(); IrbisDatabaseInfo[] databases = client.ListDatabases(); foreach (IrbisDatabaseInfo database in databases) { Console.WriteLine(database); } client.GetServerStat(); //Console.WriteLine(client.GetDatabaseInfo()); //Console.WriteLine("Max MFN={0}",client.GetMaxMfn()); //Console.WriteLine(client.GetVersion()); //Thread.Sleep(100); //client.NoOp(); //Thread.Sleep(100); //string fileText = client.ReadTextFile(IrbisPath.MasterFile, "pst.mnu"); //Console.WriteLine(fileText); //Thread.Sleep(100); //string[] rawRecord = client.ReadRawRecord(2, false); //foreach (string line in rawRecord) //{ // Console.WriteLine(line); //} //string[] found = client.RawSearch("K=A$", 1, 0, "@brief"); //foreach (string line in found) //{ // Console.WriteLine(line); //} //int[] found = client.Search("K=A$"); //foreach (int mfn in found) //{ // Console.WriteLine("{0})", mfn); // Console.WriteLine(client.FormatRecord("@",mfn)); // Console.WriteLine(); //} int[] found = client.Search("K=A$"); string[] texts = client.FormatRecords("@", found); foreach (string text in texts) { Console.WriteLine(text); Console.WriteLine(); } Console.WriteLine(); } }
private static void Main() { try { using (ManagedClient64 client = new ManagedClient64()) { // Подключаемся к серверу client.ParseConnectionString("host=127.0.0.1;port=6666;" + "user=1;password=1;"); client.Connect(); // Ищем все книги, у которых автор начинается на А (кириллица) int[] foundRecords = client.Search("\"A={0}$\"", "А"); // Чтобы не распечатывать все найденные записи, // ограничимся первыми 10 int recordsToShow = Math.Min(foundRecords.Length, 10); for (int i = 0; i < recordsToShow; i++) { int thisMfn = foundRecords[i]; // Считываем запись IrbisRecord record = client.ReadRecord(thisMfn); // Получаем основное заглавие string mainTitle = record .Fields .GetField("200") .GetSubField('a') .GetSubFieldText() .FirstOrDefault(); // Можно было просто написать: // string mainTitle = record.FM("200", 'a'); Console.WriteLine ( "MFN={0}, Main title={1}", thisMfn, mainTitle ); // Расформатируем запись Console.WriteLine ( "BRIEF: {0}", client.FormatRecord("@brief", record) ); // Создаем запись IrbisRecord newRecord = new IrbisRecord(); newRecord.AddField ( "700", 'a', "Управляемый клиент ИРБИС64" ) .AddField ( "200", 'a', string.Format("Новая Запись от {0}", DateTime.Now), 'f', "Управляемый клиент" ); // Отсылаем вновь созданную запись на сервер client.WriteRecord ( newRecord, false, true ); Console.WriteLine(new string('-', 60)); } // По выходу из using автоматически вызывается client.Disconnect () } } catch (Exception ex) { Console.WriteLine(ex); } }