подключал программатор через UserPort, хоть программатор и был на LPT1, в его командной строке писал LPT2. :-) Еще вот такое где-то встретил, но не проверял...
/* Должны быть права админа. */ HANDLE hToken; TOKEN_PRIVILEGES tkp; if ( !OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken) ) return; LookupPrivilegeValue(NULL, SE_TCB_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; BOOLEAN bret = AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0); CloseHandle(hToken); if ( !bret ) return; HINSTANCE NtDll; NtDll=LoadLibrary("ntdll.dll"); if ( !NtDll) return ; ZwSetInformationProcess( GetCurrentProcess(), 16,0 , 0 ); __try { _asm { push ax push dx mov dx,0x378 mov al,0xff out dx,al pop dx pop ax } } __except( EXCEPTION_CONTINUE_EXECUTION ) { } return;