Я пытался запустить пример проекта, поставляемый с руководством, на stockbotprogramming http://www.stockbotprogramming.com/sharpcibtutorial1.php, но я получаю COMException каждый раз, когда запускаю приложение.
У меня запущен TWS-клиент, и примеры проектов VB, предоставляемые с API, могут нормально подключаться, но когда я пытаюсь использовать образец C #, предоставленный в учебном пособии, я получаю следующее исключение:
Необработанное исключение типа
'System.Runtime.InteropServices.COMException'
произошло в System.Windows.Forms.dll
Исключение возникает при попытке добавить элемент управления TWS ActiveX:
namespace CSharpTutorial1
{
public partial class Form1 : Form
{
private AxTWSLib.AxTws tws;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
tws = new AxTWSLib.AxTws();
tws.BeginInit();
tws.Enabled = true;
tws.Location = new System.Drawing.Point(32, 664);
tws.Name = "tws";
Controls.Add(tws); // <-- EXCEPTION HERE!
tws.EndInit();
tws.connect("127.0.0.1", 7496, 0);
String msg = "Connected to TWS server version " + tws.serverVersion + "at " + tws.TwsConnectionTime;
MessageBox.Show(msg);
}
}
}
Исходный проект, вероятно, был сделан с Visual Studio 2005, но у меня Visual Studio 2008, и он автоматически конвертировал проект (я читал, что там есть некоторые проблемы). Кто-нибудь знает, что может быть причиной этого исключения? Есть идеи как это исправить?