home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / sysmgmt / sms / smsapi / newjob / readme.txt < prev   
Text File  |  1996-10-15  |  4KB  |  85 lines

  1.  
  2. Sample: newjob
  3. ==============
  4.  
  5. This sample illustrates the use of the SMS APIs in order to view,
  6. create, and delete job folders.
  7. There are four types of job folders:
  8.         Run command on Workstation job
  9.         Share package on Server job
  10.         Remove package from Server job
  11.         System job
  12. All of these except system jobs can be created and deleted.
  13.  
  14.  
  15. After logging on to a datasource, a job container is opened and populated.
  16. No filtering is done since we want to see all the jobs that exist in the
  17. system.
  18. The program then enters a loop asking whether the user wants to view the
  19. next job folder, delete the currently viewed folder, or create a new folder.
  20.  
  21. Both deletion and creation are two-stage processes. Only when the
  22. SmsCommitFolder API is called will the folder be either deleted from or
  23. inserted into the datasource.
  24.  
  25. Folder creation is handled in the CreateNewFolder function.
  26. This creates an empty folder in the context of the parent which in this
  27. case is the job container. The function then retrieves a description of
  28. the folder via the SmsDescribeFolder API. This returns a FOLDER_INFO
  29. structure which describes the folder in terms of its capabilities, see
  30. the objectty.h header file (or the help file) for a full description of
  31. this structure.
  32.  
  33. Included in FOLDER_INFO is a pointer to an array of SCALAR_INFO structures.
  34. Each SCALAR_INFO describes one of the folder's scalars. The information
  35. contained here is:
  36.         the scalar's name,
  37.         its type,
  38.         its access mode.
  39. CreateNewFolder loops through this array, for each scalar that has modify or
  40. create access, it displays the name and asks the user to fill in the value.
  41. Only nominal checking is done on the values, a real application would have
  42. to go into much greater detail since job creation is a non-trivial task.
  43. If there are any errors in the date/time fields they are set to the current
  44. date and time.
  45.  
  46. This is a sample of a created workstation install job:
  47.  
  48.  
  49. JS200009 (Workstation install job) contains 33 scalars
  50.                            Job ID: JS200009
  51.                          Job type: microsoft\SMS\workstation_script
  52.                       Job comment: a descriptive comment
  53.                     Activate time: Thu Jun 22 15:12:00 1995
  54.                         Left icon: Package
  55.                       Center icon: Machinegroup
  56.                        Right icon: Site
  57.                          Priority: 1
  58.                       Repeat mode: 1
  59.                       Cancel mode: 0
  60.                        Job status: 1
  61.                    Sending status: 1
  62.                    Working status: 1
  63.                     Cancel status: 1
  64.                        Package ID: JS200049
  65.                        Job target: 2
  66.                  Distribute phase: 1
  67.                        Send phase: 1
  68.                    Limit to sites: 2
  69.                  Include subsites: 1
  70.                   Site limit name: jonshu2site
  71.              Distribution servers: me
  72.                          WCL name: Audit software
  73.                          Query ID:
  74.                Machine group name: My machine group
  75.                      Machine path: *|*|*
  76.                        Offer time: Thu Jun 22 15:15:00 1995
  77.                    Mandatory time: Thu Jun 22 15:15:00 1995
  78.                Use mandatory time: 0
  79.              Force over slow link: 0
  80.                       Expire time: Thu Jun 22 15:15:00 1995
  81.                   Use expire time: 0
  82.           Run workstation command: 1
  83. ============== JS200009 ===========
  84.  
  85.