我用vb制作的软件,其中有一块功能要能够添加新的任务计划,窗体TaskForm的代码如下:
Option Explicit
Dim planName As String'设置自定义类型udtAtInfo的值
Private Sub SetStructvalue(udtAtInfo As AT_INFO, planName As String, filePath As String)
   Dim strTime As String
   Dim cDay As CheckBox
   Dim cmdTask As String
   cmdTask = filePath & "\mytask " & planName & " " & filePath
   
   With udtAtInfo
       ' 改变起始时间的格式。
       strTime = Format(dtpTime.Value, "hh:mm")
       ' 把时间都换算成统一的毫秒单位。
       .JobTime = (Hour(strTime) * 3600 + Minute(strTime) * 60) * 1000
       
       '设置你的程序在每天的一定时刻运行。
       If cbTask.Text = "每天" Then
          For Each cDay In chkWeek
            .DaysOfWeek = .DaysOfWeek + 2 ^ cDay.Index
          Next cDay
       ElseIf cbTask.Text = "每周" Then
         '设置你的程序在指定的每星期的某一天运行。
          For Each cDay In chkWeek
            If cDay.Value = 1 Then
               .DaysOfWeek = .DaysOfWeek + 2 ^ cDay.Index
            End If
          Next cDay
       ElseIf cbTask.Text = "每月" Then
          ' 设置你的程序在指定的每月的某一天运行。
          .DaysOfMonth = 2 ^ (Val(txtDate.Text) - 1)
       ElseIf cbTask.Text = "一次性" Then
           ' 设置你的程序为一次性。
          .DaysOfMonth = 0
          .DaysOfWeek = 0
       End If
       
       ' 设置允许你的定时程序不受任何影响的执行。
       ' .Flags = .Flags Or JOB_NONINTERACTIVE
       '设置为按预定义执行。
         .Flags = .Flags Or JOB_RUN_PERIODICALLY       ' 你可以设置你的运行参数。
         .Command = StrConv(cmdTask, vbUnicode)
    End With
    
End SubPrivate Sub cmdAddTask_Click() '点击本按钮,添加新的任务计划
   '判断周任务表至少选中一天
   Dim cDay As CheckBox
   Dim dayflag As Boolean
   dayflag = False
   If cbTask.Text = "每周" Then
      For Each cDay In chkWeek
        If cDay.Value = 1 Then
           dayflag = True
        End If
      Next cDay
      If dayflag = False Then
        MsgBox "周任务表无效,请确定您至少选择了一天!", vbOKOnly + 64
        Exit Sub
      End If
   End If   Dim lngWin32apiResultCode As Long '函数返回值
   Dim strComputerName As String '计算机名
   Dim lngJobID As Long '任务计划的ID号
   Dim udtAtInfo As AT_INFO
   Dim filePath As String
   filePath = App.Path
   
   SetStructvalue udtAtInfo, planName, filePath
    
   ' 添加你的定时任务。
   lngWin32apiResultCode = NetScheduleJobAdd(strComputerName, udtAtInfo, lngJobID)
    
   ' 检查你的定时任务是否设置成功,注意windows98返回失败。
   If lngWin32apiResultCode = NERR_Success Then
    '   MsgBox "程序" & lngJobID & "定时设置成功."
   
     AddForm.getJobID lngJobID
     AddForm.Enabled = True
     Unload TaskForm
   Else
       MsgBox "任务计划定制失败!请重试", vbOKOnly + 16
   End If
      
End SubPrivate Sub cmdCancel_Click() '点击“取消”按钮
  'AddForm.Enabled = True
  AddForm.getJobID 0
  Unload TaskForm
End SubPrivate Sub Form_Load()
  
  planName = AddForm.txtPlan.Text
  TaskForm.Caption = TaskForm.Caption & "_" & planName
  
  '起始时间
  Dim d As Date
  d = Now
  dtpTime.Value = d  cbTask.Text = "每天"
  Frame1.Visible = False
  Frame2.Visible = False
End SubPrivate Sub cbTask_Click() '选择每天,每周,每月,一次性
  If cbTask.Text = "每天" Then
   Frame1.Visible = False
    Frame2.Visible = False
  ElseIf cbTask.Text = "每周" Then
   Frame1.Visible = True
    Frame2.Visible = False
  ElseIf cbTask.Text = "每月" Then
   Frame1.Visible = False
   Frame2.Visible = True
  ElseIf cbTask.Text = "一次性" Then
   Frame1.Visible = False
   Frame2.Visible = False
 End If
End Sub点击cmdAddTask按钮就添加了新的任务计划,但是没有按设定的时间启动。请问:是不是必须设置系统帐户和密码才可以启动?如果需要设置系统帐户和密码,需要哪些API函数?或者由别的更好的方法么?请知道帮忙解决一下,给高分