विजुअल बेसिक में एक म्युटेक्स का उपयोग कैसे करें

वोट
21

मैं आयात किया है kernel32पुस्तकालय। तो, मैं createMutexसमारोह उपलब्ध है, लेकिन मैं विभिन्न मापदंडों और बदले मूल्यों के काफी यकीन नहीं कर रहा हूँ।

इस क्लासिक विजुअल बेसिक, नहीं दृश्य Basic.NET है, लेकिन मैं शायद एक जवाब के रूप में किसी भी भाषा के साथ काम कर सकते हैं।

04/08/2008 को 02:22
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


3 जवाब

वोट
9

यहाँ के लिए VB6 घोषणाओं है CreateMutex - मैं सिर्फ उन्हें API व्यूअर, जो आप अपने VB6 स्थापना के भाग के रूप होना चाहिए से नकल। VB6 marshalls तार वर्तमान कोड पृष्ठ का उपयोग कर अशक्त-समाप्त करने के लिए एएनएसआई।

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

ध्यान रखें कि यदि आप VB6 आईडीई से एक म्युटेक्स बनाने के लिए, म्युटेक्स आईडीई के अंतर्गत आता है और नष्ट नहीं किया जाएगा जब आप अपने कार्यक्रम चलना बंद - केवल जब तुम आईडीई बंद कर दें।

17/09/2008 को 13:01
का स्रोत उपयोगकर्ता

वोट
7

VB कोड इस तरह दिखता है:

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

पहले पैरामीटर एक करने के लिए एक सूचक है SECURITY_ATTRIBUTESसंरचना। आप नहीं जानते कि यह क्या है, आप इसे ज़रूरत नहीं है। दर्रा शून्य (0)।

दूसरा पैरामीटर है TRUE(गैर शून्य, या 1) यदि बुला धागा म्युटेक्स का स्वामित्व लेने चाहिए। FALSEअन्यथा।

तीसरे पैरामीटर म्युटेक्स नाम है और दिखाया गया है, शून्य (0) हो सकता है। यदि आप एक नामित म्युटेक्स की जरूरत है, में नाम (कुछ भी अद्वितीय) क्या गुजरती हैं। सुनिश्चित नहीं हैं कि VBआवरण मार्शलों लंबाई-उपसर्ग के VBस्ट्रिंग प्रकार ( BSTRएक अशक्त-समाप्त ASCII / यूनिकोड स्ट्रिंग के लिए) से अधिक नहीं तो, आप ऐसा करने की आवश्यकता होगी और कई उदाहरण वहाँ बाहर हैं।

सौभाग्य!

04/08/2008 को 05:58
का स्रोत उपयोगकर्ता

वोट
2

ठीक है, के आधार पर प्रलेखन यह दिखाई देता है:

  1. सुरक्षा विशेषताओं (शून्य पारित कर सकते हैं)
  2. चाहे वह शुरू में स्वामी (गलत पारित कर सकते हैं)
  3. उसका नाम

HTH

04/08/2008 को 05:48
का स्रोत उपयोगकर्ता

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