Attribute VB_Name = "JAPI_DECLARE"
'////////////////////////////////////////////////////////
'// JMSS Ver7.1 JLbg JAPI VB p萔`          //
'//                                                    //
'// (C)NEC Corporation/NEC Soft, Ltd. 1995,2008        //
'//                                                    //
'//       2003.7.22 Created by NEC Soft, Ltd.          //
'//                                                    //
'////////////////////////////////////////////////////////


'G[R[h
Global Const JMSS_PARAM_ERROR = &H60000000              'w肵p[^s
Global Const JMSS_NOT_ENOUGH_MEMORY = &H60000001        's
Global Const JMSS_NO_CONNECT = &H60000002               'w肵T[oɐڑłȂ
Global Const JMSS_NOGET_SERVERNAME = &H60000003         'ftHgJMSST[o擾łȂ
Global Const JMSS_SECURITY_NO_USE = &H60000004          '݂̃[UJMSSpȂ
Global Const JMSS_SECURITY_NO_THROW = &H60000005        '݂̃[UɃWuȂ
Global Const JMSS_SECURITY_NO_STOP = &H60000006         '[UIȂ̂ɑ[UWuw肵
Global Const JMSS_QUEUE_NOTFOUND = &H60000007           'L[Ȃ
Global Const JMSS_QUEUE_FULL = &H60000008               'w肵L[ɂ͍őo^WũWuo^Ă
Global Const JMSS_QUEUE_CLOSED = &H60000009             'L[͕Ă
Global Const JMSS_NO_JOB = &H6000000A                   'w肳ꂽWuԍ̃Wu͂Ȃ
Global Const JMSS_NOWATCH = &H6000000B                  '݂̃Wu͊ĎĂȂ
Global Const JMSS_TIMEOUT = &H6000000C                  '^CAEg
Global Const JMSS_NOT_ENOUGH_BUF = &H6000000D           'w肵̈̑傫s
Global Const JMSS_CANCEL = &H6000000E                   'LZ{^ꂽ
Global Const JMSS_NO_TERMINATE = &H60000010             'w肵Wu͋IłȂ
Global Const JMSS_WSEML_JOB = &H60000011                'WS-EMLŋNWuł
Global Const JMSS_NO_SEND_EVENT = &H60000012            'CxgMs
Global Const JMSS_SECURITY_ERROR = &H60000013           'ZLeB擾s
Global Const JMSS_NO_PAUSE = &H60000014                 'w肵Wu͈ꎞ~łȂ
Global Const JMSS_NO_RESTART = &H60000015               'w肵Wu͍ĊJłȂ
Global Const JMSS_NOT_JOBNET = &H60000016               'w肵Wu̓WulbgłȂ
Global Const JMSS_ERROR_NOGET_ENVIRONMENT = &H60000017  'WS-EMLpϐ擾s
Global Const JMSS_NO_CHILDJOB = &H60000018              'hWuȂ
Global Const JMSS_PARENTJOB_TERMINATE = &H60000019      'eWuI
Global Const JMSS_POWEROFF_TERMINATE = &H60000020       'dؒf
Global Const JMSS_EXCLUSIVE_ERROR = &H60000021          'r҂G[
Global Const JMSS_NOGET_PRODUCT_ID = &H60000022         'CXg[ʂ擾łȂ
Global Const JMSS_NOT_REPORT_EVENT = &H60000023         'CxgOo͂łȂ
Global Const JMSS_NOT_INSTALLED = &H60000024            'ɃCXg[ĂȂ
Global Const JMSS_NO_HOLD = &H60000027                  'ۗłȂ
Global Const JMSS_NO_RELEASE = &H60000028               'ۗłȂ
Global Const JMSS_NO_DELETE = &H60000029                'o^폜łȂ
Global Const JMSS_OVERLAP_JOBNO = &H60000030            'WuԍdĂ
Global Const JMSS_NO_STOP = &H60000031                  '~łȂ
Global Const JMSS_NO_CONTINUE = &H60000032              'płȂ
Global Const JMSS_SECURITY_NO_CONTROL = &H60000033      'ZLeBݒ茠Ȃ
Global Const JMSS_BADPATH = &H60000042                  'pX
Global Const JMSS_NO_JOBNO = &H60100000                 'w肳ꂽWuԍ̃Wu݂͑Ȃ

'WuD揇
Global Const JMSS_PRIORITY_REAL = 0     'REALTIME
Global Const JMSS_PRIORITY_HIGH = 1     'HIGH
Global Const JMSS_PRIORITY_NORMAL = 2   'NORMAL
Global Const JMSS_PRIORITY_IDLE = 3     'IDLE

'Wo͊ĎtO
Global Const JMSS_STDOUT_NOWATCH = 0           'ĎȂ
Global Const JMSS_STDOUT_SYSTEM_OVERWRITE = 1  'ĎL(VXe㏑)
Global Const JMSS_STDOUT_SYSTEM_APEND = 2      'ĎL(VXeǉ)
Global Const JMSS_STDOUT_USER_OVERWRITE = 3    'ĎL([U㏑)
Global Const JMSS_STDOUT_USER_APEND = 4        'ĎL([Uǉ)

'Wu̎
Global Const JMSS_JOBTYPE_BAT = 1           'BAT
Global Const JMSS_JOBTYPE_EXE32 = 2         'EXE(NT)
Global Const JMSS_JOBTYPE_EXE16 = 3         'EXE(Win3.1)
Global Const JMSS_JOBTYPE_EXEDOS = 4        'EXE(DOS)
Global Const JMSS_JOBTYPE_JNT = 5           'JOB NET
Global Const JMSS_JOBTYPE_COM = 6           'COM
Global Const JMSS_JOBTYPE_CMD = 7           'CMD
Global Const JMSS_JOBTYPE_PIF = 8           'PIF(T|[g)
Global Const JMSS_JOBTYPE_OS2 = 9           'OS2
Global Const JMSS_JOBTYPE_POSIX = 10        'POSIX
Global Const JMSS_JOBTYPE_DOC = 11          '̑(֘AÂꂽt@C)
Global Const JMSS_JOBTYPE_STDOUT_APEND = &H400    'ǉ
Global Const JMSS_JOBTYPE_STDOUT_USERFILE = &H800 'Wo͊Ďt@C
                                                  '[Uw
Global Const JMSS_JOBTYPE_STDOUT = &H1000    'Wo͊Ď
Global Const JMSS_JOBTYPE_CONTRINUE = &H2000 'psĂWulbg[NGlobal Const JMSS_JOBTYPE_CONTINUE = &H2000  'psĂWulbg[NGlobal Const JMSS_JOBTYPE_REPEAT = &H4000    'XPW[JԂsw
Global Const JMSS_JOBTYPE_SCHEDULE = &H8000  'XPW[s

'hWuL薳ID
Global Const JMSS_NOEXIST_DERIVE_JOB = 0    'hWuȂ
Global Const JMSS_EXIST_DERIVE_JOB = 1      'hWu

'Wus
Global Const JMSS_JOBSTATUS_RUN = 0         's
Global Const JMSS_JOBSTATUS_FINISH = 1      'I
Global Const JMSS_JOBSTATUS_TERM = 2        'I
Global Const JMSS_JOBSTATUS_ERROR = 3       'NG[
Global Const JMSS_JOBSTATUS_EVENT_REC = 4   'Cxg҂
Global Const JMSS_JOBSTATUS_PAUSE = 5       'ꎞ~(L[ꎞ~܂)
Global Const JMSS_JOBSTATUS_EVENT_SEND = 6  'CxgM
Global Const JMSS_JOBSTATUS_WAIT = 7        's҂
Global Const JMSS_JOBSTATUS_PENDING = 8     'ۗ
Global Const JMSS_JOBSTATUS_EXECUTE = 9     'N
Global Const JMSS_JOBSTATUS_EXCLUSIVE = 10  'r҂
Global Const JMSS_JOBSTATUS_RETRY = 11      'NgC
Global Const JMSS_JOBSTATUS_CHILDJOBRETRY = 12  'hWuNgC
Global Const JMSS_JOBSTATUS_STOP = 13           '~
Global Const JMSS_JOBSTATUS_STOPPING = 14       '~
Global Const JMSS_JOBSTATUS_JOBBOXRETRY = 15    'Wu{bNXgC
Global Const JMSS_JOBSTATUS_UNKNOWN = 127       'ԕs

'WuIʒm
Global Const JMSS_SEND_NO = 0               'ʒmȂ
Global Const JMSS_SEND_YES = 1              'ʒm

'Wu
Global Const JMSS_CONTROL_TERMINATE = 0     'I
Global Const JMSS_CONTROL_SUSPEND = 1       'ꎞ~
Global Const JMSS_CONTROL_RESUME = 2        'ĊJ
Global Const JMSS_CONTROL_HOLD = 4          'ۗ
Global Const JMSS_CONTROL_RELEASE = 5       'ۗ
Global Const JMSS_CONTROL_DELETE = 6        'o^폜
Global Const JMSS_CONTROL_STOP = 7          '~
Global Const JMSS_CONTROL_CONTINUE = 8      'p

'₢킹hWȕ
Global Const JMSS_CONTROL_END = &H1         'IhWu
Global Const JMSS_CONTROL_RUN = &H10        's̔hWu
Global Const JMSS_CONTROL_QUE = &H100       's҂(N܂)̔hWu
Global Const JMSS_CONTROL_ENDRUN = &H11     'sI̔hWu
Global Const JMSS_CONTROL_QUEEND = &H101    's҂IhWu
Global Const JMSS_CONTROL_QUERUN = &H110    's҂s̔hWu
Global Const JMSS_CONTROL_ALL = &H111       'SĂ̏Ԃ̔hWu

'A[g[h
Global Const JMSS_JALT_MODE_MANAGER = &H10000   '}l[Wɒʕ
Global Const JMSS_JALT_MODE_PAGER = &H20000     'y[Wɒʕ

'A[g^Cv
Global Const JMSS_JALT_TYPE_INFORMATION = 0     '
Global Const JMSS_JALT_TYPE_WARNING = 1         'x
Global Const JMSS_JALT_TYPE_ERROR = 2           'G[

'WuL[̏
Global Const JMSS_JOBQUECOND_OPEN = 0           'J
Global Const JMSS_JOBQUECOND_CLOSE = 1          '

'WuL[o^
Global Const JMSS_JOBQUEENTSTS_NORMAL = 0       'o^\Wu90%ȉ
Global Const JMSS_JOBQUEENTSTS_WARNING = 1      'o^\Wu90%𒴂
Global Const JMSS_JOBQUEENTSTS_ERROR = 2        'o^\WuɒBĂ

'WuN
Global Const JMSS_EXECTYPE_NO = 0       'wȂ
Global Const JMSS_EXECTYPE_SERVICE = 1  'T[rXAJEgŋN
Global Const JMSS_EXECTYPE_LOGON = 2     'OI[UAJEgŋN

'Wu\
Public Type JMSSJOBTHROWINFO
    dwSize As Long                  '̍\̂̃TCY(K1120ݒ)
    dwPriority As Long              'WuD揇
    fWatchStdout As Long            'Wo͂̊ĎtO(1:, 0:Ȃ)
    hStdin As Long                  'gp(0w肷)
    hStdout As Long                 'gp(0w肷)
    hStderr As Long                 'gp(0w肷)
    caQueueName As String * 16      'L[
    caJobName As String * 33        'WűƖ
    caJobPath As String * 257       'Wũt@C
    caJobParam As String * 257      'Wũp[^
    caExecDir As String * 257       'sfBNg
    dwRepeatLastCount As Long       '0
    dwMaxElapseTime As Long         'soߎԃ^CAEg
    dwMaxWorkingSetSize As Long     '0
    dwTermReport As Long            'WuIʒm
    caStdoutFile As String * 257    'Wo͓eۑt@C
End Type

'Wu\Ex
Public Type JMSSJOBTHROWINFOEX
    dwSize As Long                  '̍\̂̃TCY(K1128ݒ)
    dwPriority As Long              'WuD揇
    fWatchStdout As Long            'Wo͂̊ĎtO(1:, 0:Ȃ)
    hStdin As Long                  'gp(0w肷)
    hStdout As Long                 'gp(0w肷)
    hStderr As Long                 'gp(0w肷)
    caQueueName As String * 16      'L[
    caJobName As String * 33        'WűƖ
    caJobPath As String * 257       'Wũt@C
    caJobParam As String * 257      'Wũp[^
    caExecDir As String * 257       'sfBNg
    dwRepeatLastCount As Long       '0
    dwMaxElapseTime As Long         'soߎԃ^CAEg
    wExecType As Integer            'WuN
        wReserve As Integer         '\
        dwReserve As Long           '\
    dwMaxWorkingSetSize As Long     '0
    dwTermReport As Long            'WuIʒm
    caStdoutFile As String * 257    'Wo͓eۑt@C
End Type

'Wu\
Public Type JMSSJOBINFO
    dwSize As Long                  '̍\̂̃TCY(K1264ݒ)
    dwJobType As Long               'Wu̎
    dwNetId As Long                 'Wu{bNXID
    dwNetRev As Long                'Wulbgt@CRevision
    dwSecondaryId As Long           'hWuL薳ID
    lJobNo As Long                  'Wuԍ
    lRootJobNo As Long              '̃WuROOTWuԍ(0Ȃ炱̃WuROOTWu)
    lParentJobNo As Long            '̃Wu̐eWuԍ(0Ȃ炱̃WuROOTWu)
    dwExitCode As Long              'WuIR[h(I/NG[ȊÔƂ0)
    dwJobStatus As Long             'Wus
    dwPriority As Long              'WuD揇
    dwMinWorkingSet As Long         'ŏ[LOZbgTCY
    dwMaxWorkingSet As Long         'ő像[LOZbgTCY
    dwUserCPUTime As Long           '[U[hCPUgp(~b)
    dwKernelCPUTime As Long         'J[l[hCPUgp(~b)
    dwTotalCPUTime As Long          'S[hCPUgp(~b)
    dwUserCPUPercent As Long        '[U[hCPUgp(%)
    dwKernelCPUPercent As Long      'J[l[hCPUgp(%)
    tBgn As Long                    'WuJn
    tEnd As Long                    'WuI
    dwRepeatInterval As Long        'JԂԊu(JԂsłȂƂ0)
    dwRepeatMaxCount As Long        'JԂ(0ȂwȂ)
    tEndTime As Long                'JԂsI(0ȂwȂ)
    dwRepeatCount As Long           'JԂs(WuÎݐݒ)
    caEventID As String * 5         'CxgID(MAX4+'\0')
    caUserName As String * 41       '[U(MAX40+'\0')
    caWsName As String * 16         '}V(MAX15+'\0')
    caQueueName As String * 16      'L[(MAX15+'\0')
    caCompName As String * 16       's}V(MAX15+'\0')
    caJobName As String * 33        'Ɩ(MAX32+'\0')
    caJobPath As String * 257       'Wũt@C(MAX256+'\0')
    caJobParam As String * 257      'p[^(MAX256+'\0')
    caExecDir As String * 257       'sfBNg(MAX256+'\0')
    caOutFileName As String * 257   'Wo̓t@C(tpX)(MAX256+'\0')
    dwMaxElapsTime As Long          'soߎԃ^CAEg()
    dwParentJntNo As Long           'pšƂȂWulbg̃Wuԍ
    dwBranch As Long                'gp
End Type

'Wu\
Public Type JMSSJOBINFOEX
    dwSize As Long                  '̍\̂̃TCY(K1264ݒ)
    dwJobType As Long               'Wu̎
    dwNetId As Long                 'Wu{bNXID
    dwNetRev As Long                'Wulbgt@CRevision
    dwSecondaryId As Long           'hWuL薳ID
    lJobNo As Long                  'Wuԍ
    lRootJobNo As Long              '̃WuROOTWuԍ(0Ȃ炱̃WuROOTWu)
    lParentJobNo As Long            '̃Wu̐eWuԍ(0Ȃ炱̃WuROOTWu)
    dwExitCode As Long              'WuIR[h(I/NG[ȊÔƂ0)
    dwJobStatus As Long             'Wus
    dwPriority As Long              'WuD揇
    dwMinWorkingSet As Long         'ŏ[LOZbgTCY
    dwMaxWorkingSet As Long         'ő像[LOZbgTCY
    dwUserCPUTime As Long           '[U[hCPUgp(~b)
    dwKernelCPUTime As Long         'J[l[hCPUgp(~b)
    dwTotalCPUTime As Long          'S[hCPUgp(~b)
    dwUserCPUPercent As Long        '[U[hCPUgp(%)
    dwKernelCPUPercent As Long      'J[l[hCPUgp(%)
    tBgn As Long                    'WuJn
    tEnd As Long                    'WuI
    dwRepeatInterval As Long        'JԂԊu(JԂsłȂƂ0)
    dwRepeatMaxCount As Long        'JԂ(0ȂwȂ)
    tEndTime As Long                'JԂsI(0ȂwȂ)
    dwRepeatCount As Long           'JԂs(WuÎݐݒ)
    caEventID As String * 5         'CxgID(MAX4+'\0')
    caUserName As String * 41       '[U(MAX40+'\0')
    caWsName As String * 16         '}V(MAX15+'\0')
    caQueueName As String * 16      'L[(MAX15+'\0')
    caCompName As String * 16       's}V(MAX15+'\0')
    caJobName As String * 33        'Ɩ(MAX32+'\0')
    caJobPath As String * 257       'Wũt@C(MAX256+'\0')
    caJobParam As String * 257      'p[^(MAX256+'\0')
    caExecDir As String * 257       'sfBNg(MAX256+'\0')
    caOutFileName As String * 257   'Wo̓t@C(tpX)(MAX256+'\0')
    dwMaxElapsTime As Long          'soߎԃ^CAEg()
    wExecType As Integer            'WuN
        wReserve As Integer         '\
        dwReserve As Long           '\
    dwParentJntNo As Long           'pšƂȂWulbg̃Wuԍ
    dwBranch As Long                'gp
End Type

'WuL[\
Public Type JMSSJOBQINFO
    dwSize As Long                  '̍\̂̃TCY(K44ݒ)
    caQueueName As String * 16      'WuL[
    dwJobQueCondition As Long       'WuL[̏
    dwMaxRunningJob As Long         'őWuL[dx
    dwCurRunningJob As Long         'ݎsWu
    dwMaxEntryJob As Long           'őo^Wu
    dwCurrentEntryJob As Long       'ݓo^ς݂̃Wu
    dwEntryStatus As Long           'o^
End Type

'֐錾
Declare Function JmssThrowJob Lib "JAPI" (ByVal lpcaServerName As String, ByRef lpJmssJobThrowInfo As JMSSJOBTHROWINFO, ByRef lplJobNo As Long) As Long
Declare Function JmssThrowJobEx Lib "JAPI" (ByVal lpcaServerName As String, ByRef lpJmssJobThrowInfoEx As JMSSJOBTHROWINFOEX, ByRef lplJobNo As Long) As Long
Declare Function JmssWaitJobExit Lib "JAPI" (ByVal lpcaServerName As String, ByVal lJobNo As Long, ByRef lpJmssJobInfo As Any, ByVal dwTimeOut As Long) As Long
Declare Function JmssGetJobStatus Lib "JAPI" (ByVal lpcaServerName As String, ByVal lJobNo As Long, ByRef lpJmssJobInfo As JMSSJOBINFO) As Long
Declare Function JmssGetJobStatusEx Lib "JAPI" (ByVal lpcaServerName As String, ByVal lJobNo As Long, ByRef lpJmssJobInfo As JMSSJOBINFOEX) As Long
Declare Function JmssControlJob Lib "JAPI" (ByVal lpcaServerName As String, ByVal dwControlMode As Long, ByVal lJobNo As Long) As Long
Declare Function JmssGetChildJobList Lib "JAPI" (ByVal lpcaServerName As String, ByVal lJobNo As Long, ByVal dwQueryJobStatus As Long, ByRef lpdwJobCOunt As Long, ByRef lpJobNoList As Any) As Long
Declare Function JmssCurrentJobNo Lib "JAPI" (ByVal lpcaServerName As String, ByRef lplJobNo As Long) As Long
Declare Function JmssSendEvent Lib "JAPI" (ByVal lpcaServerName As String, ByVal lpcaQueueName As String, ByVal lpcaEventID As String, ByVal lpcaMessage As String) As Long
Declare Function JmssSendEventEx Lib "JAPI" (ByVal lpcaServerName As String, ByVal lpcaQueueName As String, ByVal lpcaEventID As String, ByVal lpcaMessage As String, ByVal lpcaParam As String) As Long
Declare Function JmssReceiveEvent Lib "JAPI" (ByVal lpcaEventID As String, ByVal lpcaServerName As String, ByVal lpcaMachineName As String, ByVal lpcaUserName As String, ByVal lpcaMessage As String, ByVal lpcaReceiveEventID As String, ByVal dwTimeOut As Long) As Long
Declare Function JmssDispQueueDialog Lib "JAPI" (ByVal lpcaServerName As String, ByVal hwndUwner As Long, ByVal lpcaQueueName As String, ByVal lpcaMessageTitle As String) As Long
Declare Function JmssGetJobQueue Lib "JAPI" (ByVal lpcaServerName As String, ByVal lpcaQueueName As String, ByRef lpJmssJobQInfo As JMSSJOBQINFO) As Long
Declare Function JmssReportEvent Lib "JAPI" (ByVal dwMode As Long, ByVal dwType As Long, ByVal lpcaMessage As String) As Long
Declare Sub JmssSetErrorLevel Lib "JAPI" (ByVal dwErrorLevel As Long)
