C-C++ Kode Eksempel: Åpne En Privat Kø Ved hjelp Av En Datamaskin Identifikator Og Kønummer

  • 10/19/2016
  • 3 minutter å lese

Gjelder For: Windows 10, Windows 7, Windows 8, Windows 8.1, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server Technical Preview,Windows Vista

dette eksemplet inneholder en programdefinert funksjon som åpner en privat kø basert på den lokale datamaskinen ved hjelp av datamaskinidentifikatoren og et kønummer fra den som ringer.

den som ringer, kan hente kønummeret fra navnene På LQSfiles som er lagret i lqs-mappen (lqs-mappen opprettes når MSMQ er installert) på datamaskinen. Kønummeret er den første delen av navnet på hver fil.

følgende fremgangsmåte viser hvordan funksjonen åpner køen basert på informasjonen fra den som ringer.

slik åpner du en kø ved hjelp av en datamaskinidentifikator og kønummer

  1. Definer maksimalt antall egenskaper som skal angis, egenskapsteller og mqqmprops-strukturen. I dette eksemplet er egenskapen computer identifier den eneste egenskapen som er angitt.

  2. Angi EGENSKAPEN PROPID_QM_MACHINE_ID computer

  3. Initialiser mqqmprops-strukturen.

  4. Ring MQGetMachineProperties for å hente GLOBALT unik identifikator (GUID) på datamaskinen. Følgende kodeeksempel henter GUID for den lokale datamaskinen.

  5. Konstruer et privat formatnavn for køen ved hjelp av datamaskinguiden som returneres Av MQGetMachineProperties og det angitte kønummeret. (Dette eksemplet bruker rpc-funksjonen UuidToString til å konstruere formatet for den private køen.)

    syntaksen til det private formatnavnet er vist nedenfor:

    "PRIVATE=ComputerGUID\QueueNumber" 
  6. bruk det konstruerte formatnavnet og tilgangs-og delingsmodusene som er gitt i samtalen, ring MQOpenQueue for å åpne køen.

Kodeeksempel

bibliotek-og topptekstfilene som kreves for rpc-anropene som utføres av denne funksjonen, er rpcrt4.lib og rpc.h, henholdsvis. Denne funksjonen inneholder ingen versjonsspesifikke Message Queuing-anrop.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.