MessageQueueErrorCode 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
識別在訊息佇列應用程式內發生的錯誤來源,並產生 MessageQueueException 例外狀況。
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。
public enum class MessageQueueErrorCode
public enum MessageQueueErrorCode
type MessageQueueErrorCode =
Public Enum MessageQueueErrorCode
- 繼承
欄位
AccessDenied | -1072824283 | 訊息文字:拒絕存取。拒絕存取指定的佇列或電腦。 如果傳回此錯誤,請確認您具有作業的存取權限,例如建立、刪除或設定佇列的屬性。 如需變更佇列存取權限的資訊,請參閱 MessageQueueAccessRights 和 SetPermissions。 |
BadSecurityContext | -1072824267 | 訊息文字:不正確的安全性內容。 |
Base | -1072824320 | Message Queuing 不會傳回這個錯誤碼。 |
BufferOverflow | -1072824294 | 訊息文字:提供給 MQReceiveMessage 之用於擷取訊息主體的緩衝區太小。 訊息未從佇列中移除,且已複製適合此緩衝區的部分訊息主體。 |
CannotCreateCertificateStore | -1072824209 | 訊息文字:無法建立內部憑證的憑證存放區。 |
CannotCreateHashEx | -1072824191 | 訊息文字:無法建立已驗證訊息的雜湊物件。 |
CannotCreateOnGlobalCatalog | -1072824201 | 訊息文字:無法建立指定通用類別伺服器上的物件。 |
CannotGetDistinguishedName | -1072824194 | 訊息文字:無法擷取本機電腦的辨別名稱。 |
CannotGrantAddGuid | -1072824206 | 訊息文字:無法授與「加入 Guid」使用權限給目前的使用者。 |
CannotHashDataEx | -1072824193 | 訊息文字:無法雜湊已驗證訊息的資料。 |
CannotImpersonateClient | -1072824284 | 訊息文字:RPC 伺服器無法模擬用戶端應用程式,因此無法驗證安全認證。 |
CannotJoinDomain | -1072824202 | 訊息文字:無法在 Windows 2000 網域上聯結訊息佇列企業版。 |
CannotLoadMsmqOcm | -1072824205 | 訊息文字:無法載入 MSMQOCM.DLL 程式庫。 |
CannotOpenCertificateStore | -1072824208 | 訊息文字:無法開啟內部憑證的憑證存放區。 |
CannotSetCryptographicSecurityDescriptor | -1072824212 | 訊息文字:無法設定密碼編譯金鑰的安全性描述元 (Security Descriptor)。 |
CannotSignDataEx | -1072824192 | 訊息文字:無法在傳送已驗證訊息之前簽署資料。 |
CertificateNotProvided | -1072824211 | 訊息文字:使用者嘗試不使用憑證傳送已經驗證的訊息。 |
ComputerDoesNotSupportEncryption | -1072824269 | 訊息文字:電腦不支援加密作業。 |
CorruptedInternalCertificate | -1072824275 | 訊息文字:內部訊息佇列憑證已經損毀。 |
CorruptedPersonalCertStore | -1072824271 | 訊息文字:個人憑證存放區已經損毀。 |
CorruptedQueueWasDeleted | -1072824216 | 訊息文字:因為 .ini 檔已損毀,所以已經刪除 LQS 中佇列的 .ini 檔。 |
CorruptedSecurityData | -1072824272 | 訊息文字:加密函式已經失敗。 |
CouldNotGetAccountInfo | -1072824265 | 訊息文字:無法擷取使用者帳戶資訊。 |
CouldNotGetUserSid | -1072824266 | 訊息文字:無法從執行緒語彙基元擷取 SID 資訊。 |
DeleteConnectedNetworkInUse | -1072824248 | 訊息文字:無法刪除連線網路;它正在使用中。 |
DependentClientLicenseOverflow | -1072824217 | 訊息文字:已經到達這個訊息佇列伺服器可以服務的相依用戶端數目上限。 |
DsError | -1072824253 | 訊息文字:內部目錄服務錯誤。 |
DsIsFull | -1072824254 | 訊息文字:目錄服務已滿。 |
DtcConnect | -1072824244 | 訊息文字:無法連接至 MS DTC。 |
EncryptionProviderNotSupported | -1072824213 | 訊息文字:訊息佇列不支援密碼編譯服務提供者。 |
FailVerifySignatureEx | -1072824190 | 訊息文字:已接收訊息的簽章無效。 |
FormatNameBufferTooSmall | -1072824289 | 訊息文字:提供給 API 的格式名稱緩衝區太小,無法容納格式名稱。 |
Generic | -1072824319 | 訊息文字:泛用錯誤。 |
GuidNotMatching | -1072824200 | 訊息文字:無法使用符合電腦安裝的 GUID 來建立訊息佇列組態物件。 您必須先解除安裝訊息佇列,然後再重新安裝。 |
IllegalContext | -1072824229 | 訊息文字:無效的內容參數。 |
IllegalCriteriaColumns | -1072824264 | 訊息文字:無效的 MQCOLUMNS 參數。 |
IllegalCursorAction | -1072824292 | 訊息文字:指定給 MQReceiveMessage 的 MQ_ACTION_PEEK_NEXT 無法在目前的游標位置使用。 |
IllegalEnterpriseOperation | -1072824207 | 訊息文字:訊息佇列服務物件的作業無效。 |
IllegalFormatName | -1072824290 | 訊息文字:指定的格式名稱無效。 如需有效的格式名稱語法選項,請參閱 MessageQueue 類別的 FormatName 屬性。 |
IllegalMessageProperties | -1072824255 | 訊息文字:不合法的 MQQMPROPS 參數,它是 null 或擁有零個屬性。 |
IllegalOperation | -1072824220 | 訊息文字:外部訊息佇列系統上的作業無效。 |
IllegalPrivateProperties | -1072824197 | 私用屬性參數值無效。 這可能是因為其具有 null 值或已指定零個屬性。 |
IllegalPropertyId | -1072824263 | 訊息文字:無效的屬性識別項值。 |
IllegalPropertySize | -1072824261 | 訊息文字:不合法的屬性緩衝區大小。 |
IllegalPropertyValue | -1072824296 | 訊息文字:無效的屬性值。 |
IllegalPropertyVt | -1072824295 | 訊息文字:無效的 VARTYPE 值。 |
IllegalQueuePathName | -1072824300 | 訊息文字:無效的佇列路徑名稱。 |
IllegalQueueProperties | -1072824259 | 訊息文字:不合法的 MQQUEUEPROPS 參數,它是 null 或擁有零個屬性。 |
IllegalRelation | -1072824262 | 訊息文字:限制中的關聯值無效。 |
IllegalRestrictionPropertyId | -1072824260 | 訊息文字:MQRESTRICTION 參數中的 propid 值無效。 |
IllegalSecurityDescriptor | -1072824287 | 訊息文字:指定的安全性描述元不是有效的安全性描述元 (Security Descriptor)。 |
IllegalSort | -1072824304 | 訊息文字:指定的排序不合法 (例如,重複的資料行)。 |
IllegalSortPropertyId | -1072824228 | 訊息文字:MQSORTSET 中的 propid 值無效。 |
IllegalUser | -1072824303 | 訊息文字:使用者的使用者名稱無效。 |
InsufficientProperties | -1072824257 | 訊息文字:輸入參數中沒有指定作業需要的所有屬性。 |
InsufficientResources | -1072824281 | 訊息文字:沒有足夠的資源執行作業。 |
InvalidCertificate | -1072824276 | 訊息文字:使用者憑證無效。 |
InvalidHandle | -1072824313 | 訊息文字:傳遞至函式的控制代碼無效。 |
InvalidOwner | -1072824252 | 訊息文字:物件擁有人無效。 例如,因為佇列管理員物件無效,所以 |
InvalidParameter | -1072824314 | 訊息文字:傳遞至函式的參數無效。 |
IOTimeout | -1072824293 | 訊息文字:接收或窺視 (Peek) 訊息逾時已過期。 |
LabelBufferTooSmall | -1072824226 | 訊息文字:提供給 API 的標籤緩衝區太小。 |
MachineExists | -1072824256 | 訊息文字:網站上已經存在使用相同名稱的電腦。 |
MachineNotFound | -1072824307 | 訊息文字:找不到指定的電腦。 |
MessageAlreadyReceived | -1072824291 | 訊息文字:游標目前指向的訊息已經被另一個處理或另一個呼叫從佇列移除以接收訊息而不使用此游標。 |
MessageNotFound | -1072824184 | 訊息文字:找不到指定的訊息。 |
MessageStorageFailed | -1072824278 | 訊息文字:無法儲存可復原訊息或日誌訊息。 沒有傳送對應的訊息。 |
MissingConnectorType | -1072824235 | 訊息文字:當傳送通知或安全訊息時,必須有連接子型別。 |
MqisReadOnlyMode | -1072824224 | 訊息文字:MQIS 資料庫是唯讀模式。 |
MqisServerEmpty | -1072824225 | 訊息文字:MQIS 伺服器 (登錄) 的清單是空的。 此錯誤僅適用於 Message Queuing 1.0。 |
NoDs | -1072824301 | 訊息文字:無法與這個站台的控制站建立連接。 |
NoEntryPointMsmqOcm | -1072824204 | 訊息文字:找不到 MSMQOCM.DLL 程式庫中的進入點。 |
NoGlobalCatalogInDomain | -1072824196 | 訊息文字:在指定的網域中找不到通用類別伺服器。 |
NoInternalUserCertificate | -1072824273 | 訊息文字:使用者的內部訊息佇列憑證不存在。 |
NoMsmqServersOnDc | -1072824203 | 訊息文字:在網域控制器上找不到訊息佇列伺服器。 |
NoMsmqServersOnGlobalCatalog | -1072824195 | 訊息文字:在通用類別網域控制器上找不到訊息佇列伺服器。 |
NoResponseFromObjectServer | -1072824247 | 訊息文字:物件擁有人沒有回應。 |
ObjectServerNotAvailable | -1072824246 | 訊息文字:無法到達物件擁有人。 |
OperationCanceled | -1072824312 | 訊息文字:作業完成之前已被取消。 |
PrivilegeNotHeld | -1072824282 | 訊息文字:用戶端沒有執行作業所需的權限。 |
Property | -1072824318 | 訊息文字:一或多個傳遞屬性無效。 |
PropertyNotAllowed | -1072824258 | 訊息文字:要求的作業屬性無效。 |
ProviderNameBufferTooSmall | -1072824221 | 訊息文字:用於提供者名稱屬性的傳遞緩衝區太小。 |
PublicKeyDoesNotExist | -1072824198 | 訊息文字:電腦的公開金鑰不存在。 |
PublicKeyNotFound | -1072824199 | 訊息文字:找不到電腦的公開金鑰。 |
QDnsPropertyNotSupported | -1072824210 | 不支援 DNS 屬性做為尋找佇列的準則。 |
QueueDeleted | -1072824230 | 訊息文字:佇列已經被刪除。 將無法再使用這個佇列執行個體來接收訊息。 必須關閉佇列。 |
QueueExists | -1072824315 | 訊息文字:相同路徑名稱的佇列已經註冊。 |
QueueNotAvailable | -1072824245 | 訊息文字:當從位於遠端電腦的佇列讀取時發生錯誤。 |
QueueNotFound | -1072824317 | 訊息文字:佇列未在目錄服務中註冊。 |
RemoteMachineNotAvailable | -1072824215 | 訊息文字:無法連接遠端電腦。 |
ResultBufferTooSmall | -1072824250 | 訊息文字:提供的結果緩衝區太小。 |
SecurityDescriptorBufferTooSmall | -1072824285 | 訊息文字:傳遞給 |
SenderCertificateBufferTooSmall | -1072824277 | 訊息文字:用於使用者憑證屬性的傳遞緩衝區太小。 |
SenderIdBufferTooSmall | -1072824286 | 訊息文字:用於使用者識別項屬性的傳遞緩衝區太小。 |
ServiceNotAvailable | -1072824309 | 訊息文字:無法取得訊息佇列服務。 |
SharingViolation | -1072824311 | 訊息文字:共用違規。 因為獨佔式接收已經開啟佇列。 |
SignatureBufferTooSmall | -1072824222 | 訊息文字:用於簽章屬性的傳遞緩衝區太小。 |
StaleHandle | -1072824234 | 訊息文字:已重新啟動佇列管理員服務。 佇列控制代碼已過時,應當關閉。 |
SymmetricKeyBufferTooSmall | -1072824223 | 訊息文字:用於對稱金鑰屬性的傳遞緩衝區太小。 |
TransactionEnlist | -1072824232 | 訊息文字:無法登記交易。 |
TransactionImport | -1072824242 | 訊息文字:無法匯入交易。 |
TransactionSequence | -1072824239 | 訊息文字:交易作業順序錯誤。 |
TransactionUsage | -1072824240 | 訊息文字:交易用法錯誤。 |
UnsupportedAccessMode | -1072824251 | 訊息文字:不支援指定的存取模式。 |
UnsupportedFormatNameOperation | -1072824288 | 訊息文字:指定的格式名稱不支援所要求的作業。 |
UnsupportedOperation | -1072824214 | 訊息文字:工作群組安裝電腦不支援此作業。 |
UserBufferTooSmall | -1072824280 | 訊息文字:請求失敗,因為使用者緩衝區太小,無法存放傳回的資訊。 |
WksCantServeClient | -1072824218 | 訊息文字:訊息佇列獨立用戶端不能服務訊息佇列相依用戶端。 |
WriteNotAllowed | -1072824219 | 訊息文字:因為正在安裝另一個 MQIS 伺服器,資料庫目前不允許進行寫入作業。 |
範例
下列範例會驗證消息佇列佇列是否存在,然後刪除佇列。
#using <system.dll>
#using <system.messaging.dll>
using namespace System;
using namespace System::Messaging;
int main()
{
// Determine whether the queue exists.
if ( MessageQueue::Exists( ".\\myQueue" ) )
{
try
{
// Delete the queue.
MessageQueue::Delete( ".\\myQueue" );
}
catch ( MessageQueueException^ e )
{
if ( e->MessageQueueErrorCode == MessageQueueErrorCode::AccessDenied )
{
Console::WriteLine( "Access is denied. Queue might be a system queue." );
}
// Handle other sources of MessageQueueException.
}
}
return 0;
}
using System;
using System.Messaging;
namespace MyProject
{
/// <summary>
/// Provides a container class for the example.
/// </summary>
public class MyNewQueue
{
//**************************************************
// Provides an entry point into the application.
//
// This example verifies existence and attempts to
// delete a queue.
//**************************************************
public static void Main()
{
// Determine whether the queue exists.
if (MessageQueue.Exists(".\\myQueue"))
{
try
{
// Delete the queue.
MessageQueue.Delete(".\\myQueue");
}
catch(MessageQueueException e)
{
if(e.MessageQueueErrorCode ==
MessageQueueErrorCode.AccessDenied)
{
Console.WriteLine("Access is denied. " +
"Queue might be a system queue.");
}
// Handle other sources of MessageQueueException.
}
}
return;
}
}
}
Imports System.Messaging
Public Class MyNewQueue
' Provides an entry point into the application.
'
' This example verifies existence and attempts to
' delete a queue.
Public Shared Sub Main()
' Determine whether the queue exists.
If MessageQueue.Exists(".\myQueue") Then
Try
' Delete the queue.
MessageQueue.Delete(".\myQueue")
Catch e As MessageQueueException
If e.MessageQueueErrorCode = _
MessageQueueErrorCode.AccessDenied Then
Console.WriteLine("Access is denied. " _
+ "Queue might be a system queue.")
End If
' Handle other sources of exceptions as necessary.
End Try
End If
Return
End Sub
End Class
備註
列舉 MessageQueueErrorCode
提供傳訊作業期間錯誤狀況的詳細資訊。
使用 MessageQueueExceptionMessageQueueErrorCode 屬性來識別消息佇列錯誤的本質。 值 MessageQueueErrorCode
會決定要與錯誤產生關聯的文字字串。