What did you love about VB6, and what frustrates you about modern .NET?

Two open questions for anyone who shipped real work on Visual Basic 6 and is now writing C# against modern .NET. What specifically did VB6 get right that you miss? And what do you find frustrating about the modern toolchain that VB6 didn't make you fight? I shipped about a hundred VB3-through-VB6 line-of-business systems between 1995 and 2010, and I'm trying to get to the root of what was actually good before too much of the institutional memory leaves the room.

EvilGeniusLabs.ca
Ah, the #nostalgia of VB6! 🕰️ When #coding was as simple as your 1998 haircut. Now, modern .NET? It's like trading your trusty bicycle for a spaceship you can't pilot 🚀—sure, it does more, but good luck figuring it out!
https://evilgeniuslabs.ca/blog/vb6-modern-dotnet-question #VB6 #.NET #Transition #Memories #Technology #Humor #HackerNews #ngated
What did you love about VB6, and what frustrates you about modern .NET?

Two open questions for anyone who shipped real work on Visual Basic 6 and is now writing C# against modern .NET. What specifically did VB6 get right that you miss? And what do you find frustrating about the modern toolchain that VB6 didn't make you fight? I shipped about a hundred VB3-through-VB6 line-of-business systems between 1995 and 2010, and I'm trying to get to the root of what was actually good before too much of the institutional memory leaves the room.

EvilGeniusLabs.ca
What did you love about VB6, and what frustrates you about modern .NET?

Two open questions for anyone who shipped real work on Visual Basic 6 and is now writing C# against modern .NET. What specifically did VB6 get right that you miss? And what do you find frustrating about the modern toolchain that VB6 didn't make you fight? I shipped about a hundred VB3-through-VB6 line-of-business systems between 1995 and 2010, and I'm trying to get to the root of what was actually good before too much of the institutional memory leaves the room.

EvilGeniusLabs.ca
BasicBox: x86 PC emulator written in Visual Basic 6 Running… Visual Basic 6 github.com/mikechambers... www.reddit.com/r/EmuDev/com... #retrodev #emulation #emudev #retrocomputing #programming #vb6

I’ve been #programming in #VB6 #python #rust and the occasional easy #c project for close to two decades.

Still can’t figure out how #css works.

Кстати о. Есть ещё один способ получить даже более вдохновляющие результаты. Однажды мне потребовалось написать функцию, которая берёт байтовый буфер и форматирует его как в Hex просмотрщиках. Через строку всё делается очень просто, но очень долго. Всякие оптимизации не давали прямо радикального ускорения. Поэтому я написала функцию, которая сначала вычисляет размер байтового буфера, в котором будет содержаться ANSI строка, а потом по байтикам собирает эту самую строку. Быстродействие в результате такое, что даже реально большие массивы (по паре сотен метров) форматируются за считанные секунды. Главный минус – читается это не очень хорошо, нужно напрягать мозг после перерыва, чтобы понять, что происходит. Я хотела сделать такое же, но для генерации UUE, но до сих пор духа не хватает, хотя вариант со строками написала быстро и даже оптимизировала в итоге. #программизм #vb6
В последнее время я начала присматриваться к быстродействию своих программ в части операций с коллекциями и строками. Одну библиотеку радикально оптимизировала, например, применив новый для себя метод перечисления сразу двух коллекций одновременно (функциями из MSVBVM60.DLL, которые на самом деле стоят за For-Each, но избавляют от прямого взаимодействия с IEnumVARIANT). А началось с того, что меня до ужаса достала программа, парсящая логи ownCloud. Она сначала читает из файла идентификаторы обработанных сообщений в логах, потом парсит необработанные сообщения в файле лога, делая из JSON'ов в JSON'ах читаемые сообщения, сохраняет их в файлы сообщений и снова записывает файл с обновлёнными идентификаторами. И пока всё это продолжается, скрытое окно программы не обрабатывает сообщения, и всякие проводники, рассылающие широковещательные сообщения, вешаются при попытке открыться. Ранее я уже в программе снижала приоритет, чтобы не так грузило процессор. В этот раз я решила напихать DoEvents между обработкой JSON'ов, кою считала основной проблемой. Но оказалось, что загрузка списка занимала меньше секунды, парсинг – меньше секунды, сохранение списка – две-три минуты. Да, там была коллекция, которая долго перечислялась через индекс, а текст наращивался простым «TXT = TXT & Item». Поэтому я сделала так чтобы перечисление шло через «For Each», а текст собирала через Mid() в заранее выделенную строку, длину которой вычисляла отдельным перечислением. В результате программа вместо нескольких минут работает в районе секунды. Можно сказать, вдохновляющий результат! #программизм #vb6
Hat irgendjemand noch eine VB6 Lizenz rumliegen?

#VB #VB6
#askfedi
Netzgemeinde/Hubzilla

The following table contains possible examples of msvbvm60.dll being misused. While msvbvm60.dll is not inherently malicious, its legitimate functionality can be abused for malicious purposes.strontic.github.io
Как? Написанием вредоносной программы на VB, которая по дизайну будет использовать эти функции? #идиоты #программизм #vb6

msvbvm60.dll | Visual Basic Virtual Machine

What is msvbvm60.dll?

STRONTIC

Reverse engineering VB binaries will often involve reverse engineering VB internals for various VB APIs, a task dreaded by many. The entry point of a VB program diverts from the typical C/C++ or even Borland Delphi binary. There is no mainCRTStartup or WinMainCRTStartup function that initializes the C runtime and calls the developer defined main or WinMain function.rel="nofollow">blog.talosintelligence.com
Очевидное невероятное: программы, написанные на VB используют рантайм VB, а не рантайм C/C++, и не вызывают функции из рантайма C/C++! #идиоты #программизм #vb6

Discovering Dynamically Loaded API in Visual Basic Binaries

Performing analysis on a Visual Basic (VB) script, or when Visual Basic is paired with the .NET Framework, becomes an exercise of source code analysis. Unfortunately when Visual Basic is compiled to a Windows Portable Executable (PE) file it can become a nightmare for many malware analysts and reverse engineers.

Cisco Talos Blog