请问如何创建线程,并为该线程指定相关的过程?

yaomac 2000-06-21 06:07:00
小弟在做一个文件切割器的程序,想在切割文件是使用多个线程,翻看了api函数手册后不知如何使用CreateProcess,请各位大虾指点。
...全文
150 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyang 2000-06-26
  • 打赏
  • 举报
回复
是。
Public Const OPEN_EXISTING = 3
Public Const GENERIC_ALL = &H10000000
Public Const GENERIC_EXECUTE = &H20000000
Public Const GENERIC_READ = &H80000000
Public Const GENERIC_WRITE = &H40000000
Public Const FILE_ATTRIBUTE_ARCHIVE = &H20
Public Const FILE_ATTRIBUTE_COMPRESSED = &H800
Public Const FILE_ATTRIBUTE_DIRECTORY = &H10
Public Const FILE_ATTRIBUTE_HIDDEN = &H2
Public Const FILE_ATTRIBUTE_NORMAL = &H80
Public Const FILE_ATTRIBUTE_READONLY = &H1
Public Const FILE_ATTRIBUTE_SYSTEM = &H4
Public Const FILE_ATTRIBUTE_TEMPORARY = &H100

Declare Function CreateFile Lib "Kernel32" Alias "CreateFileA" (ByVal lpFilename As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long

dim hFile as long
hFile = CreateFile("c:\autoexec.bat", GENERIC_WRITE Or GENERIC_READ, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0)
yaomac 2000-06-25
  • 打赏
  • 举报
回复
还有一个小问题,我用WinAPI函数CreateFile来创建一个文件,但每次的返回句柄总是-1,请问是否与参数有关?

yenan 2000-06-24
  • 打赏
  • 举报
回复
MSDN里有关于多线程使用的介绍和例子.
liyang 2000-06-23
  • 打赏
  • 举报
回复
VB中用线程实际上就是用Timer。
进程,实际上是应用程序的一个实例。即,你运行一个exe文件,它运行起来以后,就形成了一个进程。
而线程,描述进程内的执行。线程依赖于进程而存在。
在win32里,每一个进程有一个主线程,二者相依为命。
win32,被称为抢先式多任务。操作系统按进程优先级把cpu时间片分配给进程中的线程,因此,进程中的线程增多,会分配到较多的cpu时间,因此,程序的执行可以加快,而由于cpu的速度很快,就仿佛多个线程在同时执行。
yaomac 2000-06-23
  • 打赏
  • 举报
回复
请问是否在VB中无法实现多线程,如有办法请问如何实现?
另外小弟对于线程和进程的概念有点迷糊能否解释以下?

liyang 2000-06-22
  • 打赏
  • 举报
回复
你是要产生线程还是进程。
使用CreateThread时,要调用Callback的函数,可是在VB6中不支持线程使用Address of.
而你要用CreateProcess产生进程,在这里好像用不上。

7,762

社区成员

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

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