0
我正在C#中处理客户端/服务器应用程序。我的服务器捕获当前的鼠标光标并将它们发送到客户端,以便光标的光标也相应地变化。我可以检测窗口游标并通过二进制格式化对它们进行序列化。它工作正常,但问题是有许多游标,不能像mspaint游标检测,所以我必须采取它的处理程序,并创建光标和它的nad y热点,并将它们添加到一个arraylist并通过网络序列化,但在10到15分钟它thorws异常 “错误HRESULT E_FAIL已从一个COM Compeonet调用返回” 和cleint抛出“异常抛出的调用目标抛出” 任何人都可以指导我什么错误或更好的方法来做这样的 一些代码是在这里通过网络连接鼠标光标
IntPtr curInfo = GetCurrentCursor();
Cursor cur;
Icon ic;
byte cursor = 0;
if (curInfo != null && curInfo.ToInt32() != 0)
{
cur = CheckForCusrors(curInfo);
try
{
if (!isLinuxClient)
{
if (cur == null)
{
PlatformInvokeUSER32.GetIconInfo(curInfo, out temp);
ic = Icon.FromHandle(curInfo);
//bitmap = ic.ToBitmap();
ArrayList ar = new ArrayList();
ar.Add(ic);
ar.Add(temp.xHotspot);
ar.Add(temp.yHotspot);
b.Serialize(stm, ar);
}
else
{
ArrayList ar = new ArrayList();
ar.Add(cur);
b.Serialize(stm, ar);
}
}
public Cursor CheckForCusrors(IntPtr hCur)
{
if (hCur == Cursors.AppStarting.Handle)
return Cursors.AppStarting;
else if (hCur == Cursors.Arrow.Handle)
return Cursors.Arrow;
.
.
.
else if (hCur == Cursors.PanWest.Handle)
return Cursors.PanWest;
return null;
}
`