Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2011, 14:08   #1
Linore
Пользователь
 
Регистрация: 18.01.2010
Сообщений: 95
По умолчанию Код из VB в C#

Помогите пожалуйста перевести код из VB в С#
Protected WithEvents m_USBcan As UcanDotNET.USBcanServer
Protected m_RxWaitHandles() As WaitHandle = {New AutoResetEvent(False), New AutoResetEvent(False), New AutoResetEvent(False)}
Me.m_USBcan = New UcanDotNET.USBcanServer
Me.m_USBcan.SetDebugMode(&HC0000306 , ".\MyLogFile.log")
bRet = Me.m_USBcan.InitHardware(UcanDotNET .USBcanServer.USBCAN_ANY_MODULE)
Linore вне форума Ответить с цитированием
Старый 06.10.2011, 14:24   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

что-то типа того (не проверял) ...

protected UcanDotNET.USBcanServer m_USBcan;
protected WaitHandle[] m_RxWaitHandles = { new AutoResetEvent(false), new AutoResetEvent(false), new AutoResetEvent(false) };

m_USBcan = new UcanDotNET.USBcanServer();
m_USBcan.SetDebugMode(0xC0000306, @".\MyLogFile.log")
bRet = m_USBcan.InitHardware(UcanDotNET.US BcanServer.USBCAN_ANY_MODULE);
Rififi вне форума Ответить с цитированием
Старый 06.10.2011, 15:15   #3
Linore
Пользователь
 
Регистрация: 18.01.2010
Сообщений: 95
По умолчанию

спасибо большое помогло очень!
Linore вне форума Ответить с цитированием
Старый 06.10.2011, 15:16   #4
Linore
Пользователь
 
Регистрация: 18.01.2010
Сообщений: 95
По умолчанию

а вот такой кусок кода
Dim HwInfo As UcanDotNET.USBcanServer.tUcanHardwa reInfoEx
Dim CanInfoCh0 As UcanDotNET.USBcanServer.tUcanChanne lInfo
Dim CanInfoCh1 As UcanDotNET.USBcanServer.tUcanChanne lInfo

bRet = Me.m_USBcan.GetHardwareInfo(HwInfo, CanInfoCh0, CanInfoCh1)
Linore вне форума Ответить с цитированием
Старый 06.10.2011, 15:33   #5
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

Linore

надо смотреть, как объявлена функция GetHardwareInfo. Судя по тому, как она вызывается, скорее всего она получает три out-параметра:

bRet = m_USBcan.GetHardwareInfo(out HwInfo, out CanInfoCh0, out CanInfoCh1);
Rififi вне форума Ответить с цитированием
Старый 06.10.2011, 15:53   #6
Linore
Пользователь
 
Регистрация: 18.01.2010
Сообщений: 95
По умолчанию

Перевожу код VB в C# вот так

UcanDotNET.USBcanServer.tUcanHardwa reInfoEx HwInfo;
UcanDotNET.USBcanServer.tUcanChanne lInfo CanInfoCh0;
UcanDotNET.USBcanServer.tUcanChanne lInfo CanInfoCh1;


bRet = UcanDotNET.USBcanServer.GetHardware Info(ref UcanDotNET.USBcanServer.HwInfo, ref UcanDotNET.USBcanServer.CanInfoCh0, ref UcanDotNET.USBcanServer.CanInfoCh1) ;

Однако он мне выдает ошибку
наиболее подходящий перегруженный метод для "UcanDotNET.USBcanServer.GetHardwar eInfo" имеет несколько недопустимы аргументов
Linore вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Доп.код,обратный код,прямой код вычисления Lukas077 Помощь студентам 0 20.03.2011 12:07
Код написал код, но ответ постоянно один и тот же SkuLLL Помощь студентам 4 14.12.2010 19:25
Код Qt в С++ Lemo Помощь студентам 0 18.09.2010 22:06
Код на Pb Arei17 Помощь студентам 12 25.08.2010 16:28
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? Mclaren Помощь студентам 2 27.04.2009 22:37