|
I do it for compiler definitions. For instance :
#define __DEPRECATED__
It's a hold-over from my days of doing C++.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
Hmm. I have done that trick in one spot in our 'legacy' C++ stuff. We had a pile of shared code that occasionally needed to know exactly which product it was being compiled in to:
#define __Product_A__ 0x00000001
#define __Product_B__ 0x00000002
#define __Product_C__ 0x00000003
...
#define __Product__ __Product_J__ We had non-preprocessor identifiers like "_Product " in a number of places, so the leading and trailing underscores helped.
Software Zen: delete this;
|
|
|
|
|
if (____ ^^ _______)
____________()
"If we don't change direction, we'll end up where we're going"
|
|
|
|
|
|
Apparently, it's quite popular in Python:
Wear a Dunder Cap - The Daily WTF[^]
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
I'm going to have to use this:This is an impressive amount of effort into constructing a footgun
Software Zen: delete this;
|
|
|
|
|
Saw some code once where someone had used varying numbers of underscores to keep column name lengths uniform.
He also didn't seem to be aware that SQL has a rather nifty DATETIME construct, so the code looked something like:
SELECT whatever
FROM Somebloodyawfullynamedtable
WHERE Monday____morning = 1 OR Tuesday__morning = 1 OR Wednesday_morning = 1 OR Thursday__morning = 1 ...
There were something close to 1,000 lines in a sproc which basically seemed to be there just to establish what day of the week an appointment was on and whether it was in the morning or afternoon!!!
Whenever you find yourself on the side of the majority, it is time to pause and reflect. - Mark Twain
|
|
|
|
|
I had trial version on VS 2017. Now that evaluation is expired, I went to uninstall it. It tells me to update the installer before I uninstall. Why? Why? WHY?
Something which installed it cannot uninstall it anymore?
"It is easy to decipher extraterrestrial signals after deciphering Javascript and VB6 themselves.", ISanti[ ^]
|
|
|
|
|
It's silly, but that is how the installer / updater works.
|
|
|
|
|
It's easy to get married but hard to get divorced.
Everyone is born right handed. Only the strongest overcome it.
Fight for left-handed rights and hand equality.
|
|
|
|
|
011111100010 wrote: It's easy to get married but hard to get divorced.
So by analogy, I have to upgrade Mistress before I can uninstall Wife?
Latest Article - A Concise Overview of Threads
Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny
Artificial intelligence is the only remedy for natural stupidity. - CDP1802
|
|
|
|
|
Marc Clifton wrote: So by analogy, I have to upgrade Mistress before I can uninstall Wife? That often does the trick. (So I've heard)
|
|
|
|
|
That has to be the BEST analogy I have ever read!
When you are dead, you won't even know that you are dead. It's a pain only felt by others.
Same thing when you are stupid.
modified 19-Nov-21 21:01pm.
|
|
|
|
|
I think that generally speaking, uninstallation of Wife requires a significant downgrade to Bank Account.
Sent from my Amstrad PC 1640
Never throw anything away, Griff
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
Except that Mistress is a rather funny application, whereas Wife is a full operating system. In place upgrades are barely likely to succeed.
667: The neighbour of the Beast
|
|
|
|
|
yes you will have to update the installer,
it'll the realise that your vs is itself not the latest, you'll have to update that too,
then you may uninstall it.
Are you sure?
now behave! that is the way ms made it.
there are no choices, ms has decided everything for you - in your best interest of course.
(Be reassured: the uninstaller will leave a sh*t load of crap behind, once again because ms have decided that is the best thing to do, because .... it's what you want must have.)
Message Signature
(Click to edit ->)
|
|
|
|
|
One word: RevoUninstaller[^]
Jack of all trades, master of none, though often times better than master of one.
|
|
|
|
|
not so much for VS, installing VS often includes other components such as various SQL Server modules, help readers, .net runtimes etc that are automatically [sub] installed in their own right. (i.e. they have their own completely separate installation packages, look like (because they are) completely separate items in the installed programs list)
the vs uninstaller doesn't always uninstall those even though they might never be used again, and as separately install-ered items revo wont (cant, and in fact shouldn't) recognize them as needing to be removed either.
so no, revo and it's kin are no solution either; there will be baggage.
I never bother with those "make windows better" crapware-for-weenies things, they either still only do half the job, or in some cases even break things they shouldn't touch... in complex business environments I've actually seen that revo shite fark things up twice, it was no fun at all.
Message Signature
(Click to edit ->)
|
|
|
|
|
the installer is a bootstrap over the installer.
I'd rather be phishing!
|
|
|
|
|
The problem is probably caused by the fact that you applied a VS2017 update and the installer can't uninstall it because the versions are different. IMHO, that's piss poor planning on microsoft's part. It's almost like we're still living in the early 90's.
Beyond that, I though VS2017 had a community edition that is free. Why would it "expire"?
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
I am certain that no updates were applied (at least by me). I wanted to see what architecture related options are available and also to check out intellitest. Both are not available with community.
"It is easy to decipher extraterrestrial signals after deciphering Javascript and VB6 themselves.", ISanti[ ^]
|
|
|
|
|
btw, a trial version?
why not the community version???
can try it forever... or at least till they properly break it.
Message Signature
(Click to edit ->)
|
|
|
|
|
Enterprise edition is needed for intellitest and few architecture related features.
"It is easy to decipher extraterrestrial signals after deciphering Javascript and VB6 themselves.", ISanti[ ^]
|
|
|
|
|
The installer is simply another application whose job is to put a second application in place on a system for you to use. Installers routinely include uninstallation logic, given that the two processes are complimentary. Between the time you installed the trial version of VS2017 and now, someone found a bug in the uninstall logic and Microsoft had to fix it.
Frankly, I think the fact that they were smart enough to allow for this case isn't a bad idea. Visual Studio 2017 is a complex application, with lots and lots of installation options. It doesn't surprise me that the uninstall is complicated.
They could have simply published instructions for you to fix the problem by hand, if the uninstall problem is even addressable that way.
Software Zen: delete this;
|
|
|
|
|
This is why I stick to VMs. Especially to run some trialware. You can be absolutely certain no component is left behind.
|
|
|
|