Half Day

Sep. 12th, 2017 10:36 pm
billroper: (Default)
The girls had a half day off from school today, which maximized the amount of chaos around the house. But nothing too odd happened, so...

I am continuing my work on porting our C++/C# code up to Visual Studio 2017. This would be less entertaining if Microsoft hadn't changed their locale support in the CRT library around to hide all of the internals. Gack!

Plugh!

Sep. 6th, 2017 11:27 pm
billroper: (Default)
I am trying to port some of our old code to Visual Studio 2017. Unfortunately, the programmer who wrote one of the sections of code used some internal structures relating to locales that are no longer exposed by the header files. I understand why he did it, but I now get to figure out how to disentangle it.

This is about as much fun as it sounds like. :)

OS Wars

Sep. 1st, 2017 11:55 pm
billroper: (Default)
I may have gotten Katie's computer working again with a bare metal reinstall of Windows 10. The number of little glitches in this version is dismaying. The Wi-Fi kept cutting out on this box -- not on the identical one that Gretchen and Julie use -- for reasons that appear to be subject to any number of voodoo solutions. One of them seems to have worked.

Of course, I spent some time before applying a voodoo solution to get Windows 10 to stop thrashing my hard disk on my computer in the last two days, so...

I understand that there are some difficulties in getting an OS to run on a variety of hardware choices. Even so, this is just being exceptional.

And not in a good way.
billroper: (Default)
After numerous failed efforts to fix Katie's computer without doing a bare metal reinstall of Windows 10, I finally gave up and did so. Tonight, I finally got around to configuring it, installing anti-virus software, and getting Katie set up to log back in.

Then Windows decided to install updates. Now, the computer is in the same Automatic Repair failure loop that it was before. There are two System Restore points, but neither of them will allow a restore to actually occur.

I am not happy.
billroper: (Default)
Progress has been made. More progress will be made in a few minutes when I go upstairs with Gretchen and install the curtains in Katie's room on the Command brackets that we mounted earlier today.

In the meantime, Gretchen, Katie, and Julie put together an excellent lemon icebox pie based on a recipe from the Trib. This proved to be a fine dessert when Sam and Bonnie came by for dinner, which consisted of grilled hamburgers, chips, and sweet corn. And conversation. Lots and lots of conversation.

Back in the basement, I spent part of the early afternoon reinstalling plugins. Once everything was installed, it was time to fire up Cubase.

Oh, look! The menu is no longer vanishing. Projects open, close, and open again without crashing the system.

Of course, there were a few glitches. I had to manually point to the directories where some of the plugins were installed, but that was fairly easy once I figured out which plugin libraries were missing.

And then there was the X-Touch Extender, which was eventually persuaded to talk to Cubase and pick up all of the information that was being sent down the wire. The scribble strips were being particularly challenging.

But it appears that everything is working now.

And the weekend is over.

Maybe I'll mix something next weekend. :)
billroper: (Default)
In the top of the news, the Cardinals have won eight games in a row and find themselves in a virtual tie for first place in the NL Central with the Cubs.

In other news, no one on the North Side of Chicagoland is speaking to me. :)

I have backed up the critical files on the studio computer preparatory to reloading the OS. After doing that, I discovered that the Windows 10 Creators Update has a new feature that will reload the entire OS, boot out all of the installed non-Windows applications, and leave your files intact.

I am, nevertheless, happy to have spent the time backing up the files.

But think about it! An OS that is so wonderfully stable that it now comes with its own built-in option to reload itself to clean up the trash that it's left lying around while leaving your files intact.

It's sort of the neutron bomb of operating system functions.

Windows 10 -- what an OS!

Ah, and we had the first serious softball practice for fall ball today. It went very well. Yay!

And Katie got her hair cut much shorter today.

That's the news. Time for bed!
billroper: (Default)
Maybe not as much as I might have hoped, but there is progress.

  • We had softball practice this morning.
  • We picked up the rest of the school supplies for the girls.
  • Gretchen took Katie for a haircut, while I went home to throw the ball for Ruby.
  • While doing this, I read Previews, rearranged my plans for Cubs games, and checked the Internet.
  • I have now moved the laundry.
  • And I am backing up all of the data on the studio computer before I try a bare metal reinstall of Windows 10 to fix my Cubase problems.

    See, no one else is reporting Cubase problems, so I conclude that something here is corrupted. And it is likely to take less time to completely rebuild the machine and reinstall everything than continue to troubleshoot it. But this requires the data to leave this box and go off to the NAS.

    So here we are...

    *sigh*
  • billroper: (Default)
    I got some help from tech support at Universal Audio, although eventually I just gave up, uninstalled the UA drivers, reinstalled the UA drivers, found that didn't help, repaired the UA drivers, found that didn't help, uninstalled the UA drivers, reinstalled the UA drivers, and finally I was able to load UA plugins inside of Cubase. Gack!

    Cubase, on the other hand, remains ill. Although I can now open a project, when I do the Windows menu vanishes from the menu bar, although you can see the individual entries as you mouse over them, so it is not so much vanished as turned invisible. When you close a project and reopen it, the Mix Console window opens up and shows nothing in the area where you would normally see the plugins, routing, and faders other than the outlines for each of those windows. Then when you try to operate on it or close it, Cubase crashes.

    Well, it worked for UA. Let's uninstall Cubase and reinstall it.

    And guess what?

    It didn't help.

    I am becoming increasingly annoyed at this supposedly stable and safe-for-business update.

    No, it appears that you can't revert to the earlier version of Windows 10 either...
    billroper: (Default)
    This seems an inherently unfair match up. There's only one of me and there are thousands of people working to make things not work when you get an OS upgrade.

    Ok, I am excessively cynical. But I am now starting to wonder if a vagrant Windows 10 update is the thing that is causing Cubase to misbehave so badly. The UA plugins simply won't load at all. The menu is MIA (although you can see individual entries by mousing over them). The program crashes every time you close it once you open a project.

    I've tried pulling the Mackie Control drivers out. That hasn't changed anything. So now I am on to checking out Windows 10 and discovering that there is a big fix to the update that they just pushed.

    Except when I try to load it, the download stops at two percent. Oh, joy.

    So I am now running a system scan to see if Windows is basically sane, in the hope that will allow me to download an update that may work better with Cubase.

    Assuming that it's Windows that is the problem.

    It could be something else, you know.
    billroper: (Default)
    I figured out the source of yesterday's problem.

    I had put in a forward definition for a class in a header file so that I could declare a pointer to an object of that type inside the class that was defined in the header file. Like this:

    class AnotherClass;
    
    class ThisClass
    {
    ...
      AnotherClass*   anotherClassInstance;
    };
    


    When I destroy ThisClass, I want to destroy the instance of AnotherClass that it contains. No problem. I'll just call delete on the pointer like this:

    delete anotherClassInstance;
    


    That should work just fine.

    Except it didn't. Because I hadn't actually included the header file for AnotherClass in the .cpp file for ThisClass. What I would have expected was that this should have produced a compile error telling me that I was operating on a class that hadn't been completely defined.

    But there was no compile error. Instead, the Visual Studio compiler just called delete on anotherClassInstance like it was a pointer to a random chunk of memory with no destructor.

    Hilarity ensued.

    Well, at least I should remember what caused me to waste so much time the next time I run into this problem...

    *grumble*
    billroper: (Default)
    Foolishly, I trusted Microsoft's assurances that the girls' computer and apps were Windows 10 compatible. Foolishly, I believed that things could be rolled back the same day that I'd run the Windows 10 upgrade.

    Lies. All lies.

    I tried doing a partial restore from the Acer hidden partition. That reinstalled Windows 7 partially, but the install couldn't finish for some unspecified reason. I finally gave up and wiped the old installation out completely, losing all of the Minecraft Worlds on that machine, but I did manage to get Windows 7 to boot again before going to bed some time after 3 AM. I set the machine to download updates, of course.

    A shame I didn't think to turn off the sleep function. A shame that the sleep function will shut the machine down in the middle of downloading updates too. Who designed this mess?

    Oh, right. Microsoft.

    I turned off the sleep function in the morning and managed (finally!) to get the updates downloaded and installed. And then I had to reinstall the critical software which was -- happily! -- not much.

    Well, it's a clean machine.

    Should have renamed it "Penny Lane"...
    billroper: (Default)
    So since Microsoft claimed that Windows 10 was compatible with the newer of the bedroom computers and the apps installed there, I figured I'd go ahead and run the upgrade from Windows 7. It looked like everything ran fine.

    Right up until Katie tried to run Minecraft. Minecraft won't run, because the default driver that Microsoft installs for this old Intel chipset doesn't support OpenGL. There is no Intel driver for Windows 10 and the older drivers won't install.

    So I figured I'd uninstall Windows 10 and revert back to Windows 7.

    Except that option is missing.

    I've tried telling it to go back to an older version via a different restore path, but the computer has been sitting there for hours now saying "Restarting".

    Thanks, Microsoft, for making my little girl cry.

    "Compatible". I do not think that word means what you think it does.

    Rat bastards.
    billroper: (Default)
    A bit less than eight years ago when I was building George Washington's Computer (so named, because I have replaced everything on it except the motherboard, CPU, and RAM), I made a mistake. I decided that I would install 32-bit Windows Vista Ultimate instead of the 64-bit version. Despite the fact that I've upgraded from Vista to Windows 7 and now to Windows 10, this decision leaves me mired on the 32-bit version which is seeming like a worse and worse idea. Now, it's possible to upgrade to the 64-bit version using the license that I have, but that would mean wiping the machine and reloading all of the software and data. This is most of the work that's required to actually build a new computer.

    Of course, it's also cheaper than building a new computer. And since George's box has a quad-core Intel CPU running at 2.4 GHz, it's pretty fast all things considered. A new computer would be faster, but not enough faster to justify paying to build a new box. And reloading all of the software isn't really worth it to get to 64-bit. So here I am.

    I had thought that I might need to upgrade to 64-bit just to get a stable set of video drivers, but NVIDIA finally released 32-bit Windows 10 drivers for my card that don't crash continuously. This makes me happy.

    But then there was this afternoon's adventure. I needed to resize an image in Photoshop, so I started up the application, which promptly hung with a hidden window complaining about a bad monitor profile. I thought that I'd fixed this problem, but apparently not. A bit of Googling pointed me in the right direction and I went to delete the profile, but I couldn't because the profile was in use.

    OK. I'll reboot. Except first, the system wants to install updates. Fine.

    And once it rebooted, I still can't delete the profile, because it's in use.

    OK. I'll reboot to Safe Mode. How the heck do you do that in Windows 10? Back to Google...

    Once I rebooted in Safe Mode, I was able to delete the offending monitor profile. In fact, I deleted all of the monitor profiles. Then I deleted a few trillion scanner profiles from a MicroTek scanner that we no longer have, because eight years is a long time and drivers are something that companies don't maintain.

    And after rebooting one more time, I was able to run Photoshop and resize the image so that I could finish up the project I was working on.

    *sheesh*
    billroper: (Default)
    So after my enforced Windows 10 update from last night, I attempted to log in this morning.

    In round 1, my Start Menu had been reset to the default, my wallpaper was missing, and none of my files were accessible.

    Then the machine crashed out when I tried to log out.

    Round 2: I log in and am given the "Hi. Your computer has been updated. All of your files are where they used to be." message. Miraculously, the files are there when this nonsense abates and I am allowed to log in. My wallpaper was still missing. I am run through the procedure to establish a Microsoft One Drive which I don't intend to use, but which I figure I will let it do to get it to shut up. And when I tried to go to the Start Menu, it crashed and I got a message telling me to log out to reload it.

    Round 3: So I log back in. Now I have my correct Start menu back and can access my files. I pull up my email and try to display one of the mails in my default browser, Google Chrome.

    The email displays in Microsoft Edge.

    I fire up Google Chrome. It says that it is still my default browser.

    Apparently, "default browser" does not mean what you think it does, grasshopper...
    billroper: (Default)
    Ever since I installed Windows 10 Professional on George Washington's Computer, it has become decidedly less stable. The video drivers are crap and reset themselves frequently with no real pattern. Sometimes, the machine just crashes and reboots itself, probably due to the same crappy video driverz.

    Right now, the system has decided to install updates without asking. Maybe this will be an improvement.

    But I doubt it.
    billroper: (Default)
    George Washington's computer is not reacting well to the upgrade to Windows 10. It has developed an annoying habit of restarting the display driver and/or rebooting the system. Apparently, the NVidia drivers for 32-bit Windows 10 are buggy as all get out.

    I could try upgrading to 64-bit, but that would require a wipe and reinstall of everything. At that point, building a new computer looks like a better and better idea.

    But who knows? Maybe NVidia will ship some video drivers that actually don't crash.

    Maybe.
    billroper: (Default)
    The good news about having worked with various versions of Windows for a long time is that I can usually manage to figure out how to fix things that go wrong after an OS upgrade. (Because things go wrong after an OS upgrade.) And Google is my friend.

    Tonight's entertainment was that my Adobe Photoshop CS 5.1 wouldn't start. It turned out that there was a dialog about a bad Samsung monitor calibration that I had been able to click through in earlier versions and ignore that was now both present and completely inaccessible. The only thing to do was to kill Photoshop in Task Manager which did nothing for getting my work done.

    But I applied my Google-fu and eventually:

  • Edited the registry
  • Ran the Windows Color Management software to try to delete the bad profile
  • Ran the Windows color calibration software

    By the time I'd done the last of these things, Photoshop would run again.

    *sheesh*
  • billroper: (Default)
    I let Microsoft upgrade my main computer to Windows 10 a couple of days ago. It's only being moderately annoying, save for the fact that the "Microsoft Solitaire Collection" stubbornly refuses to run.

    What good is a computer with no solitaire game? :)
    billroper: (Default)
    I found and fixed the COM problem from yesterday. It may have been an uninitialized IStorage pointer -- I'm not sure. But I fixed that and converted all of the property set handling to use smart COM pointers and the problem went away, so that's a good thing.

    Then I fixed a couple of different serialization problems. One was a newer version of the C++ serialization that hadn't been copied to Java. The other was a problem with some old software that had allowed a bad combination of methods on a dialog; I patched it by correcting the values on the inbound fly, so I had to fix that both in C++ and Java.

    But they're better now!
    billroper: (Default)
    We still use OLE compound document files to store our entities on a desktop. This normally works pretty well until someone does something odd in our code. In this case, what someone did was some fancy footwork with opening and closing the storage underneath a document in order to get it to be smaller than it would otherwise be by saving it as a new storage.

    The only problem is that it doesn't work. It looks like something else has grabbed a reference to the underlying IStorage and the associated IPropertySetStorage.

    Figuring out what did this is just a wee bit challenging since there's no way to directly observe the reference counts in the debugger. The only way to get a reference count on a COM object is to AddRef and Release it, each of which will return the current reference count. And that trick doesn't work if you used a smart COM pointer, because you aren't allowed to AddRef and Release those directly, so you have to create a new reference to the IStorage and AddRef/Release it to get the overall reference count.

    At the moment, I am extremely annoyed and getting ready to add a lot of instrumentation to this mess so I can sort it out.

    *grumble*

    In other news, Katie asked me to send you a message: :)

    Profile

    billroper: (Default)
    billroper

    September 2017

    S M T W T F S
          1 2
    3 4 5 6 7 8 9
    10 11 12 13 14 15 16
    17 18 1920212223
    24252627282930

    Syndicate

    RSS Atom

    Most Popular Tags

    Style Credit

    Expand Cut Tags

    No cut tags
    Page generated Sep. 20th, 2017 05:33 am
    Powered by Dreamwidth Studios