最近在試怎麼在MAX裡直接開一個 PORT 跟其他應用程式溝通。當然是要透過 .NET 的 Socket
recive 還好,但是send的部份要求一定要用到 System.Byte 型別的資料…,然後當你把資料轉成System.Byte 型別之後
max會自己再把轉成 System.Int ....(無言)
max會自己再把轉成 System.Int ....(無言)
試了很久,最 後還是不得不在 c# 寫一個 warp 出來用 XD
程式碼如下…,反正就是繼承,再多寫個方法出來用…
using System.Text;
using System.Net.Sockets;
namespace SocketNam
{
public class MySockets : Socket
{
public MySockets(AddressFamily af, SocketType st, ProtocolType pt):base(af, st, pt)
{
}
public int send(String str, int maxVer)
{
Encoding encode;
System.Byte[] data;
int re;
if (maxVer > 16)
{
encode = Encoding.Unicode;
}
else
{
encode = Encoding.ASCII;
}
data = encode.GetBytes(str);
re = base.Send(data);
return re;
}
}
}
打完收工…(短短的一段,花了我快三天反覆測試…)
有高手看到有任何錯誤,還煩請指點一下。我對 Socket 的用法還是不太了解…