1401 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2016-10-11
  • 打赏
  • 举报
回复
引用 16 楼 xiaoyao961 的回复:
[quote=引用 15 楼 赵4老师的回复:]解决多开最完美的方法我觉得是多个虚拟机。
什么虚拟机啊我只是想把一个dll注入ie[/quote] 你将dll注入ie的目的不是想多开ie关联的用户吗?
赵4老师 2016-10-11
  • 打赏
  • 举报
回复
多个虚拟机中的IE肯定可以隔离。 HyperV、VMWare、VirtualBox都是虚拟机。
  • 打赏
  • 举报
回复
引用 17 楼 zhao4zhong1 的回复:
[quote=引用 16 楼 xiaoyao961 的回复:] [quote=引用 15 楼 赵4老师的回复:]解决多开最完美的方法我觉得是多个虚拟机。
什么虚拟机啊我只是想把一个dll注入ie[/quote] 你将dll注入ie的目的不是想多开ie关联的用户吗?[/quote] 注入IE主要是用来取COOKIE,同时一个IE中创建10个100个线程,指定时间批量抢手机。 另一个问题也碰到了多个IE COOKIE没法隔离的事情。我不知你说的虚拟机是什么东西。 虚拟桌面这回事你前面另一个贴和我回了,但是那个虚拟桌面里面的IE是否COOKIE隔离我不知道,不知多创建一些虚拟桌面需要额外占用多少系统开销》
  • 打赏
  • 举报
回复
引用 15 楼 赵4老师的回复:
解决多开最完美的方法我觉得是多个虚拟机。
什么虚拟机啊我只是想把一个dll注入ie
赵4老师 2016-10-10
  • 打赏
  • 举报
回复
解决多开最完美的方法我觉得是多个虚拟机。
  • 打赏
  • 举报
回复
引用 13 楼 赵4老师的回复:
同时运行多个虚拟机?
老师这里有什么虚拟机,你是不是回复错了?
赵4老师 2016-10-08
  • 打赏
  • 举报
回复
同时运行多个虚拟机?
  • 打赏
  • 举报
回复
早上我在网上看了好多文章,发现别人是用两个方法,第一个在dll加载的时候创建一个线程,然后在里面再创建一个线程,打开窗体form1.show 1
一笑拔剑 2016-10-07
  • 打赏
  • 举报
回复
引用 8 楼 Chen8013 的回复:
[quote=引用 7 楼 aspower_ 的回复:] VB那有什么多线程? 这事要VC 或者C#来写,不轻轻松松 然后你中途一段代码卡住了,就整个进程卡住了 你这样吧,不如多进程,多开几个程序,然后程序间想个办法协同一下, 估计效果还比你现在的好.
VB6完全可以“多线程”。 [/quote] 讲真,VB的那些多线程我都看过, 都假.以前老马不是弄过一个ACTIVEX的多线程 明明是两个进程,也叫多线程!?
  • 打赏
  • 举报
回复
第5楼我已经完美实现了多线程,只是注入的dll好像没办法内存变量共享。只是想优化一下,不修改一样可以运行时 普通exe方式的多线程完美实现内存共用,并且实现ui同步更新
  • 打赏
  • 举报
回复
引用 9 楼 aspower_的回复:
[quote=引用 8 楼 Chen8013 的回复:] [quote=引用 7 楼 aspower_ 的回复:] VB那有什么多线程? 这事要VC 或者C#来写,不轻轻松松 然后你中途一段代码卡住了,就整个进程卡住了 你这样吧,不如多进程,多开几个程序,然后程序间想个办法协同一下, 估计效果还比你现在的好.
VB6完全可以“多线程”。 [/quote] 讲真,VB的那些多线程我都看过, 都假.以前老马不是弄过一个ACTIVEX的多线程 明明是两个进程,也叫多线程!?[/quote] 这个active.exe完全可以做到只有一个线程,只是创建一个新线程需要25毫秒左右,exe越大越慢。而且也可以另一个方法直接用createthread api创建新线程,5毫秒左右一个线程。只是需要初始化载入一下msvbvm60.dll。最多我试过1000-2000线程同时运行。 第三,还可以直接生成标准dll注入其他程序,第四,还可以无dll方式hook其他进程api调用。 vb6功能好多,只是需要一些取巧。
舉杯邀明月 2016-10-06
  • 打赏
  • 举报
回复
引用 7 楼 aspower_ 的回复:
VB那有什么多线程? 这事要VC 或者C#来写,不轻轻松松 然后你中途一段代码卡住了,就整个进程卡住了 你这样吧,不如多进程,多开几个程序,然后程序间想个办法协同一下, 估计效果还比你现在的好.
VB6完全可以“多线程”。
一笑拔剑 2016-10-06
  • 打赏
  • 举报
回复
VB那有什么多线程? 这事要VC 或者C#来写,不轻轻松松 然后你中途一段代码卡住了,就整个进程卡住了 你这样吧,不如多进程,多开几个程序,然后程序间想个办法协同一下, 估计效果还比你现在的好.
  • 打赏
  • 举报
回复
一个关键问题,我用5个winhttp带事件数组对象,多个get收到数据的地方msgbox然后延时5秒再完成。理论上需要25秒,结果却同时弹出msgbox窗口,并且没有关闭的情况下他代码继续运行并且几乎同时结束,相当于msgbox拥有模态窗口的显示方式,却又回被多线程自动跳过不会堵塞。 我现在就是用msgbox把多线程给暂停却又回继续的原理,dll主线程不卡住却又没有停下来的原理完成 可是检查线程id好像一样,app.threadid? 是不是我错了?应该用。getcurentthreadid? 高手试试 dim withevents httpsz(5) as winhttp.*
  • 打赏
  • 举报
回复
利用VB编写dll注入其他进程的源代码(3) - 豆丁网
http://www.docin.com/p-46367578.html

又碰到一个问题,想找被注处程序的主窗口句柄,又是个难题了,一个接一个。

舉杯邀明月 2016-10-03
  • 打赏
  • 举报
回复
1楼的那段C++代码转为VB6代码,并没有什么难度吧,你还会搞不定?
引用 1 楼 xiaoyao961 的回复:
想改成VB代码,主要用途,把VB的DLL注入了其他进程,然后想隔段时间发送一个消息过去。 注入的DLL加载后自动就退出了,如果一调用DLL里的标准函数,就崩溃了。(被注入程序一般正常) 但是如果想删卸载这个DLL,被注程序也崩了 ........
这估计是你的DLL编写、编译的问题了。 你有没有试过,你的“标准DLL”能不能被其它开发环境(比如C++、Delphi等)正常调用? 也可以用Rundll32.exe来测试。 注意,如果只是来个什么加减乘除运算的DLL函数就免谈了,那些基本没有什么实用价值、也不能说明问题。 必须要能在函数(或过程)中调用别的API(系统提供的API函数),或者创建对象、显示窗口等; 也可以“被调用”用来创建新线程。 要能做到这一步的用VB6编译的DLL,才能算“成功”。
  • 打赏
  • 举报
回复
想改成VB代码,主要用途,把VB的DLL注入了其他进程,然后想隔段时间发送一个消息过去。 注入的DLL加载后自动就退出了,如果一调用DLL里的标准函数,就崩溃了。(被注入程序一般正常) 但是如果想删卸载这个DLL,被注程序也崩了 想加上模态窗口不让DLL加载后跳出,但是被注程序就被卡死了。 比如FORM1.SHOW 1 所以现在就想用DO WHILE方式 或加一个API TIMER等方式把注入状态保住。 要是能够2个不同进程还能交互就最好了。
struct handle_data {
	unsigned long process_id;
	HWND best_handle;
};

BOOL IsMainWindow(HWND handle)
{   
	return GetWindow(handle, GW_OWNER) == (HWND)0 && IsWindowVisible(handle);
}


HWND FindMainWindow(unsigned long process_id)
{
	handle_data data;
	data.process_id = process_id;
	data.best_handle = 0;
	EnumWindows(EnumWindowsCallback, (LPARAM)&data);
	return data.best_handle;
}

BOOL CALLBACK EnumWindowsCallback(HWND handle, LPARAM lParam)
{
	handle_data& data = *(handle_data*)lParam;
	unsigned long process_id = 0;
	GetWindowThreadProcessId(handle, &process_id);
	if (data.process_id != process_id || !IsMainWindow(handle)) {
		return TRUE;
	}
	data.best_handle = handle;
	return FALSE;   
}
  • 打赏
  • 举报
回复
这个是我的作品,一元抢手机。(一个DLL注入到IE)然后得到COOKIE,DLL中弹出一个空口,然后不退出,相当于IE多显示了一个 开发工具一样

利用网上的代码改的,但是一旦form1.show 1
马上IE都卡住了,无意中找到一个方法花了好几个周转把这个窗口给定住,用了3个线程进行东转西转才实现。
不知大家还有什么好方法?

就和ACTIVEX.EXE一样,也是会卡住的用了其他方法才让他多个线程同时运行 ,有人可以用那个方法试试?

  • 打赏
  • 举报
回复
引用 3 楼 Chen8013 的回复:
1楼的那段C++代码转为VB6代码,并没有什么难度吧,你还会搞不定? [quote=引用 1 楼 xiaoyao961 的回复:] 想改成VB代码,主要用途,把VB的DLL注入了其他进程,然后想隔段时间发送一个消息过去。 注入的DLL加载后自动就退出了,如果一调用DLL里的标准函数,就崩溃了。(被注入程序一般正常) 但是如果想删卸载这个DLL,被注程序也崩了 ........
这估计是你的DLL编写、编译的问题了。 你有没有试过,你的“标准DLL”能不能被其它开发环境(比如C++、Delphi等)正常调用? 也可以用Rundll32.exe来测试。 注意,如果只是来个什么加减乘除运算的DLL函数就免谈了,那些基本没有什么实用价值、也不能说明问题。 必须要能在函数(或过程)中调用别的API(系统提供的API函数),或者创建对象、显示窗口等; 也可以“被调用”用来创建新线程。 要能做到这一步的用VB6编译的DLL,才能算“成功”。 [/quote] 嗯,现在已经弄成做了一个DLL,然后注入到IE,再调用IE相关的API,读取COOKIE之类成功了。另外如果有需要也可以做在HOOK IE的请求和得到的数据,或者更改请求或收到的HTM代码。这个以前有研究过,没弄完。 HTPTWATCH之类的东西真是强大,不得不服。 其实我的目的就是不想把HTTPWATCH发给客户,让他们去复制COoKIE,我做个DLL注入IE,得到COOKIE,然后另外写软件进行POST提交,多线程,并且账号隔几分钟刷新一下,防止退出,这样做的好,登录的账号说不定几天都不会失效。
我将带领大家来系统学习Windows的窗口编程,包括消息、窗口、GDI绘图、游戏开发等。本课程比较基础,非常适合初学者入门,读者可以边学习边实践。具体的章节目录和课程内容如下所示:---------------------------------------------Windows游戏编程系列之1:GUI界面编程及游戏入门实战1、Windows创建第一个窗口 WinMain入口函数 5进行Windows编程的调试手法 6窗口从哪里来? 7窗口编程的步骤 7窗口编程需要的要结构 8窗口编程需要的要API 92、Windows的窗口过程与消息机制 如何留住窗口? 121)Windows的消息与消息循环 142)消息处理函数与常用消息 17)Windows的窗口过程函数 19 3、GDI编程之设备上下文 1)GDI的通用编程框架 222)GDI的绘图步骤 253)GDI获取设备句柄 254、GDI编程之绘制几何图形 画点、线 28颜色COLORREF 29矩形 29画圆、饼图、弦图 305、GDI编程之自定义画笔画刷画笔简介 32画刷简介 33画笔案例 33画刷案例 346、GDI编程之绘制文字 DrawText函数 35TextOut 函数 (wingdi.h) 36CreateFont函数 37绘制文本案例 377、GDI编程之绘制位图 位图简介 381)在资源中添加位图资源 392)从资源中加载位图: LoadBitmap 393)创建一个与当前DC相匹配的DC(内存DC) 394)将bitmap放入匹配的DC中:SelectObject 405)成像(1:1 比例 ) 406)取出位图 407)释放位图 418)释放匹配的DC 41绘制位图案例 41   8、Windows鼠标键盘消息 一、键盘消息 421、键盘消息 422、消息参数: 423、消息的使用: 424、键盘消息的案例代码 43二、鼠标消息 441、基本鼠标消息 442、双击消息 443、滚轮消息 454、不响应双击消息 45 9、Windows定时器消息 定时器消息介绍 47创建定时器 47关闭定时器 47定时器消息案例代码 4810、GDI游戏之跳舞动画 11、GDI游戏之走路动画 12、GDI贪吃蛇游戏实战  

1,486

社区成员

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

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