Вы можете динамически загружать курсоры из файла следующим образом:
var myCursor = new Cursor("myCursor.cur");
После загрузки вы можете установить курсор любого элемента управления следующим образом:
myControl.Cursor = myCursor;
Курсортакже принимает поток в качестве параметра конструктора.Это означает, что вы можете загружать из ресурса, встроенного в ваше приложение, а не из файловой системы.
Windows не позволит иметь более одного курсора, но вы можете нарисовать более одного на своем элементе управления.Вы можете использовать метод Draw
объекта курсора следующим образом:
myCursor.Draw(g, new Rectangle(...));
Если вы используете TCP / IP для отправки данных курсора между клиентами, этого должно быть достаточно для работы.
Однако было несколько приложений, которые поддерживали множественный ввод на одном ПК.(Например, Rag Doll Kung Fu ). Для этого вы смотрите на то, что не поддерживает .NET Framework.
Возможно, вам придется изучить PInvoking некоторые вызовы USB,(У меня нет большого опыта здесь, поэтому я не могу разработать.)