vb.net编程进程 vbnet function

各们,请教怎么使用vb.net编写两个进程间消息

两个方法

创新互联建站专注于仙游企业网站建设,响应式网站,电子商务商城网站建设。仙游网站建设公司,为仙游等地区提供建站服务。全流程按需求定制制作,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

1.

要接收的窗口先使用FindWindow这个api获得句柄

调用SetForegroundWindow使其获得焦点并选中

调用.net方法:SendKeys.Send方法发送

2.使用API的SendInput

vb.net编程,如何使用 appdomain 实现某进程DLL动态加载和卸载?

由于你要求的是能够动态的加载与卸载,所以这里选用了appdomain的load方法来加载一个程序集(同样的,卸载的时候调用appdomain的静态方法Unload即可).

另外由于,在appdomain.load的时候remoting会试图将程序集序列化到defaultdomain中去,这会产生问题,通常以一个"FileNotFoundException"结束,因此采用了一种折中的办法.

思路如下:

1.建立一个新的程序集,里面包含一个轻量的类型,这个类型只包含一个用来加载程序集的公共方法;

2.在你的主程序里面,用appdomain.load来加载上一步的程序集,接着实例化上一步的轻量的类型;

3.而后就可以像操作通常的对象一样,调用它上面的方法来加载你想要的程序集了;

源代码已经打包发给你了,

你看看吧~

如果有问题,再找我哈

Vb.net中已知某程序的进程id,如果激活该程序并最大化?

使用ShowWindow函数,便可轻松控制窗口的显隐,最小化,最大化。

概述

函数功能:该函数设置指定窗口的显示状态。

函数原型:BOOL ShowWindow(HWND hWnd, int nCmdShow);

*/第一个参数为句柄,第二个参数选下面的值

#define SW_HIDE 0

#define SW_SHOWNORMAL 1

#define SW_NORMAL 1

#define SW_SHOWMINIMIZED 2

#define SW_SHOWMAXIMIZED 3

#define SW_MAXIMIZE 3

#define SW_SHOWNOACTIVATE 4

#define SW_SHOW 5

#define SW_MINIMIZE 6

#define SW_SHOWMINNOACTIVE 7

#define SW_SHOWNA 8

#define SW_RESTORE 9

#define SW_SHOWDEFAULT 10

#define SW_FORCEMINIMIZE 11

#define SW_MAX 11

参数含义

hWnd:指窗口句柄。

nCmdShow:指定窗口如何显示。如果发送应用程序的程序提供了STARTUPINFO结构,则应用程序第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。在随后的调用中,该参数可以为下列值之一:

SW_FORCEMINIMIZE:在WindowNT5.0中最小化窗口,即使拥有窗口的线程被挂起也会最小化。在从其他线程最小化窗口时才使用这个参数。

SW_HIDE:隐藏窗口并激活其他窗口。

SW_MAXIMIZE:最大化指定的窗口。

SW_MINIMIZE:最小化指定的窗口并且激活在Z序中的下一个顶层窗口。

SW_RESTORE:激活并显示窗口。如果窗口最小化或最大化,则系统将窗口恢复到原来的尺寸和位置。在恢复最小化窗口时,应用程序应该指定这个标志。

SW_SHOW:在窗口原来的位置以原来的尺寸激活和显示窗口。

SW_SHOWDEFAULT:依据在STARTUPINFO结构中指定的SW_FLAG标志设定显示状态,STARTUPINFO 结构是由启动应用程序的程序传递给CreateProcess函数的。

SW_SHOWMAXIMIZED:激活窗口并将其最大化。

SW_SHOWMINIMIZED:激活窗口并将其最小化。

SW_SHOWMINNOACTIVATE:窗口最小化,激活窗口仍然维持激活状态。

SW_SHOWNA:以窗口原来的状态显示窗口。激活窗口仍然维持激活状态。

SW_SHOWNOACTIVATE:以窗口最近一次的大小和状态显示窗口。激活窗口仍然维持激活状态。

SW_SHOWNORMAL:激活并显示一个窗口。如果窗口被最小化或最大化,系统将其恢复到原来的尺寸和大小。应用程序在第一次显示窗口的时候应该指定此标志。

不过顺便说一句,SendKeys会偶尔造成指令丢失,不可避免。不管你激活窗口还是最大化窗口或者锁定都没办法完全避免。

vb.net 怎么结束进程

好像不难吧?

我放进了Button1的Click事件里。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

On Error GoTo Errmessages '在做系统操作时加排错标签是个好习惯

Dim TargetName As String = "ibmdict" '存储进程名为文本型,注:进程名不加扩展名

Dim TargetKill() As Process = Process.GetProcessesByName(TargetName) '从进程名获取进程

Dim TargetPath As String '存储进程路径为文本型

If TargetKill.Length 1 Then '判断进程名的数量,如果同名进程数量在2个以上,用For循环关闭进程。

For i = 0 To TargetKill.Length - 1

TargetPath = TargetKill(i).MainModule.FileName

TargetKill(i).Kill()

Next

ElseIf TargetKill.Length = 0 Then '判断进程名的数量,没有发现进程直接弹窗。不需要的,可直接删掉该If子句

MsgBox("没有发现进程!")

Exit Sub

ElseIf TargetKill.Length = 1 Then '判断进程名的数量,如果只有一个,就不用For循环

TargetKill(0).Kill()

End If

MsgBox("已终止" TargetKill.Length "个进程") '弹窗提示已终止多少个进程

Errmessages: ‘定义排错标签

If Err.Description Nothing Then ’判断有无错误,如果有,则 ↓

MsgBox(Err.Description) '当出现错误时,弹窗提示

End If

End Sub

可根据需要自行修改,这个备注够完善了吧?不会的再Hi我。


分享名称:vb.net编程进程 vbnet function
本文地址:http://scyanting.com/article/dopsjcp.html