mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-02-06 23:14:58 +00:00
Create msmq.js
This commit is contained in:
parent
68a5e66a4b
commit
5aae8b621f
47
lib/msmq.js
Normal file
47
lib/msmq.js
Normal file
|
@ -0,0 +1,47 @@
|
|||
////////////////////////////////////////////////////////////////////////
|
||||
// MSMQ(Microsoft Message Queuing) API
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var MSMQObject = function(queueName) {
|
||||
var MQ_SEND_ACCESS = 2;
|
||||
var MQ_DENY_NONE = 0;
|
||||
var MQ_RECEIVE_ACCESS = 1;
|
||||
|
||||
var MQ_NO_TRANSACTION = 0;
|
||||
var MQ_MTS_TRANSACTION = 1;
|
||||
var MQ_SINGLE_MESSAGE = 3;
|
||||
|
||||
this.machineName = "localhost";
|
||||
this.queueName = queueName;
|
||||
|
||||
this.queueInfo = null;
|
||||
this.queue = null;
|
||||
|
||||
this.create = function() {
|
||||
try {
|
||||
this.queueInfo = CreateObject("MSMQ.MSMQQueueInfo");
|
||||
this.queueInfo.PathName = ".\\private$\\" + this.queueName;
|
||||
} catch (e) {
|
||||
console.error("MSMQObject.create() ->", e.message);
|
||||
}
|
||||
}
|
||||
|
||||
this.open = function() {
|
||||
this.queue = this.queueInfo.Open(MQ_SEND_ACCESS, MQ_DENY_NONE);
|
||||
}
|
||||
|
||||
// For example: .send("Sample Body", "LabelXX");
|
||||
this.send = function(body, label) {
|
||||
var mqmsg = CreateObject("MSMQ.MSMQMessage");
|
||||
mqmsg.Body = body
|
||||
mqmsg.Label = label
|
||||
mqmsg.Send(this.queue);
|
||||
mqmsg = null;
|
||||
};
|
||||
|
||||
this.recv = function() {
|
||||
return this.queue.Receive(MQ_NO_TRANSACTION, false, true, 20000, false);
|
||||
};
|
||||
|
||||
this.create();
|
||||
};
|
Loading…
Reference in New Issue
Block a user