yurabrg: да, трудно представить что на вашей строне судя по коду могли возникнуть блокировки. Но определить это получится только если профилировщиком пройтись, так не понять точно где проблема.
Виктор: чтобы проще было реализовать можно использовать сериализацию, создать класс "пакета", включить в него данные, чек сумму, заголовки какие ни будь, сериализовать объект этого класса и послать, его поймают десериализуют (если он не поврежден), проверят чек сумму и сохранят, если он не повредился по дороге.
Виктор: в таком случае нужно обратить внимание на часть сервера где NWS.CanRead, отправка длинны будет не нужна. Но при такой передаче нужно обязательно передавать чек сумму, чтобы проверить корректность передачи. так же я бы советовал не отправлять весь блок данных сразу, а отправлять частями (разного размера, в зависимости от качества связи), вместе с данными я бы отправил чек сумму и данные для восстановления (код рида соломона) , например тут https://zxingnet.svn.codeplex.com/svn/trunk/Source...
По описанию она вроде как не по координатам работает, поэтому в RDP скорее всего работать не будет, но проверить стоит. Она умеет по горячей клавише сценарий запускать?
Насколько я понимаю у него нет горячих клавишь, поэтому он не очень то поможет
Features:
Easy to learn BASIC-like syntax
Simulate keystrokes and mouse movements
Manipulate windows and processes
Interact with all standard windows controls
Scripts can be compiled into standalone executables
Create Graphical User Interfaces (GUIs)
COM support
Regular expressions
Directly call external DLL and Windows API functions
Scriptable RunAs functions
Detailed helpfile and large community-based support forums
Compatible with Windows XP / 2003 / Vista / 2008 / Windows 7 / 2008 R2 / Windows 8 / 2012 R2
Unicode and x64 support
Digitally signed for peace of mind
Works with Windows Vista’s User Account Control (UAC)
John Smith: ну возня обычно проводится 1 раз, т.к. обычно когда приложение "удерживает" диск это не нормально, и такое приложение желательно бы убить нахрен, после все работает отлично
Виктор Лапшев: без диодов можно было и порт спалить, вы на этом порту флешку какую ни будь проверьте, может он уже мертв. Не определяться может по следующим причинам:
Порт мертв
Неправильные диоды\резисторы
Неправильное подключение\перепутаны провода
Косячная прошивка
Неправильные частоты устройства
и др. но эти все же чаще
Виктор: в общем то лучше не намного стало, теперь данные не отправляются, только их длина. вопрос к размышлению, почему не WCF, Remoting и т.п.? таким способом планируется большой объем данных передавать?
pvlunegov: не соглашусь "сделать экран загрузки когда программа делает большие(долгие ~45-70сек) вычисления" как раз подразумевает то что ему так или иначе придется код изменить, в моем случае достаточно над ним повесить MethodInvoker mi = new MethodInvoker(delegate{ //создаем вызов метода в отдельном потоке и под ним }); mi.BeginInvoke(null, null);//начинаем выполнять, в случае чего его можно всегда убить через объект mi, и форма уже не зависает, что с ней делать во время вычислений автор может придумать сам, к примеру воткнуть анимированную гифку в picturebox или еще что. Можно при желании даже из этой обертки к форме обращаться без всяких проблем (но только в релиз версии (без debug).
Ivan_korolev: из гранатомета по мухе? вариант с герконом обойдется в 50 руб ящик + 300 руб плата какой ни будь дуйни, а Equicom PING2 1000 рублей штука при сомнительных приемуществах. Присоединяюсь к остальным, если не можете осилить "воткнуть 2 провода" то идите на фриланс или форум какой, там любители соберут такое легко
vvovas: не, этот вариант сразу отмел, во первых эффективность хранения падает из за размера кластера, во вторых файловой системе хреново когда файлов больше сотни тысяч
частично может помочь, в частности считать из xml без перечитывания всего xml все таки можно, но в моем случае в структуре много массивов (десятки или сотни тысяч), из них понадобиться могут скажем несколько тысяч, поэтому считывать всю структуру нет как бы никакого смысла. В случае с XML найти ветку в которой лежит искомый массив будет не проще чем запомнить в каком месте файла массив начинается и переместить указатель в потоке к этому месту. С частичной сериализацией у меня вопросов нет, там все просто, но сложно записать всю структуру со всеми элементами, а загружать только ту ее часть, что весит немного и позже по мере необходимости загружать конкретные элементы(которые уже весят много больше)
littleguga: в теории да на практике не совсем, некоторые пульты кодируются длиной импульса, некоторые частотой, некоторые смешивают первое с вторым, некоторые кодируют определенной последовательностью и т.д. записать "любой" значит записать некую последовательность с определенной частотой дискретизации, учитывая что некоторые пульты работают и в мгц диапозоне это мягко говоря проблематично, в итоге имеем библиотеки, которые с некоторой долей вероятности распознают некоторые из распросторонненых протоколов (обычно 2-3 протокола) и если ваш пульт будет работать на этом протоколе то есть вероятность что можно будет записать и воспроизвести сигнал, в противном случае вы будете получать мусор, который нельзя воспроизвести.
кстати не всегда a=1 даст плавный переход, некоторые сервы (особенно порядочно измученные) плавно двигаются толко при значении около 3-5, ну и еще плавность зависит от delay между изменением положения
не соглашусь, печенька на атоме (огрызок от ноутбука) с виндой, торрентами, файловым сервером и прочей фигней работает уже пару лет без проблем, не смотря на постоянные отключения электричества