Автор | Сообщение |
|
| |
Пост N: 42
Зарегистрирован: 03.02.12
|
|
Отправлено: 21.06.13 09:41. Заголовок: Доступ к сетевым ресурсам.
Добрый день. Подскажите пожалуйста, есть ли в Harbour функции доступа к сетевым ресурсам под определенной учетной записью? Например: Надо взять файл с ресурса \\serv1\folders2\load.txt Доступ туда имеет учетная запись: user: mdomen\user10 passw: Qazwsx!12
|
|
|
Ответов - 48
, стр:
1
2
3
All
[только новые]
|
|
|
| |
Пост N: 886
Зарегистрирован: 11.06.10
|
|
Отправлено: 21.06.13 10:44. Заголовок: Можно поступить так:..
Можно поступить так: c_user := "mdomen\user10" c_pass := "Qazwsx!12" hb_processRun('net use x: \\serv1\folders2 '+c_pass+' /USER:'+c_user) hb_FCopy( "x:\load.txt", "c:\load.txt" ) hb_processRun('net use x: /DEL')
|
|
|
|
| |
Пост N: 43
Зарегистрирован: 03.02.12
|
|
Отправлено: 21.06.13 10:50. Заголовок: Спасибо!..
Спасибо!
|
|
|
|
| постоянный участник
|
Пост N: 2973
Зарегистрирован: 12.09.06
|
|
Отправлено: 02.09.13 18:49. Заголовок: Можно ли получить сп..
Можно ли получить список доступных сетевых ресурсов из программы ?
|
|
|
|
| Администратор
|
Пост N: 2971
Зарегистрирован: 23.05.05
|
|
Отправлено: 03.09.13 09:52. Заголовок: Поскольку UNC не вкл..
Поскольку UNC не включает в себя параметры авторизации, сетевой ресурс надо подключать отдельно. Это можно сделать функцией NetRedir() из ct, с подключением сетевого диска. Есть еще функция WNetAddConnection2 из winapi, и она вроде бы работает и без подключения диска. Но для нее надо писать обертку. Получить список ресурсов в сети можно функциями winapi WNetOpenEnum WNetCloseEnum WNetEnumResource. Как это сделать - смотреть примеры в инете. Для харбора кажется оберток для этих функций никто не делал, впрочем, может быть я ошибаюсь, ищите.
|
|
|
|
| |
Пост N: 66
Зарегистрирован: 17.10.05
|
|
Отправлено: 03.09.13 11:27. Заголовок: ! net view > xxx..
! net view > xxx.txt ... ! net view \\srv >yyy.txt ... и разобрать полученные тексты. если знаешь что искать, найти несложно )
|
|
|
|
| постоянный участник
|
Пост N: 2975
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.09.13 15:38. Заголовок: Спасибо Pasha за обс..
Спасибо Pasha за обстоятельный ответ ! LYSK пишет: Простое решение, только почему то на 64х-бит висит и не дает ответа...
|
|
|
|
| |
Пост N: 3514
Зарегистрирован: 17.05.05
|
|
Отправлено: 04.09.13 15:49. Заголовок: Andrey пишет: Прос..
Andrey пишет: цитата: | Простое решение, только почему то на 64х-бит висит и не дает ответа... |
| Проверил на Windows server 2008 64 бита , работает нормик. Не висит.
|
|
|
|
| постоянный участник
|
Пост N: 2976
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.09.13 16:59. Заголовок: Dima пишет: Провери..
Dima пишет: цитата: | Проверил на Windows server 2008 64 бита , работает нормик. Не висит. |
| А как тогда снять повисшую программу: net view > xxx.txt через 2 минуты, если не откликается ?
|
|
|
|
| |
Пост N: 3515
Зарегистрирован: 17.05.05
|
|
Отправлено: 04.09.13 17:54. Заголовок: Andrey CTRL+C..
Andrey CTRL+C 2 минуты это очень долго , либо сеть у тебя огромная либо лаги в сети. у меня в сети 50 компов и net view задумывается не более чем на 3-5 секунд
|
|
|
|
| постоянный участник
|
Пост N: 2977
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.09.13 18:37. Заголовок: Dima пишет: 2 минут..
Dima пишет: цитата: | 2 минуты это очень долго , либо сеть у тебя огромная либо лаги в сети. |
| Согласен. А вдруг у юзера тоже такое вылезет ? Вот я и спрашиваю как снять процесс, если нет отклика 2 минуты ? hb_processRun('net view > xxx.txt') .......
|
|
|
|
| |
Пост N: 3516
Зарегистрирован: 17.05.05
|
|
Отправлено: 04.09.13 18:43. Заголовок: Andrey пишет: Вот я..
|
|
|
|
|
| постоянный участник
|
Пост N: 923
Зарегистрирован: 27.01.07
|
|
Отправлено: 04.09.13 18:45. Заголовок: Andrey странно, что..
Andrey странно, что зависает.
|
|
|
|
| |
Пост N: 921
Зарегистрирован: 11.06.10
|
|
Отправлено: 04.09.13 20:05. Заголовок: Andrey пишет: Вот я..
Andrey пишет: цитата: | Вот я и спрашиваю как снять процесс, если нет отклика 2 минуты ? hb_processRun('net view > xxx.txt' |
|
Откуда уверенность что висит, в списке процессов показывает что 'не отвечает'? Какой результат будет в cmd, возможно какая-то станция долго обрабатывает запрос. У меня есть парочка компов которые открываются в сетевом окружении около минуты, лень разбираться, для меня не критично, но проблемы похоже с настройками сети.
|
|
|
|
| постоянный участник
|
Пост N: 2978
Зарегистрирован: 12.09.06
|
|
Отправлено: 04.09.13 21:33. Заголовок: AlexMyr пишет: Отку..
AlexMyr пишет: цитата: | Откуда уверенность что висит, в списке процессов показывает что 'не отвечает'? Какой результат будет в cmd, возможно какая-то станция долго обрабатывает запрос. |
| 3 компа в сети с роутером. Один сильно навороченный, с непонятной сетевой картой. Win8 64bit. 5 минут ждал, устал.... Процесс висит и ничего не сообщает. AlexMyr пишет: цитата: | У меня есть парочка компов которые открываются в сетевом окружении около минуты, лень разбираться, для меня не критично, но проблемы похоже с настройками сети. |
| Вот на такой случай, я и хочу подстраховаться. Я не знаю где и какая будет сетка. Для этого случая и хочу иметь резерв 2-3 минуты и сообщить юзеру, что не могу прочитать эту сетку. Пускай настраивает ручками.
|
|
|
|
| постоянный участник
|
Пост N: 924
Зарегистрирован: 27.01.07
|
|
Отправлено: 05.09.13 09:13. Заголовок: Andrey пишет: Один ..
Andrey пишет: цитата: | Один сильно навороченный, с непонятной сетевой картой. Win8 64bit. 5 минут ждал, устал.... Процесс висит и ничего не сообщает. |
| Выполни эту команду вручную на этом компе и посмотри, что она выводит.
|
|
|
|
| |
Пост N: 3517
Зарегистрирован: 17.05.05
|
|
Отправлено: 05.09.13 09:50. Заголовок: Andrey пишет: Вот я..
Andrey пишет: цитата: | Вот я и спрашиваю как снять процесс |
| FUNCTION KillProceso ( cProceso ) #ifndef __XHARBOUR__ #xcommand TRY => BEGIN SEQUENCE WITH {|e| Break( e )} #xcommand CATCH [<!oErr!>] => RECOVER [USING <oErr>] <-oErr-> #endif Local oWMIob, oWMIserver, aProcess, objProcess try oWMIob := CreateObject( "wbemScripting.SwbemLocator" ) catch RETURN nil END oWMIserver := oWMIob:ConnectServer() aProcess :=oWMIserver:ExecQuery( "Select * from Win32_Process" ) For Each objProcess in aProcess IF UPPER(objProcess:Name) = UPPER(cProceso) objProcess:Terminate() ENDIF next RETURN nil Проверил пашет однако и по ходу через WMI можно видимо и список компов получить и не только .
|
|
|
|
| постоянный участник
|
Пост N: 2979
Зарегистрирован: 12.09.06
|
|
Отправлено: 05.09.13 13:06. Заголовок: Dima пишет: Провери..
Dima пишет: А как проверял ? Dima пишет: цитата: | по ходу через WMI можно видимо и список компов получить |
| Покажи как ?
|
|
|
|
| |
Пост N: 3519
Зарегистрирован: 17.05.05
|
|
Отправлено: 05.09.13 14:18. Заголовок: Andrey пишет: А как..
Andrey пишет: Указал процесс который надо прибить функции KillProceso() Например KillProceso("firefox.exe") Насчет компов не в курсе и много доки курить надо или гуглить
|
|
|
|
| |
Пост N: 93
Зарегистрирован: 20.02.11
|
|
Отправлено: 05.09.13 14:57. Заголовок: Dima пишет: по ходу..
Dima пишет: цитата: | по ходу через WMI можно видимо и список компов получить |
| когда то искал, делая инвентаризацию оборудования и софта по сети .... не нашел. Есть только имя по IP. Выкрутился тогда просто сканируя сеть по маске IP от 0 ..255 и составляя список живых Андрей - пример есть в минигуи, а возможные запросы вот: http://msdn.microsoft.com/en-us/library/windows/desktop/aa394585(v=vs.85).aspx
|
|
|
|
| |
Пост N: 3521
Зарегистрирован: 17.05.05
|
|
Отправлено: 05.09.13 15:52. Заголовок: Haz А не подскажешь..
Haz А не подскажешь как программно убить задачу на определенном компе по IP или имени ? Из CMD это примерно выглядит так Wmic /node:@computers.txt process where (caption=”notepad.exe”) call terminate
|
|
|
Ответов - 48
, стр:
1
2
3
All
[только новые]
|
|