![](/img/trans.png)
[英]How can i debug C++ DLLs SWIGed in external C# app (that can not be started from debugger)
[英]How can I get return values from C# .DLLs in LabVIEW 2012?
我目前正在將Visual Studio 2010中的C#中的.DLL庫文件導出到LabVIEW2012。該類進行從RGB到HSL值的顏色轉換,並且在LabVIEW項目中成功實現了Constructor和Invoke節點調用.DLL文件。
到目前為止,我可以將RGB值的數字輸入到Invoke節點中,但是我在獲取HSL輸出值時遇到了麻煩。 該選項不會出現在節點的下拉框中。
我對C#(和一般而言的編程)比較陌生,我想我已經發現了輸入函數在.DLL中的位置,但是對於輸出函數,我不知道如何生成它,更不用說了。 LabVIEW可以干凈地導出它的一種方式。 我認為如果可以輸入值,我也應該能夠獲得那些HSL輸出。
以下是有問題的C#代碼段。 該類的其余部分是轉換本身的公式,因此我認為它不太相關。
public class QuickColorTransform
{
byte _R;
byte _G;
byte _B;
byte _H;
public byte H
{
get { return _H; }
set { _H = value; }
}
byte _S;
public byte S
{
get { return _S; }
set { _S = value; }
}
byte _L;
public byte L
{
get { return _L; }
set { _L = value; }
}
public QuickColorTransform()
{
SetupLookups();
}
public void SetColor(byte Red, byte Green, byte Blue)
{
_R = Red;
_G = Green;
_B = Blue;
Transform();
}
public void SetColor(Color ColorIn)
{
_R = ColorIn.R;
_G = ColorIn.G;
_B = ColorIn.B;
Transform();
}
}
提前致謝!
您已經創建了公共HSL獲取器,並且LabVIEW知道如何訪問它。 只需在VI中使用屬性節點,然后在調用SetColor()
之后將其鏈接至對象引用,HS和L將位於屬性節點的選擇列表中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.