विजुअल बेसिक (क्लासिक)

मूल विज़ुअल बेसिक (जिसे क्लासिक विज़ुअल बेसिक भी कहा जाता है) एक माइक्रोसॉफ्ट की तीसरी पीढ़ी की इवेंट-संचालित प्रोग्रामिंग भाषा है | जो अपने घटक वस्तु मॉडल (कॉम) प्रोग्रामिंग मॉडल के लिए जानी जाती है, जिसे पहली बार 1991 में संचालित किया गया था और 2008 के दौरान विरासती तंत्र घोषित किया गया था। विज़ुअल बेसिक को सीखना और उपयोग करना अपेक्षाकृत आसान बनाना था।  विजुअल बेसिक बेसिक से लिया गया था और ग्राफिकल यूजर इंटरफेस (जीयूआई) अनुप्रयोगों के तीव्र अनुप्रयोग विकास (आरएडी) को सक्षम बनाता है, डेटा एक्सेस ऑब्जेक्ट्स, रिमोट डेटा ऑब्जेक्ट्स, या एक्टिवएक्स डेटा ऑब्जेक्ट्स का उपयोग करके डेटाबेस तक पहुंच और एक्टिवएक्स नियंत्रण और ऑब्जेक्ट्स का निर्माण करता है। एक प्रोग्रामर विजुअल बेसिक प्रोग्राम द्वारा प्रदान किए गए घटकों का उपयोग करके एक एप्लिकेशन बना सकता है। समय के साथ प्रोग्रामरों के समुदाय ने तीसरे पक्ष के घटकों का विकास किया।    विजुअल बेसिक में लिखे प्रोग्राम भी विंडोज एपीआई का उपयोग कर सकते हैं, जिसके लिए बाहरी कार्यों की घोषणा की आवश्यकता होती है।

अंतिम रिलीज़ 1998 में संस्करण 6 था। 8 अप्रैल, 2008 को, माइक्रोसॉफ्टने विज़ुअल बेसिक 6.0 एकीकृत विकास वातावरण का समर्थन करना बंद कर दिया। माइक्रोसॉफ्ट विज़ुअल बेसिक टीम अभी भी समर्थित विंडोज ऑपरेटिंग सिस्टम पर अपने इट जस्ट वर्क्स प्रोग्राम के माध्यम से विज़ुअल बेसिक 6.0 अनुप्रयोगों के लिए अनुकूलता बनाए रखती है। 2014 में, कुछ सॉफ्टवेयर डेवलपर्स अभी भी इसके उत्तराधिकारी, विजुअल बेसिकडॉटनेट पर विजुअल बेसिक 6.0 को प्राथमिकता देते हैं। 2016, 2017 और 2018 में स्टैक ओवरफ़्लो के वार्षिक डेवलपर सर्वेक्षण के उत्तरदाताओं द्वारा विजुअल बेसिक 6.0 को सबसे खतरनाक प्रोग्रामिंग भाषा के रूप में चुना गया था।  विज़ुअल बेसिक की एक बोली, विज़ुअल बेसिक अनुप्रयोगों के लिए (वीबीA) का उपयोग माइक्रोसॉफ्ट ऑफिस सहित कई माइक्रोसॉफ्ट और स्वतंत्र सॉफ़्टवेयर विक्रेता अनुप्रयोगों में मैक्रो या स्क्रिप्टिंग भाषा के रूप में किया जाता है।

भाषा सुविधाएँ
बेसिक प्रोग्रामिंग लैंग्वेज की तरह, विजुअल बेसिक को एक आसान सीखने वाली भाषा जैसी अवस्था के लिए डिज़ाइन किया गया था। प्रोग्रामर सरल और जटिल दोनों तरह के जीयूआई एप्लिकेशन बना सकते हैं। वीबी में प्रोग्रामिंग जीयूआई विजेट एक फॉर्म पर घटकों या नियंत्रणों को नेत्रहीन रूप से व्यवस्थित करने, उन घटकों के लिए विशेषताओं और क्रियाओं को निर्दिष्ट करने और अधिक कार्यक्षमता के लिए कोड की अतिरिक्त पंक्तियां लिखने का एक संयोजन है। चूंकि वीबी घटकों के लिए डिफ़ॉल्ट विशेषताओं और क्रियाओं को परिभाषित करता है, एक प्रोग्रामर बिना अधिक कोड लिखे एक साधारण प्रोग्राम विकसित कर सकता है। पहले के संस्करणों के साथ बनाए गए प्रोग्रामों में प्रदर्शन संबंधी समस्याएं आईं, लेकिन तेज़ कंप्यूटर और देशी कोड संकलन ने इसे कम समस्या बना दिया है । हालांकि वीबी प्रोग्राम को संस्करण 5 से मूल कोड निष्पादन योग्य में संकलित किया जा सकता है, फिर भी उन्हें लगभग 1 एमबी रनटाइम लाइब्रेरी की उपस्थिति की आवश्यकता होती है। कोर रनटाइम पुस्तकालयों को  विंडोज 2000 और बाद में डिफ़ॉल्ट रूप से सम्मिलित  किया गया है, लेकिन विस्तारित रनटाइम घटकों को अभी भी स्थापित करना होगा। विंडोज (95/98/NT) के पुराने संस्करणों के लिए आवश्यक है कि रनटाइम पुस्तकालयों को निष्पादन योग्य के साथ वितरित किया जाए।

खींचें और छोड़ें तकनीकों का उपयोग करके फॉर्म बनाए जाते हैं। प्रपत्र (विंडो) पर नियंत्रण (जैसे, टेक्स्ट बॉक्स, बटन, आदि) रखने के लिए एक उपकरण का उपयोग किया जाता है। नियंत्रणों में गुण (कंप्यूटिंग) और उनसे जुड़े ईवेंट हैंडलर होते हैं। नियंत्रण बनाए जाने पर डिफ़ॉल्ट मान प्रदान किए जाते हैं, लेकिन प्रोग्रामर द्वारा इसे बदला जा सकता है। एक गतिशील अनुप्रयोग प्रदान करते हुए उपयोगकर्ता के कार्यों या पर्यावरण में परिवर्तन के आधार पर रन टाइम के दौरान कई विशेषता मानों को संशोधित किया जा सकता है। उदाहरण के लिए, कोड को फॉर्म रीसाइज आयोजन प्रबंधकर्ता में डाला जा सकता है ताकि नियंत्रण को फिर से स्थापित किया जा सके ताकि यह फॉर्म पर केंद्रित रहे, फॉर्म भरने के लिए विस्तारित हो, आदि। टेक्स्ट बॉक्स में कीप्रेस के लिए इवेंट हैंडलर में कोड डालने से, प्रोग्राम स्वचालित रूप से दर्ज किए जा रहे पाठ का अनुवाद कर सकता है, या कुछ वर्णों को सम्मिलित होने से भी रोक सकता है।

विज़ुअल बेसिक एक्ज़ीक्यूटेबल्स (एक्सई फाइलें), एक्टिवएक्स, या डीएलएल फ़ाइलें बना सकता है, लेकिन मुख्य रूप से इसका उपयोग विंडोज़ अनुप्रयोगों को विकसित करने और डेटाबेस सिस्टम के साथ इंटरफेस करने के लिए किया जाता है। पॉप-अप क्षमताओं को प्रदान करने के लिए कम कार्यक्षमता वाले डायलॉग बॉक्स का उपयोग किया जा सकता है। नियंत्रण अनुप्रयोग की बुनियादी कार्यक्षमता प्रदान करते हैं, जबकि प्रोग्रामर उपयुक्त ईवेंट हैंडलर्स के भीतर अतिरिक्त तर्क सम्मिलित कर सकते हैं। उदाहरण के लिए, ड्रॉप-डाउन संयोजन बॉक्स स्वचालित रूप से एक सूची प्रदर्शित करता है। जब उपयोगकर्ता किसी तत्व का चयन करता है, तो एक ईवेंट हैंडलर कहा जाता है जो उस सूची आइटम के लिए कार्रवाई करने के लिए प्रोग्रामर द्वारा बनाए गए कोड को निष्पादित करता है। वैकल्पिक रूप से, एक विज़ुअल बेसिक घटक में कोई उपयोगकर्ता इंटरफ़ेस नहीं हो सकता है, और इसके बजाय कंपोनेंट ऑब्जेक्ट मॉडल (कॉम) के माध्यम से अन्य प्रोग्रामों को एक्टिवएक्स ऑब्जेक्ट प्रदान करता है। यह सर्वर साइड प्रोसेसिंग या ऐड-इन मॉड्यूल के लिए अनुमति देता है।

रनटाइम संदर्भ गणना का उपयोग करके अप्रयुक्त मेमोरी को पुनर्प्राप्त करता है, जो चर के दायरे से बाहर जाने या कुछ भी नहीं पर सेट होने पर निर्भर करता है, जो अन्य भाषाओं में संभव स्मृति रिसाव की समस्या से बचता है। उपयोगिता वस्तुओं का एक बड़ा पुस्तकालय है, और भाषा वस्तु-उन्मुख प्रोग्रामिंग के लिए बुनियादी सहायता प्रदान करती है। कई अन्य प्रोग्रामिंग भाषाओं के विपरीत, विज़ुअल बेसिक आमतौर पर केस-संवेदी नहीं है - हालांकि यह कीवर्ड (कंप्यूटर प्रोग्रामिंग) को एक मानक केस कॉन्फ़िगरेशन में बदल देता है और चर नामों के मामले को प्रतीक तालिका में प्रविष्टि के मामले के अनुरूप होने के लिए मजबूर करता है। स्ट्रिंग तुलना डिफ़ॉल्ट रूप से केस संवेदी होती है। विजुअल बेसिक कंपाइलर को अन्य विजुअल स्टूडियो भाषाओं (C, C++) के साथ साझा किया जाता है। फिर भी, डिफ़ॉल्ट रूप से आईडीई में प्रतिबंध कुछ लक्ष्यों (विंडोज मॉडल डीएलएल) और थ्रेडिंग मॉडल के निर्माण की अनुमति नहीं देते हैं, लेकिन वर्षों से, डेवलपर्स ने इन प्रतिबंधों को दरकिनार कर दिया है।

विशेषताएं
विजुअल बेसिक, बेसिक की विशेषताओं पर आधारित है।


 * अकेले लाइन नंबर द्वारा पहचाने जाने के बजाय, कोड को नामांकित सबरूटीन्स या विधियों में समूहीकृत किया जा सकता है: सब...इंड सब .विजुअल बेसिक संस्करण 6 या बाद के संस्करण के माध्यम से उपयोगकर्ता द्वारा जोड़े गए लाइन नंबरों का समर्थन करता है।
 * कोड स्टेटमेंट में लाइन एंडिंग (कैरिज रिटर्न/लाइन फीड) के अलावा कोई टर्मिनेटिंग कैरेक्टर नहीं होता है। कम से कम वीबी 3.0 के संस्करणों ने अनुमति दी है कि बयान स्ट्रिंग के संयोजन के साथ अंतर्निहित रूप से बहु-पंक्ति हो सकते हैं या स्पष्ट रूप से लाइनों के अंत में अंडरस्कोर वर्ण (_) का उपयोग कर सकते हैं।
 * कोड टिप्पणियाँ एक एपोस्ट्रोफी (') वर्ण के साथ की जाती हैं, जैसे: ' This is a comment.
 * लूपिंग स्टेटमेंट ब्लॉक कीवर्ड के साथ शुरू और खत्म होते हैं: Do...Loop, While...End जबकि, For...Next ।
 * एकाधिक चर असाइनमेंट संभव नहीं है। A = B = C का अर्थ यह नहीं है कि A, B और C के मान समान हैं। क्या B = C का बूलियन परिणाम है? ए में संग्रहीत है। इसलिए ए में संग्रहीत परिणाम या तो गलत या सही होगा।
 * बूलियन डेटाटाइप स्थिर  संख्यात्मक मान -1 है। ऐसा इसलिए है क्योंकि बूलियन डेटा प्रकार को दो के पूरक हस्ताक्षरित पूर्णांक के रूप में संग्रहीत किया जाता है। इस निर्माण में -1 बाइनरी में सभी -1 का मूल्यांकन करता है (बूलियन मान  ), और 0 सभी-0 के रूप में (बूलियन मान  ). यह (बिटवाइज़) प्रदर्शन करते समय स्पष्ट होता है   दो के पूरक मान 0 पर संक्रिया, जो दूसरे शब्दों में दो का पूरक मान -1 लौटाता है  . एक पूर्णांक के अलग-अलग बिट्स पर तार्किक संचालन करते समय यह अंतर्निहित कार्यक्षमता विशेष रूप से उपयोगी हो जाती है ,  ,   और  . यह परिभाषा   1970 के दशक की शुरुआत से माइक्रोसॉफ्ट बेसिक कार्यान्वयन के बाद से भी बेसिक के अनुरूप है और उस समय के सीपीयू निर्देशों की विशेषताओं से भी संबंधित है।
 * लॉजिकल और बिटवाइज़ ऑपरेटर्स एकीकृत हैं। यह कुछ सी-व्युत्पन्न भाषाओं (जैसे पर्ल) के विपरीत है, जिनके अलग-अलग तार्किक और बिटवाइज़ ऑपरेटर हैं। यह फिर से बेसिक की एक पारंपरिक विशेषता है।
 * चर सरणी डेटा प्रकार आधार। पास्कल (प्रोग्रामिंग भाषा) और फोरट्रान के समान एक तरह से ऊपरी और निचली सीमा को निर्दिष्ट करके सरणियों को घोषित किया जाता है। डिफॉल्ट लोअर बाउंड सेट करने के लिए ऑप्शन बेस स्टेटमेंट का उपयोग करना भी संभव है। विज़ुअल बेसिक कोड को पढ़ते समय ऑप्शन बेस स्टेटमेंट के उपयोग से भ्रम पैदा हो सकता है और सरणी की निचली सीमा को हमेशा स्पष्ट रूप से निर्दिष्ट करके इससे बचा जा सकता है। यह निचली सीमा 0 या 1 तक सीमित नहीं है, क्योंकि इसे घोषणा द्वारा भी निर्धारित किया जा सकता है। इस तरह, निचली और ऊपरी दोनों सीमाएँ प्रोग्राम करने योग्य हैं। अधिक सबस्क्रिप्ट-सीमित भाषाओं में, सरणी की निचली सीमा परिवर्तनशील नहीं होती है। यह असामान्य विशेषता विज़ुअल बेसिकडॉटनेट में मौजूद है लेकिन वीबीस्क्रिप्ट में नहीं है।
 * ANSI द्वारा 1970 के दशक के अंत में ANSI मिनिमल बेसिक के मानक के साथ पेश किया गया था।


 * माइक्रोसॉफ्ट विंडोज और कंपोनेंट ऑब्जेक्ट मॉडल के साथ अपेक्षाकृत मजबूत एकीकरण। तार और सरणियों के लिए मूल प्रकार समर्पित कॉम प्रकार, बी.एस.टी.आर और सफीरे हैं।
 * वास्तविक संख्याओं को पूर्णांकों में परिवर्तित करते समय डिफ़ॉल्ट व्यवहार के रूप में बैंकर की गोलाई  समारोह।    2 देता है,   4 देता है।
 * पूर्णांकों को स्वचालित रूप से वास्तविक में बढ़ावा दिया जाता है जिसमें सामान्य डिवीजन ऑपरेटर सम्मिलित होता है  ताकि एक पूर्णांक का दूसरे द्वारा विभाजन सहज रूप से सही परिणाम उत्पन्न करे। वीबी एक विशिष्ट पूर्णांक विभाजन ऑपरेटर प्रदान करता है  जो काटता है।
 * डिफ़ॉल्ट रूप से, यदि कोई चर घोषित नहीं किया गया है या यदि कोई प्रकार की घोषणा वर्ण निर्दिष्ट नहीं है, तो चर प्रकार का है . हालाँकि इसे Deftype स्टेटमेंट्स जैसे कि के साथ बदला जा सकता है ,  ,  ,  ,  . 12 हैं   विजुअल बेसिक 6.0 द्वारा प्रस्तुत कुल कथन। चर नाम पर एक विशेष प्रत्यय वर्ण का उपयोग करके एक विशिष्ट घोषणा के लिए डिफ़ॉल्ट प्रकार को ओवरराइड किया जा सकता है (  डबल के लिए,   सिंगल के लिए,   लंबे समय तक के लिए,   पूर्णांक के लिए,   स्ट्रिंग के लिए, और   मुद्रा के लिए) या मुख्य वाक्यांश का उपयोग करना  . वीबी को एक मोड में भी सेट किया जा सकता है कि कमांड के साथ केवल स्पष्ट रूप से घोषित चर का उपयोग किया जा सकता है.

इतिहास
विजुअल बेसिक 1.0 को 1991 में पेश किया गया था। यूजर इंटरफेस बनाने के लिए ड्रैग एंड ड्रॉप डिजाइन एलन कूपर और उनकी कंपनी ट्राइपॉड द्वारा विकसित प्रोटोटाइप फॉर्म जनरेटर से लिया गया है।  माइक्रोसॉफ्ट ने कूपर और उसके सहयोगियों के साथ कोड नाम रूबी (बाद की रूबी (प्रोग्रामिंग भाषा) से कोई संबंध नहीं) के अधीनता में विंडोज 3.0 के लिए प्रोग्राम करने योग्य फॉर्म सिस्टम में तिपाई को विकसित करने के लिए अनुबंध किया। तिपाई में प्रोग्रामिंग भाषा बिल्कुल सम्मिलित  नहीं थी। माइक्रोसॉफ्टने विज़ुअल बेसिक बनाने के लिए रूबी को मूल भाषा के साथ संयोजित करने का निर्णय लिया। रूबी इंटरफ़ेस जनरेटर ने विजुअल बेसिक का दृश्य भाग प्रदान किया, और इसे माइक्रोसॉफ्ट के परित्यक्त ओमेगा डेटाबेस सिस्टम के लिए डिज़ाइन किए गए ईबी एंबेडेड बेसिक इंजन के साथ जोड़ा गया। रूबी ने डायनेमिक-लिंक लाइब्रेरी को लोड करने की क्षमता भी प्रदान की जिसमें अतिरिक्त नियंत्रण (तब गिज़्मोस कहा जाता था), जो बाद में विजुअल बेसिक एक्सटेंशन इंटरफ़ेस बन गया।

1990s

 * प्रोजेक्ट 'बेसिक थंडर' 1990 में शुरू किया गया था। प्राथमिक आंतरिक प्रकार्य, थंडरआरटीमेन के नाम से विज़ुअल बेसिक के अंतिम रिलीज़ तक थंडर बना रहा।
 * विजुअल बेसिक 1.0 (मई 1991) अटलांटा, जॉर्जिया में कॉमडेक्स/विंडोज वर्ल्ड ट्रेड शो में विंडोज के लिए संचालित किया गया था।
 * डॉस के लिए विजुअल बेसिक 1.0 सितंबर 1992 में संचालित किया गया था। यह भाषा विंडोज के लिए विजुअल बेसिक के साथ काफी संगत नहीं थी, क्योंकि यह माइक्रोसॉफ्ट के डॉस-आधारित बेसिक कंपाइलर्स, क्विकबेसिक और बेसिक प्रोफेशनल डेवलपमेंट सिस्टम का अगला संस्करण था। ग्राफिकल यूजर इंटरफेस की उपस्थिति को अनुकरण करने के लिए विस्तारित एएससीआईआई वर्णों का उपयोग करते हुए इंटरफ़ेस ने टेक्स्ट-आधारित यूजर इंटरफेस का उपयोग किया।
 * विज़ुअल बेसिक 2.0 नवंबर 1992 में संचालित किया गया था। प्रोग्रामिंग वातावरण का उपयोग करना आसान था, और इसकी गति में सुधार हुआ था। विशेष रूप से, प्रपत्र तात्कालिक वस्तुएं बन गए, इस प्रकार वर्ग मॉड्यूल की आधारभूत अवधारणाएं रखी गईं, जिन्हें बाद में वीबी4 में पेश किया गया था।
 * विज़ुअल बेसिक 3.0 को 1993 की गर्मियों में रिलीज़ किया गया था और यह मानक और व्यावसायिक संस्करणों में आया था। वीबी3 में जेट डेटाबेस इंजन का संस्करण 1.1 सम्मिलित था जो जेट (या एक्सेस) 1.x डेटाबेस को पढ़ और लिख सकता था।
 * विज़ुअल बेसिक 4.0 (अगस्त 1995) पहला संस्करण था जो 32-बिट के साथ-साथ 16-बिट विंडोज प्रोग्राम बना सकता था। इसके तीन संस्करण हैं; मानक, पेशेवर और उद्यम। इसने विज़ुअल बेसिक में गैर-जीयूआई कक्षाओं को लिखने की क्षमता भी पेश की। वीबी4 के साथ भाषा को जीयूआई लाइब्रेरी से अलग किया गया था, और वीबीA के रूप में उपलब्ध कराया गया था, जिस रूप में इसे ऑफिस 95 सुइट के साथ एम्बेड किया गया था। ऑफिस मैक्रोज़ और स्क्रिप्ट्स के माइग्रेशन को आसान बनाने के लिए, वर्डबेसिक, एक्सेल बेसिक और एक्सेस बेसिककी सुविधाओं को भाषा में सम्मिलित किया गया था। वीबी4 के विभिन्न रिलीज के बीच असंगतता के कारण स्थापना और संचालन की समस्याएं हुईं। जबकि विज़ुअल बेसिक के पिछले संस्करणों में वीबीX नियंत्रणों का उपयोग किया गया था, इसके बजाय विज़ुअल बेसिक ने अब ओले नियंत्रणों (डॉटओसीएक्स में समाप्त होने वाले फ़ाइल नामों के साथ) का उपयोग किया। इन्हें बाद में एक्टिवेक्स नियंत्रणों का नाम दिया गया।
 * संस्करण 5.0 (फरवरी 1997) के साथ, माइक्रोसॉफ्ट ने विशेष रूप से विंडोज के 32-बिट संस्करणों के लिए विज़ुअल बेसिक संचालित किया। प्रोग्रामर जो 16-बिट प्रोग्राम लिखना पसंद करते थे, वे विजुअल बेसिक 4.0 में लिखे प्रोग्राम को विजुअल बेसिक 5.0 में आयात करने में सक्षम थे, और विजुअल बेसिक 5.0 प्रोग्राम को आसानी से विजुअल बेसिक 4.0 में बदला जा सकता है। विजुअल बेसिक 5.0 ने कस्टम उपयोगकर्ता नियंत्रण बनाने की क्षमता के साथ-साथ देशी विंडोज़ निष्पादन योग्य कोड को संकलित करने की क्षमता, गणना-गहन कोड निष्पादन को तेज करने की क्षमता भी पेश की। ActiveXs के निर्माण के लिए एक निःशुल्क, डाउनलोड करने योग्य नियंत्रण निर्माण संस्करण भी संचालित किया गया था। इसे विज़ुअल बेसिक के एक परिचयात्मक रूप के रूप में भी इस्तेमाल किया गया था: एक नियमित डॉटएक्सई प्रोजेक्ट को आईडीई में बनाया और चलाया जा सकता था, लेकिन संकलित नहीं किया गया था।
 * विज़ुअल बेसिक 6.0 (मध्य-1998) में कई क्षेत्रों में सुधार हुआ जिसमें वेब-आधारित एप्लिकेशन बनाने की क्षमता सम्मिलित है।

2000s

 * माइक्रोसॉफ्टविज़ुअल बेसिक 6.0 के लिए मुख्यधारा का समर्थन 31 मार्च 2005 को समाप्त हो गया और विस्तारित समर्थन मार्च 2008 में समाप्त हो गया। हालांकि, विज़ुअल बेसिक 6 विकास पर्यावरण के प्राथमिक घटक विंडोज़ के सभी 32-बिट संस्करणों में विंडोज़ 11 तक और विंडोज़ सहित चलते हैं।

व्युत्पन्न भाषाएँ
माइक्रोसॉफ्टने स्क्रिप्टिंग भाषा में उपयोग के लिए विज़ुअल बेसिक के डेरिवेटिव विकसित किए हैं। विजुअल बेसिक स्वयं बेसिक से काफी हद तक प्राप्त हुआ है, और बाद में इसे डॉटनेटफ्रेमवर्क|डॉटनेट प्लेटफॉर्म संस्करण के साथ बदल दिया गया है।

कुछ व्युत्पन्न भाषाएँ हैं:
 * अनुप्रयोगों के लिए विज़ुअल बेसिक (वीबीA) कई माइक्रोसॉफ्टअनुप्रयोगों (माइक्रोसॉफ्टOffice) में सम्मिलित है,और ठोस काम करता है,ऑटोकैड, वर्डपरफेक्ट ऑफिस, आर्कजीआईएस, सेज 300 ईआरपी, और बिजनेस ऑब्जेक्ट्स डेस्कटॉप इंटेलिजेंस जैसे कई तृतीय-पक्ष उत्पादों में भी सम्मिलित है। विभिन्न अनुप्रयोगों में वीबीA को लागू करने के तरीके में छोटी-छोटी विसंगतियां हैं, लेकिन यह काफी हद तक विज़ुअल बेसिक 6.0 जैसी ही भाषा है और समान रनटाइम लाइब्रेरी का उपयोग करती है। विज़ुअल बेसिक विकास 6.0 के साथ समाप्त हो गया, लेकिन 2010 में माइक्रोसॉफ्टने विस्तारित सुविधाएँ प्रदान करने और 64-बिट समर्थन जोड़ने के लिए वीबीA 7 पेश किया।
 * विज़ुअल बेसिकडॉटनेट माइक्रोसॉफ्टद्वारा विज़ुअल बेसिक 6.0 का नामित उत्तराधिकारी है, और माइक्रोसॉफ्टकेडॉटनेट प्लेटफ़ॉर्म का हिस्सा है। विज़ुअल बेसिकडॉटनेटडॉटनेट फ्रेमवर्क या उसके उत्तराधिकारी,डॉटनेट का उपयोग करके संकलित और चलाता है। यह विजुअल बेसिक 6.0 के साथ पश्चगामी संगतता नहीं है। एक स्वचालित रूपांतरण उपकरण मौजूद है, लेकिन अधिकांश परियोजनाओं के लिए पूरी तरह से स्वचालित रूपांतरण असंभव है।
 * वीबीScript सक्रिय सर्वर पेजों के लिए डिफ़ॉल्ट भाषा है। इसका उपयोग माइक्रोसॉफ्ट विंडोज स्क्रिप्टिंग और क्लाइंट-साइड वेब पृष्ठ स्क्रिप्टिंग में किया जा सकता है। यह सिंटेक्स (प्रोग्रामिंग लैंग्वेज) में वीबी जैसा दिखता है, लेकिन एक अलग भाषा है - वीबी रनटाइम के बजाय वीबीस्क्रिप्टडॉटडीआईआई द्वारा निष्पादित। एएसपी और वीबीस्क्रिप्ट को एएसपी.नेटके साथ भ्रमित नहीं होना चाहिए, जो संकलित वेब पेजों के लिएडॉटनेट फ्रेमवर्क का उपयोग करता है।
 * ओपनऑफिस बेसिक एक विज़ुअल बेसिक संगत दुभाषिया है जो स्टारऑफिस ऑफिस सुइट में उत्पन्न हुआ है।
 * झींगे लिनक्स ऑपरेटिंग सिस्टम के लिए विजुअल बेसिक से प्रेरित मुफ्त सॉफ्टवेयर प्रोग्रामिंग भाषा है। यह विज़ुअल बेसिक का क्लोन नहीं है, लेकिन इसमें विज़ुअल बेसिक प्रोग्राम को गाम्बस में बदलने की क्षमता है।
 * विनरैप बेसिक एक तृतीय-पक्ष वीबीA संस्करण है जिसका उपयोग विभिन्न सॉफ़्टवेयर के साथ किया जाता है, और प्रोग्रामर के लिए उनके प्रोग्राम में मैक्रो सुविधा बनाने के लिए उपयोग करने के लिए उपलब्ध है।
 * लोटसस्क्रिप्ट लोटस स्मार्टसुइट और लोटस नोट्स में उपलब्ध एक वीबीए संस्करण है।
 * कोरल वर्डपरफेक्ट ऑफिस के बाद के संस्करण मैक्रो/स्क्रिप्टिंग भाषाओं में से एक के रूप में वीबीA तक पहुँच को लागू करते हैं, अन्य प्रमुख कोरलस्क्रिप्ट और परफेक्टस्क्रिप्ट हैं।
 * माइक्रोसॉफ्ट वर्ड के पुराने संस्करण वर्डबेसिक नामक विज़ुअल बेसिक के एक संस्करण का उपयोग करते हैं।

प्रदर्शन और अन्य मुद्दे
विज़ुअल बेसिक के पुराने संस्करण (संस्करण 5 से पहले) ने कोड को केवल माइक्रोसॉफ्टP-Code|P-Code में संकलित किया। पी-कोड की व्याख्या लैंग्वेज रनटाइम द्वारा की जाती है। पी-कोड के लाभों में पोर्टेबिलिटी और छोटे बाइनरी फ़ाइल आकार सम्मिलित हैं, लेकिन यह आमतौर पर निष्पादन को धीमा कर देता है, क्योंकि रनटाइम होने से व्याख्या की एक अतिरिक्त परत जुड़ जाती है। विज़ुअल बेसिक अनुप्रयोगों के लिए माइक्रोसॉफ्टविज़ुअल बेसिक रनटाइम MSवीबीVMxx.DLL की आवश्यकता होती है, जहाँ xx संबंधित संस्करण संख्या है, या तो 50 या 60। MSवीबीVM60.dll Windows 98 से Windows 10 तक सभी संस्करणों में Windows के साथ मानक के रूप में आता है (Windows 7 के कुछ संस्करण नहीं होते हैं) इसे सम्मिलित  करें)। हालांकि एक विंडोज 95 मशीन को प्रोग्राम द्वारा आवश्यक डीएलएल के इंस्टॉलर के साथ सम्मिलित  करने की आवश्यकता होगी। विजुअल बेसिक 5 और 6 मूल या पी-कोड के लिए कोड संकलित कर सकते हैं लेकिन किसी भी मामले में रनटाइम अभी भी अंतर्निहित कार्यों और रूपों के प्रबंधन के लिए आवश्यक है।

वीबी.NET से पहले विज़ुअल बेसिक संस्करणों में की गई आलोचनाओं में सम्मिलित हैं:
 * विभिन्न रनटाइम डायनेमिक-लिंक लाइब्रेरी से जुड़ी वर्जनिंग समस्याएं, जिन्हें DLL नरक के रूप में जाना जाता है
 * वस्तु-उन्मुख प्रोग्रामिंग के लिए खराब समर्थन
 * ActiveX या DLL का उपयोग करके केवल मल्टी-थ्रेड (कंप्यूटर साइंस) एप्लिकेशन बना सकते हैं
 * मजबूत और कमजोर टाइपिंग की तुलना में अधिक प्रदर्शन और स्टोरेज ओवरहेड वाले भिन्न प्रकार | जोरदार टाइप प्रोग्रामिंग लैंग्वेज
 * जटिल और नाजुक घटक वस्तु मॉडल (COM) रजिस्ट्री प्रविष्टियों पर निर्भरता

विरासत विकास और समर्थन
1.0 से 6.0 तक विजुअल बेसिक विकास पर्यावरण के सभी संस्करणों को 2008 तक माइक्रोसॉफ्ट द्वारा सेवानिवृत्त कर दिया गया था, और इसलिए अब समर्थित नहीं हैं। विज़ुअल बेसिक 6 कोर रनटाइम वातावरण को छोड़कर संबद्ध रनटाइम वातावरण भी असमर्थित हैं, जिसे माइक्रोसॉफ्टआधिकारिक तौर पर विंडोज 8 के जीवनकाल के लिए समर्थन करता है, विंडोज 10 और विंडोज़ 11। Visual Studio 6.0 के साथ शिप किए गए तृतीय पक्ष घटक इस समर्थन कथन में सम्मिलित नहीं हैं। माइक्रोसॉफ्टऔर अन्य विक्रेताओं द्वारा असमर्थित होने के बावजूद कुछ लीगेसी विज़ुअल बेसिक घटक अभी भी नए प्लेटफ़ॉर्म पर कार्य कर सकते हैं. विज़ुअल बेसिक 6.0 के लिए दस्तावेज़ीकरण, इसके एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस और टूल्स को Visual Studio.NET 2002 से पहले अंतिम MSDN रिलीज़ में सबसे अच्छा कवर किया गया है। भाषा विकसित हुई, और पुराने कोड के लिए समर्थन समाप्त हो गया। हालांकि विज़ुअल बेसिक 6 के लिए विक्रेता समर्थन समाप्त हो गया है, और उत्पाद को विंडोज के नवीनतम संस्करणों पर कभी भी समर्थित नहीं किया गया है, पर्यावरण के प्रमुख भाग अभी भी नए प्लेटफॉर्म पर काम करते हैं। विंडोज विस्टा, विंडोज 7, विंडोज 8, विंडोज 10 और विंडोज 11 के 32-बिट और 64-बिट संस्करणों पर काम कर रहे विकास पर्यावरण का एक सबसेट प्राप्त करना संभव है।

उदाहरण कोड
निम्न कोड स्निपेट एक संदेश बॉक्स प्रदर्शित करता है जिसमें हैलो, वर्ल्ड! जैसे ही विंडो लोड होती है: <वाक्यविन्यास प्रकाश लैंग = वीबी हाइलाइट = 3> निजी उप फॉर्म_लोड एक साधारण संदेश बॉक्स निष्पादित करें जो हैलो, वर्ल्ड कहता है! MsgBox हैलो, दुनिया! अंत उप  यह स्निपेट एक काउंटर बनाता है जो हर सेकंड 1 ऊपर जाता है (इसके काम करने के लिए एक लेबल और एक टाइमर नियंत्रण को फॉर्म में जोड़ा जाना चाहिए) जब तक कि फॉर्म बंद न हो जाए या एक पूर्णांक अतिप्रवाह न हो जाए: <वाक्यविन्यास लैंग = वीबी> विकल्प स्पष्ट मंद गणना पूर्णांक के रूप में निजी उप फॉर्म_लोड गिनती = 0 Timer1.Interval = 1000 ' मिलीसेकंड की इकाइयाँ अंत उप निजी सब टाइमर1_टाइमर गिनती = गिनती + 1 Label1.Caption = गिनती अंत उप 

यह भी देखें
IIf - विज़ुअल बेसिक के कई संस्करणों में एक फ़ंक्शन मोटे तौर पर ?: सी और संबंधित भाषाओं के सशर्त ऑपरेटर के बराबर है।
 * प्रोग्रामिंग भाषाओं की तुलना
 * नियंत्रण सरणी

बाहरी संबंध

 * विज़ुअल बेसिक 6.0 Resource Center
 * Secure your विज़ुअल बेसिक 6.0 investment with माइक्रोसॉफ्ट.NET: Migrating from विज़ुअल बेसिक 6.0 to विज़ुअल बेसिक 2008
 * विज़ुअल बेसिक 6 Renewed to Run on Windows 8
 * Instructions for installing विज़ुअल बेसिक 6 on a Windows 10 computer