Объявление переменной COM - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день, В чем разница объявления переменных? Я использую подключенную COM библиотеку.
Листинг программы
  1. using SmartCOM4Lib;
  2. private StServerClass SmartServer; // вариант 1
  3. private SmartCOM4Lib.StServerClass SmartServer; // вариант 2
Спасибо

Решение задачи: «Объявление переменной COM»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Drawing;
  4. using System.Linq;
  5. using System.Threading;
  6. using System.Windows.Forms;
  7. using System.Runtime.InteropServices;
  8. using SmartCOM4Lib;
  9.  
  10. namespace TestConnect
  11. {
  12.     public partial class TestForm : Form
  13.     {
  14.         private delegate void UpdateErrorText(string text);
  15.  
  16.         private int InfoCookie;         // Индификатор приказа
  17.         private Quote LastQuote;        // Котировка инструмента
  18.         private List<Bar> InfoBars;     // Список баров для инструмента
  19.        
  20.         //private StServerClass SmartServer;   // SmartCOM
  21.         private SmartCOM4Lib.StServerClass SmartServer;
  22.         private List<Tiker> InfoTikers; // Список всех инструментов
  23.         private const string smartComParams = "logLevel=5;maxWorkerThreads=3";
  24.  
  25.         private DAFWriters Writers;     // Лог
  26.  
  27.         // Создан ли SmartCOM
  28.         private bool IsReady { get { return (SmartServer != null); } }
  29.         // Установлено ли соединение
  30.         private bool IsConnected
  31.         {
  32.             get
  33.             {
  34.                 bool bReturn = false;
  35.                 if (IsReady)
  36.                 {
  37.                     try
  38.                     {
  39.                         bReturn = SmartServer.IsConnected();
  40.                     }
  41.                     catch (Exception)
  42.                     {
  43.  
  44.                     }
  45.                 }
  46.                 return bReturn;
  47.             }
  48.         }
  49.  
  50.         public TestForm()
  51.         {
  52.             Writers = new DAFWriters();
  53.  
  54.             InitializeComponent();
  55.             ToDateTimePicker.Value = DateTime.Now.AddDays(-5);
  56.             ToDateTimePicker.MaxDate = DateTime.Now;
  57.             InfoBars = new List<Bar>();
  58.             InfoTikers = new List<Tiker>();
  59.             //Text += ", Version: " + Info.GetVersion;
  60.             Writers.WriteLine("Enegy", "log", "{0} Version: {1}", DateTime.Now, Info.GetVersion);
  61.  
  62.             foreach (StBarInterval Interval in Enum.GetValues(typeof(StBarInterval)))
  63.                 if (Interval != StBarInterval.StBarInterval_Tick)
  64.                     IntervalComboBox.Items.Add(Interval.ToString());
  65.             if (IntervalComboBox.Items.Count > 0)
  66.                 IntervalComboBox.SelectedIndex = 0;
  67.         }
  68.  
  69.         private StBarInterval GetInterval { get { return (IntervalComboBox.SelectedIndex > -1 ? (StBarInterval)Enum.Parse(typeof(StBarInterval), IntervalComboBox.SelectedItem.ToString()) : StBarInterval.StBarInterval_1Min); } }
  70.  
  71.         private void CreateButton_Click(object sender, EventArgs e)
  72.         {
  73.             Writers.WriteLine("Enegy", "log", "{0} Click: {1}", DateTime.Now, "Create");
  74.             ReDrawStatus("Create");
  75.             if (!IsReady) // если SmartCOM не создан
  76.             {
  77.                 try
  78.                 {
  79.                     //SmartServer = new StServerClass(); // Создать и назначить обработчики событий
  80.                     SmartServer = new SmartCOM4Lib.StServerClass();
  81.                    
  82.                     SmartServer.Connected += new _IStClient_ConnectedEventHandler(SmartServer_Connected);
  83.                     SmartServer.Disconnected += new _IStClient_DisconnectedEventHandler(SmartServer_Disconnected);
  84.                     SmartServer.AddTick += new _IStClient_AddTickEventHandler(SmartServer_AddTick);
  85.                     SmartServer.UpdateBidAsk += new _IStClient_UpdateBidAskEventHandler(SmartServer_UpdateBidAsk);
  86.                     SmartServer.UpdateQuote += new _IStClient_UpdateQuoteEventHandler(SmartServer_UpdateQuote);
  87.                     SmartServer.AddBar += new _IStClient_AddBarEventHandler(SmartServer_AddBar);
  88.                     SmartServer.AddTickHistory += new _IStClient_AddTickHistoryEventHandler(SmartServer_AddTickHistory);
  89.                     SmartServer.AddPortfolio += new _IStClient_AddPortfolioEventHandler(SmartServer_AddPortfolio);
  90.                     SmartServer.UpdateOrder += new _IStClient_UpdateOrderEventHandler(SmartServer_UpdateOrder);
  91.                     SmartServer.UpdatePosition += new _IStClient_UpdatePositionEventHandler(SmartServer_UpdatePosition);
  92.                     SmartServer.SetPortfolio += new _IStClient_SetPortfolioEventHandler(SmartServer_SetPortfolio);
  93.                     SmartServer.AddTrade += new _IStClient_AddTradeEventHandler(SmartServer_AddTrade);
  94.                     SmartServer.AddSymbol += new _IStClient_AddSymbolEventHandler(SmartServer_AddSymbol);
  95.                     SmartServer.SetMyClosePos += new _IStClient_SetMyClosePosEventHandler(SmartServer_SetMyClosePos);
  96.                     SmartServer.SetMyOrder += new _IStClient_SetMyOrderEventHandler(SmartServer_SetMyOrder);
  97.                     SmartServer.SetMyTrade += new _IStClient_SetMyTradeEventHandler(SmartServer_SetMyTrade);
  98.  
  99.                     SmartServer.OrderSucceeded += new _IStClient_OrderSucceededEventHandler(SmartServer_OrderSucceeded);
  100.                     SmartServer.OrderFailed += new _IStClient_OrderFailedEventHandler(SmartServer_OrderFailed);
  101.                     SmartServer.OrderCancelFailed += new _IStClient_OrderCancelFailedEventHandler(SmartServer_OrderCancelFailed);
  102.                     SmartServer.OrderCancelSucceeded += new _IStClient_OrderCancelSucceededEventHandler(SmartServer_OrderCancelSucceeded);
  103.                     SmartServer.OrderMoveFailed += new _IStClient_OrderMoveFailedEventHandler(SmartServer_OrderMoveFailed);
  104.                     SmartServer.OrderMoveSucceeded += new _IStClient_OrderMoveSucceededEventHandler(SmartServer_OrderMoveSucceeded);
  105.  
  106.                     Writers.WriteLine("Enegy", "log", "{0} ConfigureClient {1}", DateTime.Now, smartComParams);
  107.                     SmartServer.ConfigureClient(smartComParams);
  108.                     Text = "Test Connect (SmartCOM version: " + SmartServer.GetStClientVersionString() + ")";
  109.                    
  110.                    
  111.  
  112.                     CreateButton.Enabled = false;
  113.                 }
  114.                 catch (COMException Error)
  115.                 {
  116.                     ReDrawStatus("Ошибка при создании, " + Error.Message);
  117.                     return;
  118.                 }
  119.                 catch (Exception Error)
  120.                 {
  121.                     ReDrawStatus("Ошибка при создании, " + Error.Message);
  122.                     return;
  123.                 }
  124.             }
  125.             if (IsConnected) // если соединение установлено, вручную вызвать событие connected, для начала подписки
  126.                 SmartServer_Connected();
  127.             else
  128.                 ReDrawStatus(""); // иначе обновить статус соединения
  129.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.583 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы