17 ms·
VBScript deprecation: Timelines and next steps
- draw_down 2y agoProbably one of the most maddening things I have ever worked with, and that is saying something. Though a huge part of the blame for that goes to COM and registration, interop stuff, which is more Windows than VBScript and also probably never truly going away.
- gregoryl 2y agoFYI, it looks like you're hellbanned - I vouched this comment back from [dead]. Might be worth sending an email to the mods. Edit: It's been since at least 2018?
- draw_down 2y ago[dead]
- sancarn 2y agoCOM is still actively being used. Not sure why you think it's a problem with windows too. COM is and always has been quite revolutionary imo.
- pteraspidomorph 2y ago> Notably, these browsers have never implemented support for VBScript. This reads mildly accusatory and got a chuckle out of me. I'm surprised it took them this long!
- yen223 2y agoFolks who complain about Javascript don't realise how close we were to having vbscript as the dominant web language
- lionkor 2y agoyeah we should have a language that was built in a day instead of a week. move fast.
- ksherlock 2y agoIn a slightly different universe, CERN gave Tim Berners-Lee a windows workstation instead of a NeXT Cube and www was built on top of Microsoft Word and VBScript.
- watersb 2y ago> www was built on top of Microsoft Word and VBScript Ah, that would be Internet Explorer.
- deleted 2y ago[deleted]
- chem83 2y agoI find PowerShell, the language, verbose and not very ergonomic. This ship has sailed, but I wish Microsoft had done something to make Windows automation a little closer to other platforms, so that it could benefit from the good software that exists on other platforms. It seems that VBA will continue to exist as the programming front end for MS Office, which is unfortunate. They had announced Python support for Excel a while back and I wish it was better promoted as a viable VBA replacement.
- bossyTeacher 2y agoPowerShell is terrible. The idea is good, the implementation bad
- levidos 2y agoPowerShell is amazing
- Someone1234 2y agoCare to go into any detail at all..?
- orthoxerox 2y agoIt has a very idiosyncratic syntax. The internals are great, but it's so unlike either sh or C that I, for example, just can't be bothered to remember it.
- bossyTeacher 2y agoIn most normal languages, a non-void function returns either null or some data. Normally, the type of data is always the same. So your function returning a string will never return an int. Either it returns a string or an int. In PowerShell this is not guaranteed for all the functions in packages supported by Microsoft. A function returning a list of strings, can sometimes return a list of something that are not strings. This is the first big issue I have with PowerShell. The language is very quirky. Simple stuff like using variables is not as intuitive as it should be. Another issue is encapsulation of logic, it is not straightforward at all. This is my second big issue. Trying to temporarily disable script policies to run a script is not straightforward either.
- eterm 2y agoI'm glad that Microsoft takes a really long time to deprecate these things. It's "This gets extra awkward in 3 years, and dissappears some time after that", not "This disappears in 3 months".
- deleted 2y ago[deleted]
- unnah 2y agoSo far I have avoided Powershell in anything distributed to end users, because execution of unsigned scripts is disabled by default in Windows. It has been easier to use VBScript or BAT files to automate basic tasks, since those scripts can be run unsigned... I suppose it is too much to hope for that Microsoft would now reconsider enabling Powershell script execution by default.
- workingdog 2y agoWhatever you have that's calling the Powershell script just has to tell the Powershell system that it's ok to run the unsigned script. The default is just to keep people from double-clicking rando Powershell script files and all hell breaking loose.
- lowleveldesign 2y agoI haven't considered the execution policy such a blocker since you may change it on the powershell.exe command line (for example, run "powershell.exe -ExecutionPolicy RemoteSigned -File script.ps1" from a bat file). Also, the default execution policies changed between PowerShell 5.x, shipped with Windows, and modern PowerShell 7.x, which you need to install separately. In 7.x RemoteSigned is the default in the server environment.
- croes 2y agoI know lots of software products which use VBScript to realize application scripting
- endorphine 2y agoCan you share some?
- deleted 2y ago[deleted]
- jsd1982 2y agoJust ran into a Y2038 bug in some classic ASP+VBScript code in production the other day. Someone long ago wrote `Date() + 5000` to set an expiry date far in the future (5000 days). As it turns out, 5000 days from now puts us past 1970-01-01 + 2**31 seconds (2038-01-19ish) and that causes VBScript to raise an error and abort the ASP page request with a 500 error. I raised the issue that we have about 14 years left of ASP+VBScript literally being able to execute properly and calculate dates (sans any large date additions remaining). Guess it'll be sooner than that based on this post but 14 years is definitely the upper bound if your VBScript code even touches dates.
- ygra 2y agoInteresting that VBScript uses Unix time for timestamps. I would have expected something like FILETIME (NT's 1601 epoch) or OLE DateTime, which uses floating point with the integral part referring to days since 1899 and the fractional part is divided into the 24 hours of the day). Windows in general seems to have so many different date/time formats that using Unix time is quite surprising.
- jmull 2y agoI wonder if I’m the one who will get stuck porting the large number of 20+ year-old asp pages we have at my day job to something else? (Which have been working fine all this time, BTW.) These pages are actually jscript (a variant of javascript), but we probably need to understand this to mean that’s going away as well.
- xerox13ster 2y agoIs Microsoft killing the script host or the script itself? If they're only killing VBscript and not the wscript.exe/cscript.exe scripting host, then Windows probably will still run the jscript variation of a script. wscript and cscript since XP days and especially 7 have pretty much always been capable of running either pure ES3 or ES5. I think now we're just going to lose the VB style com objects.
- jmull 2y agoSure, I get the argument. But I really don't think we can count on all the related .dlls/COM objects to keep getting support after what is probably their main interface is killed off. It just doesn't make sense to kill off just vbscript and not most/all of the other stuff that went along with it. I really doubt it's mainly about the language... I think it's about all that script-host/classic asp/COM stuff.
- LkpPo 2y agoThe page say dll will be removed.