Тимофей Мартынов
Тимофей Мартынов личный блог
12 января 2016, 20:10

The type or namespace name 'StClientLib' could not be found

Скачал пример программы на C# с сайта ItInvest. Называется TestConnect. SmartCom установил. Библиотечку смарткома подключил.
Но при компиляции примера выдает ошибку  The type or namespace name 'StClientLib' could not be found (are you missing a using directive or an assembly reference?)
 
Это чо такое ваще?:) Почему не работает?:)

p.s. уважаемые программеры, сообщите мне, ламеру, плиз, как вообще тупо взять и вызвать функцию какой-либо подключенной библиотеки.
каков синтаксис вызова функции в C#? Допустим я тупо хочу в консольном приложении внутри блока Main обратится к внешней либе и вызвать её функцию?:)


21 Комментарий
  • Андрей К
    12 января 2016, 20:16
    Выложите куда нибудь библиотеку
  • Turboslon
    12 января 2016, 20:16
    Правой клавишей по References, «Add reference», «Browse» и постарайся найти что-то в духе StClientLib.dll Рекомендую погуглить такой термин, как .Net assembly. У тебя ссылка на сборку StClientLib не указывает на конкретный файл. Его надо найти вручную :)
      • Андрей К
        12 января 2016, 21:51
        Тимофей Мартынов, я скачал вами приложенный проект, там требует эту dll. Надо ее искать. Наверное со смартом идет, у меня нет.
      • Андрей К
        12 января 2016, 21:58
        Тимофей Мартынов, аа! он говорит что ссылка уже есть на такую библиотеку. Предлагает удалить существующую и новую добавить. Можно так и поступить
      • Turboslon
        12 января 2016, 22:06
        Тимофей Мартынов, ну, если получилось — круто.
        Я пока нарыл только, что сборка может называться stcln.dll или stcln-2.dll
      • Turboslon
        12 января 2016, 22:08
        Тимофей Мартынов, 
        во:
        ' ########################################################################################
        ' Library name: StClientLib
        ' Version: 1.0, Locale ID = 0
        ' Description: SmartCOM client library
        ' Path: C:\Program Files (x86)\IC IT Invest\SmartCOM 2\stcln-2.dll
        ' Library GUID: {AE0A53F5-46EF-4660-A1A7-2AF9F946C6E3}
        
  • Андрей К
    12 января 2016, 20:24
    "… Допустим я тупо хочу в консольном приложении внутри блока Main обратится к внешней либе и вызвать её функцию?:).."

    в том проекте что вы приложили, кликните по TestForm.cs. откроется макет окна программы. Сначала кликните по кнопке Create дважды в макете и посмотрите код, потом на кнопку Connect и посмотрите код.
  • Alexand77
    12 января 2016, 22:26
    Тимофей, ты в начале большого пути :) только зачем Писателю опускаться до пошлого программирования? :) Но чем смогу помогу, есть наработки кой какие в этом.
    • professor facepalm
      13 января 2016, 07:18
      Alexand77, цитата: «Хаксли Уиттли, один из великих ученых США, рассказал мне историю о том, как он стал математиком. Мы с ним встречались в Принстоне незадолго до его смерти. История такова. Уиттли учился в Иельском университете… играть на скрипке! После второго курса его послали в Европу, чтобы он смог усовершенствовать свое мастерство. Кажется, он попал в Вену, где ему сказали, что кроме основного предмета в конце года нужно сдать еще один — “чужой”, мол, такое уж у нас правило. Уиттли спросил у своих товарищей, какая сейчас самая модная наука, и ему ответили, что это квантовая механика. Он пришел на лекцию, но ни слова не понял. По ее окончании Уиттли подошел к профессору и сказал ему, что с его лекцией не все в порядке, так как он — лучший студент Иеля — ничего не понял. Профессор (а это был сам Вольфганг Паули — швейцарский физик, один из создателей квантовой механики и релятивист -ской квантовой теории поля) ответил, что Уиттли, наверное, прекрасный скрипач, но математический анализ и линейную алгебру знает слабовато и рекомендовал ему два учебника. Через две недели Уиттли уже начал разбираться в лекциях профессора, а в конце семестра понял, что квантовая механика гораздо лучше скрипки, и стал математиком.»
      • Alexand77
        13 января 2016, 10:19
        professor facepalm, как художник художнику, на сколько я знаю, Тимофей закончил факультет технической кибернетики Политехнического университета в Санкт-Петербурге, то есть тут все наоборот, как если бы Уиттли, будучи физиком, начал задумываться, а что это он скрипочку забросил :) 
          • Alexand77
            13 января 2016, 12:12
            Тимофей Мартынов, я закончил примерно тоже самое, примерно в те же годы, только в другом вузе, поэтому в этом плане мы коллеги и все что ты пишешь было очень похоже. Правда до этого мне в школе успели основы ООП неплохо дать, так что для того чтобы восстановить уровень нормального пятикурсника по специальности у меня ушел где-то год. А больше и не нужно тут, это не драйвер на ассемблере писать. По API SmartCom 3.0 могу дать заготовку на C# без «воды» — одна форма, которая после запуска соединяется с сервером котировок и все шаги выводит в окно лога:
  • Счастливый Конец
    12 января 2016, 22:34
    там может быть следующее: SmartCOM бывает x64 и x86 (т.е. 64-битный и 32-битный). Если качать SmartCOM 64 битный, то и проект TestConnect должен собираться как 64 битный (меню Build->Configuration Manager и там комбобокс AnyCPU/x64/x86), надо x64.
    Как вызвать из библиотек: используй
    using библиотека;

    в коде уже просто имя функции пишешь.
    Например:
    using System;

    в коде: int n = Math.Max(1, 2);

    или так: int n = System.Math.Max(1, 2);

    где System это библиотека. Сами библиотеки подключаются через References в свойствах проекта.
      • Счастливый Конец
        13 января 2016, 17:10
        Тимофей Мартынов, кстати в Айти хорошие условия по валютному ГО, вход не такой уж неподъемный. Т.е если есть наличные баксы, то можно торговать на них+чуток рублей на покрытие комиссий. Также можно договориться по льготному ГО без ограничения по инструментов (в БКС — ограничивают).

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн