※※一个关于关闭其它电脑应用程序 和 远程关机 的问题※※

udSoft2020 2003-08-25 11:03:38
能否在WINnt的主域中,
关于其他域用户正在运行的程序

环境:其他域用户均 为 WIN2000,超级用户密码 均为已知
前提
1、本在随便一个客户端运行
2、能列出选定网内的某一台计算机 选择某1个正在运行的应用程序
3、然后关闭后。
4、代码能否简单明了,多加一些注释!

另外 WIN2000的远程关机如何实现(VB中),即可以直接强行将某一台选定计算机关机。

蛮有难度的噢,哪位大哥能解决一定给分,分不够可以另外加!!!
^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^

...全文
102 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaya1979 2004-02-13
  • 打赏
  • 举报
回复
我有win2k下的远程(或者本地)的关机程序,给我邮箱或留言,我可以发给你
kmzs 2004-02-13
  • 打赏
  • 举报
回复
vincentzpf 2004-02-13
  • 打赏
  • 举报
回复
我现在正在写这方面的软件用于网管用的。不过现在还没有完成做好了可以共享给你。
vincentzpf 2004-02-13
  • 打赏
  • 举报
回复
1.用C/S结构的。用上面的代码来关闭电脑。
2.然后用进程管理的API来关闭程式,和系统服务因为有些时候是要关闭系统服务的.
这方面的资料网上好多!!
udSoft2020 2003-08-27
  • 打赏
  • 举报
回复
客户端的WIN2000是不是还要像 dreamreality(追梦) 说的在服务器启动终端,那还有什么意义,能不能直接从服务端 或 其他客户端 进行控制
^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^ ^_^
udSoft2020 2003-08-27
  • 打赏
  • 举报
回复
win2k的超级终端怎么用呢
打开以后,建立1个连接,是连接到哪1位呢
请楼上的大哥再帮忙,谢谢了
pigpag 2003-08-27
  • 打赏
  • 举报
回复
其实shutdown也是一种C/S结构。Win2000开了n个服务,许多都是为了远程管理用的。理论上来说,能完全在远程Win2000系统上作一些管理操作,而不需要使用附加的木马。Win2000就有很多内置的“木马”
dreamreality 2003-08-27
  • 打赏
  • 举报
回复
我個人認為W2k自帶的這個工具是最好用的,如果你要其他的方法,就可以像樓上所說的種一個木馬,把周星星的程序做成木馬程序的一部分,然后用winsock做一個服務端,當接受到數據后執行周星星的程序就可以啦。這種情況同樣要有一個客戶端程序與一個報務端程序,原理是一樣的,所以要控制遠程關機,我還是喜歡用W2K自帶的那一個
usstdiy 2003-08-26
  • 打赏
  • 举报
回复
上面的代码可能对你有用,我的问题也希望有人帮忙,不好意思阿,算是借宝地一用,楼主不会怪我把
usstdiy 2003-08-26
  • 打赏
  • 举报
回复
Private Const EWX_LogOff As Long = 0
Private Const EWX_SHUTDOWN As Long = 1
Private Const EWX_REBOOT As Long = 2
Private Const EWX_FORCE As Long = 4
Private Const EWX_POWEROFF As Long = 8
Private wk_Restart As String


'The ExitWindowsEx function either logs off, shuts down, or shuts
'down and restarts the system.
Private Declare Function ExitWindowsEx Lib "user32" _
(ByVal dwOptions As Long, ByVal dwReserved As Long) As Long

'The GetLastError function returns the calling thread's last-error
'code value. The last-error code is maintained on a per-thread basis.
'Multiple threads do not overwrite each other's last-error code.
Private Declare Function GetLastError Lib "kernel32" () As Long

Private Const mlngWindows95 = 0
Private Const mlngWindowsNT = 1

Public glngWhichWindows32 As Long

'The GetVersion function returns the operating system in use.
Private Declare Function GetVersion Lib "kernel32" () As Long

Private Type LUID
UsedPart As Long
IgnoredForNowHigh32BitPart As Long
End Type

Private Type LUID_AND_ATTRIBUTES
TheLuid As LUID
Attributes As Long
End Type

Private Type TOKEN_PRIVILEGES
PrivilegeCount As Long
TheLuid As LUID
Attributes As Long
End Type

'The GetCurrentProcess function returns a pseudohandle for the
'current process.
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long

'The OpenProcessToken function opens the access token associated with
'a process.
Private Declare Function OpenProcessToken Lib "advapi32" _
(ByVal ProcessHandle As Long, _
ByVal DesiredAccess As Long, _
TokenHandle As Long) As Long

'The LookupPrivilegeValue function retrieves the locally unique
'identifier (LUID) used on a specified system to locally represent
'the specified privilege name.
Private Declare Function LookupPrivilegeValue Lib "advapi32" _
Alias "LookupPrivilegeValueA" _
(ByVal lpSystemName As String, _
ByVal lpName As String, _
lpLuid As LUID) As Long

'The AdjustTokenPrivileges function enables or disables privileges
'in the specified access token. Enabling or disabling privileges
'in an access token requires TOKEN_ADJUST_PRIVILEGES access.
Private Declare Function AdjustTokenPrivileges Lib "advapi32" _
(ByVal TokenHandle As Long, _
ByVal DisableAllPrivileges As Long, _
NewState As TOKEN_PRIVILEGES, _
ByVal BufferLength As Long, _
PreviousState As TOKEN_PRIVILEGES, _
ReturnLength As Long) As Long

Private Declare Sub SetLastError Lib "kernel32" _
(ByVal dwErrCode As Long)
----------------------------------------------------------------
Private Sub AdjustToken()

'********************************************************************
'* This procedure sets the proper privileges to allow a log off or a
'* shut down to occur under Windows NT.
'********************************************************************

Const TOKEN_ADJUST_PRIVILEGES = &H20
Const TOKEN_QUERY = &H8
Const SE_PRIVILEGE_ENABLED = &H2

Dim hdlProcessHandle As Long
Dim hdlTokenHandle As Long
Dim tmpLuid As LUID
Dim tkp As TOKEN_PRIVILEGES
Dim tkpNewButIgnored As TOKEN_PRIVILEGES
Dim lBufferNeeded As Long

'Set the error code of the last thread to zero using the
'SetLast Error function. Do this so that the GetLastError
'function does not return a value other than zero for no
'apparent reason.
SetLastError 0

'Use the GetCurrentProcess function to set the hdlProcessHandle
'variable.
hdlProcessHandle = GetCurrentProcess()

If GetLastError <> 0 Then
MsgBox "GetCurrentProcess error==" & GetLastError
End If

OpenProcessToken hdlProcessHandle, _
(TOKEN_ADJUST_PRIVILEGES Or TOKEN_QUERY), hdlTokenHandle

If GetLastError <> 0 Then
MsgBox "OpenProcessToken error==" & GetLastError
End If

'Get the LUID for shutdown privilege
LookupPrivilegeValue "", "SeShutdownPrivilege", tmpLuid

If GetLastError <> 0 Then
MsgBox "LookupPrivilegeValue error==" & GetLastError
End If

tkp.PrivilegeCount = 1 ' One privilege to set
tkp.TheLuid = tmpLuid
tkp.Attributes = SE_PRIVILEGE_ENABLED

'Enable the shutdown privilege in the access token of this process
AdjustTokenPrivileges hdlTokenHandle, _
False, _
tkp, _
Len(tkpNewButIgnored), _
tkpNewButIgnored, _
lBufferNeeded

If GetLastError <> 0 Then
MsgBox "AdjustTokenPrivileges error==" & GetLastError
End If

End Sub
--------------------------------------------------------------
Function RestartComputer(ByVal UserName As String, ByVal Pwd As String) As Boolean
If UserName <> "a" Or Pwd <> "b" Then
RestartComputer = False
Exit Function
Else
On Error GoTo Errorhandler
If glngWhichWindows32 = mlngWindowsNT Then
AdjustToken
End If
ExitWindowsEx EWX_REBOOT, EWX_FORCE
RestartComputer = True
End If
Exit Function

Errorhandler:
RestartComputer = False
MsgBox "ExitWindowsEx's GetLastError " & GetLastError
End Function

我把它注册为dll,或者在com+组建中加入,在服务器已经登陆的时候,通过asp调用,服务器成功启动,但是当服务器被锁定的时候仍返回成功,但是却不重起,操作系统是win2000server.请了解的大虾解答一下,应该怎么改?
dreamreality 2003-08-26
  • 打赏
  • 举报
回复
这是在服务器端做的动作
控制面版---添加/删除程序----添加/删除windows组件,选择终端服务--下一步--下一步
然后在客户端安装
C:\WINNT\system32\clients\tsclient\win32\disks\disk1\setup.exe
重启服务器
客户端开始--程序---终端服务客户端--终端服务客户端
然后输入用户名与密码,就可以远端对服务器进行操作了,什么操作都可以做的(包括关机)
udSoft2020 2003-08-26
  • 打赏
  • 举报
回复
WMI
是什么东西,我们用的服务器的NT4,客户端都是WIN2K
有招吗~_~
pigpag 2003-08-26
  • 打赏
  • 举报
回复
这是本地关机代码。FAQ里面有的

shutdown.exe在system32里面。没有吗?我是XP,如果2000没有,说明需要Windows2000 ResourceKits
pigpag 2003-08-25
  • 打赏
  • 举报
回复
//WIN2000的远程关机如何实现(VB中),即可以直接强行将某一台选定计算机关机。

shutdown.exe

Shell "shutdown.exe -s -m \\计算机名"
lxcc 2003-08-25
  • 打赏
  • 举报
回复
作小木马吧!
viena 2003-08-25
  • 打赏
  • 举报
回复
WMI
liuyongpc 2003-08-25
  • 打赏
  • 举报
回复
需要用api做个客户端得到正在运行的程序句柄,然后有条件的关闭它,条件就是服务端发来命令,可以使用sock
udSoft2020 2003-08-25
  • 打赏
  • 举报
回复
我查了一下我的电脑没有shutdown.exe这个东东?
udSoft2020 2003-08-25
  • 打赏
  • 举报
回复
请问如何关,能不能具体一些
dreamreality 2003-08-25
  • 打赏
  • 举报
回复
win2000只要你裝有客戶端與服務端就可以實現遠程登錄與遠程關機的,但前提是你必希知道administrator的密碼
加载更多回复(1)
01、禁用索引服务 02、禁止window发送错误报告 03、禁用“最近使用的项目” 04、关团Windows Defender 05、关闭防火墙 06、检查更新而不自动下载更新 07、启动电源计划“高性能” 08、调整申源选项 09、禁用休眠(删除休眠文件) 10、开启快速启动 11、调整休眠文件大小 12、转移虚拟内存 13、关闭系统保护 14、关闭用户账户控制关闭计划任务隐藏的自启 17、移除右键菜单SkyDrivePro 18、禁止运行计算机自动维护计划 19、启用.net framework 3.5.1 20、关闭程序兼容性助手 21、禁止一联网就打开浏览器 22、删除6个文件夹(暂失效) 23、显示受保护的系统文件 24、桌面显示“这台电脑” 25、启动IE增强保护模式 26、将临时文件夹移动到非系统盘 27、关闭家庭组 28、延识启动Superfetch服务 29、设置免输密码自动登陆 30、关闭开机画面(GuI引导) 31、关闭IPv6 32、关闭不需要的视觉特效 33、关闭客户体验改善计划 34、隐藏操作中心任务栏托盘 35、关闭自动播放或自动打开U盘 36、设置窗囗超窄边框 37、删除回收站右键固定到开始屏幕 38、直接删除文件不进入回收站 39、关闭smartscreen应用筛选器 40、关机时强制杀后台不等待 41、关闭不必要的视觉动画效果 42、关团程序跳转列表 43、关闭远程协助 44、更改正默认下载目录 45、清理应用商店缓存 46、任务栏显示星期几” 47、设置系统自带戳屏保存到桌面 48、关闭磁盘碎片整理计划 49、禁用系统日志和内存转储 50、禁用疑难解答和系统诊断服务
Radmin 3 - 主要特性列表 Radmin 一个快速而安全的远程控制和远程访问软件,通过它,您可以就像坐在远程计算机前一样,在远程计算机上工作,并可以从多个位置访问远程计算机。Radmin 完全支持 Windows 7(32 位和 64 位)、文件传输、多用户文字与语音聊天、Windows 安全、Kerberos 身份验证、所有数据流的 256 位 AES 加密、远程登录访问、多显示器支持和独特的 DirectScreenTransfer™ 技术。Radmin 使用现有的 TCP/IP 协议 — 在 LAN、WAN 和因特网中使用得最广泛的协议。这意味着您可以在世界上的任何位置访问远程计算机。Radmin 已在全世界数千台企业 PC 中采用。在我们的客户中,有些公司将 Radmin 用作标准网络管理应用程序。 最高的工作速度 Radmin 是可以随处使用的最快的远程控制软件。其 DirectScreenTransfer™ 新技术使用视频挂钩内核模式驱动程序,将捕捉率提高到每秒数百次屏幕更新。通过其特别的低带宽优化功能,您甚至可以在使用拨号调制解调器和 GPRS 连接的情况下,顺心地进行工作。 通过支持的 Intel® AMT 技术,远程控制硬件 新功能! Radmin 3.4 新版软件支持 Intel® AMT(主动管理技术),让您甚至可以在远程计算机关闭或您无法启动其操作系统的情况下,对其进行操控。使用 Radmin Viewer,您可以打开、重启动或关闭远程计算机。用户还可以通过它查看和更改远程计算机的 BIOS 设置,并从本地 CD 或磁盘映像文件进行启动。 完全兼容 Windows 7 Radmin 3.4 完全支持 Windows 7 32-bit 和 64-bit,包括用户账户控制(UAC)和快速用户切换。 Radmin Server 3.4 支持 Windows 7/Vista/XP/2008/2003/2000 (32-bit) 和 Windows 7/Vista/XP/2008/2003 (64-bit) 操作系统。 Radmin Viewer 3.4 支持 Windows 7/Vista/XP/2008/2003/2000/ME/98/95/NT4.0 (32-bit) 和 Windows 7/Vista/XP/2008/2003 (64-bit) 操作系统。 最高的安全级别 Radmin 以加密方式工作,所有的数据、屏幕图像、鼠标移动和键盘信号都使用 256-位 AES 强密钥,每个连接都采用随机生成的密钥。 Radmin 的用户验证既可以使用 Windows 活动目录或 Kerberos 支持的安全性验证,或它自己的个别用户权限和安全登录/密码验证。 Radmin 安全性使用基于 Diffie-Hellman 的密钥交换,密钥长度 2048-位。 另外 IP 过滤器限制对特点主机和网络的访问。 文本和语音聊天 文本聊天、语音聊天和发送消息模式,都是 Radmin version 3 新开发的功能,它们有助于您与所连接的远程电脑上操作的用户进行交流。 使用简单 Radmin 非常易于学习和使用。 我们大多数的客户都认为 Radmin 的主要优点在于简易。 所有的报告界面很直观,而程序也非常易于使用。 不同于那些臃肿软件(bloatware),Radmin 没有无用的“增值”功能使它难以使用,不易学习或拖累它的性能。 安全的“拖放式”文件传输,带有“增量复制”(Delta Copy)功能 使用 Radmin 您可以在资源管理器风格的界面中轻松拖放,对远程电脑上的任何文件以加密方式进行传输。 Radmin 在复制文件的时候有项功能,可以允许仅更新在两台电脑上不同的部分文件。 这项功能称为“增量复制”(Delta Copy)因为只复制文件的差异(“增量”)。 它允许在网络故障之后继续复制操作,从故障发生的地方开始复制而非从头开始。 此功能在从/往远程电脑上复制任何文件时自动使用。 支持多连接 Radmin 支持同时多个连接到同一远程屏幕。 这意味着您可以邀请朋友或同事远程观看您的屏幕(很适合开会),或从您自己的电脑屏幕上查看或控制若干远程屏幕(非常适合远程外包服务或教学)。 免费通过 E-mail 提供技术支持 Famatech 通过 e-mail 对注册客户提供免费的技术支持。 其它特性 •兼容 Windows 7 和 Windows Vista 多用户会话。 •Radmin Viewer 兼容 Wine(从 Linux 机器上进行远程控制)。 •支持多监视器。 •以 2, 4, 16, 256, 64K 或 16 百万色彩传输远程屏幕。 •支持高解析度模式(最大显示解析度没有限制)。 •完全支持显示动画和阿尔法(alpha-blended)远程电脑光标。 •关机连接模式。 •Telnet 模式。 •Radmin Server 仅作为一个服务来运行。 •提供 Radmin 连接的无限号码簿,资源管理器风格的界面,文件夹以及拖放支持。 •双向剪贴板传输,带 Unicode 支持。 •扫描查找 Radmin Servers。 •兼容 Radmin Server 2.x。 •可以在窗口里或全屏显示远程屏幕,带有平滑缩放和原始比例。 •支持鼠标滚轮。 •号码簿记录里的快捷方式连接到号码簿记录里列出的桌面。 •特殊击键处理,以及可选的全键盘控制。 •IP 过滤器仅允许从特定的主机和网络访问。 •添加到日志文件的 DNS 名称和用户名信息。 •五个错误密码导致安全性延时。 •多语言用户界面和内建帮助。

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧