Асинхронный доступ DLL в LabVIEW?

Все остальное, плюс

1) неявные дженерики (почему только на методах а не на классах?)

void GenericMethod<T>( T input ) { ... }

//Infer type, so
GenericMethod<int>(23); //You don't need the <>.
GenericMethod(23);      //Is enough.

2) простые лямбды с одним параметром:

x => x.ToString() //simplify so many calls

3) анонимные типы и инициализаторы:

//Duck-typed: works with any .Add method.
var colours = new Dictionary<string, string> {
    { "red", "#ff0000" },
    { "green", "#00ff00" },
    { "blue", "#0000ff" }
};

int[] arrayOfInt = { 1, 2, 3, 4, 5 };
<час>

Другой:

4) свойства Auto могут иметь различные объемы:

public int MyId { get; private set; }
<час>

Благодарен за то, что @pzycoman напоминает мне:

5) псевдонимы Пространства имен (не, что Вам, вероятно, будет нужно это конкретное различие):

using web = System.Web.UI.WebControls;
using win = System.Windows.Forms;

web::Control aWebControl = new web::Control();
win::Control aFormControl = new win::Control();
6
задан dwj 23 July 2009 в 23:52
поделиться

1 ответ

Можно сгенерировать событие из C ++ для запуска обычного события LabVIEW.
Здесь - сообщение на форуме NI, в котором обсуждается эта структура. И отрывок кода из этого потока:

#include <utility.h>
#include <extcode.h>
#include "EventDLL.h"
//Generate a LabVIEW event
int GenerateLVEvent(LVUserEventRef *msg, int param)
{
PostLVUserEvent( *msg, (void *)&param);
return 0;
}

А вот исходный код в формате PNG: alt text
(источник: vi-lib.com )
А вот сопроводительный код LabVIEW:
alt text
Нижний цикл - это код LabVIEW, который отправляет событие DLL в обработчик событий LabVIEW. Он должен быть помещен в вашу DLL. Одним из входных параметров должен быть указатель события в виде U32.

Удачи,

Тон

PS, если вы собираетесь погрузиться в DLL и совместимость с LabVIEW, обратите внимание на все, что говорит РольфК, он гуру в этой области.

7
ответ дан 17 December 2019 в 00:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: