Hogyan kell használni mutexek Visual Basic

szavazat
21

Én importált a kernel32könyvtárban. Szóval van a createMutexfunkció elérhető, de nem vagyok egészen biztos a különböző paraméterek és visszatérési értékek.

Ez a klasszikus Visual Basic, Visual nem Basic.NET de valószínűleg működni fog vagy nyelv formájában választ.

A kérdést 04/08/2008 02:22
a forrás felhasználó
Más nyelveken...                            


3 válasz

szavazat
9

Itt a VB6 nyilatkozatok CreateMutex - Csak másolja őket az API nézőt, ami ugye kell részeként a VB6 telepítést. VB6 sportbírók húrok NULL-lezárt ANSI az aktuális kódlap.

Public Type SECURITY_ATTRIBUTES
   nLength As Long
   lpSecurityDescriptor As Long
   bInheritHandle As Long 
End Type

Public Declare Function CreateMutex Lib "kernel32" Alias "CreateMutexA" _
   (lpMutexAttributes As SECURITY_ATTRIBUTES, ByVal bInitialOwner As Long, _
    ByVal lpName As String) As Long

Tartsuk szem előtt, hogy ha létrehoz egy mutex a VB6 IDE, a mutex tartozik az IDE és nem kell semmisíteni, ha leállnak a programot - csak akkor, ha bezárja az IDE.

Válaszolt 17/09/2008 13:01
a forrás felhasználó

szavazat
7

A VB-kód így néz ki:

hMutex = CreateMutex(ByVal 0&, 1, ByVal 0&)

Az első paraméter egy mutató egy SECURITY_ATTRIBUTESszerkezetet. Ha nem tudom, mi ez, akkor nincs rá szükség. Pass NULL (0).

A második paraméter TRUE(nem nulla, vagy 1), ha a hívó szálat is felelősséget kell vállalniuk a mutex. FALSEmásképp.

A harmadik paraméter a mutexet neve és lehet NULL (0), az ábrán látható módon. Ha szüksége van egy nevű mutexet, add meg a nevét (bármi egyedi). Nem biztos, hogy a VBborítás sportbírók hossza-előtaggal VBstring típusú ( BSTR) át egy null-terminált ASCII / Unicode karakterlánc, ha nem, akkor meg kell tennie, hogy és számos példa van odakint.

Sok szerencsét!

Válaszolt 04/08/2008 05:58
a forrás felhasználó

szavazat
2

Nos alapuló dokumentációt úgy néz ki:

  1. Biztonsági tulajdonságok (átadhatók null)
  2. Mindegy, hogy kezdetben tulajdonosa (átadhatók hamis)
  3. A neve azt

HTH

Válaszolt 04/08/2008 05:48
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more