max 8.2 Error 126 loading external 11strokes2

    Oct 13 2021 | 2:56 pm
    Hello, I have an "Error 126 loading external 11strokes2" and [11strokes2] is brown. This external didn't move since the 8;2 install, it is still in the external folder of max..
    any idea ?
    thank you !

    • Oct 13 2021 | 6:39 pm
      If you are on Windows, it may be that these externals have a dependency that Max no longer ships with. Error 126 usually means that a DLL that an external depends on is missing, often the Microsoft CRT redistributables.
      In order to figure out what is actually missing, you can try running Procmon: and see what output is generated when Max tries to load the external. This external could be recompiled with a more recent version of the dependency.
    • Oct 13 2021 | 11:00 pm
      Hi, please download the latest version of 11strokes (11strokes2 is a prev version). I'm sure the Max 8.2 update did not break the external. For me it's working like before.
    • Oct 14 2021 | 5:00 pm
      Thank you 11OLSEN for your response. I didn"t manage to make it work again even with "11strokes". Everything is in the search path. I rebooted the PC.. Do you have any idea of the culprit ?
      still "Error 126 loading external 11strokes" in the console.
      I didn't change anything in my computer, I just installed max8.2 and the last live 11.1b4...
      thank you !
    • Oct 14 2021 | 5:30 pm
      @ Ben Bracken I tried to look at Procmon.. When I hit a button linked to "11strokes" in my patch, Procmon only sends a long list with "succeed" for each...
      EDIT : on 8.1.11 : 11strokes works.
    • Oct 14 2021 | 5:35 pm
      Procmon will need to be used when the external is loaded.
      You might get the info you need out of running 'dumpbin /dependents <binary>' in a command prompt:
      Another thing you can try is Dependencies:
    • Oct 14 2021 | 6:25 pm
      I am going to try that. ..I am more a musician than an informatician, and my english is bad. "when the external is loaded" means "when I open max" ?
      sorry but I don't understand too what I have to do with : " running 'dumpbin /dependents <binary>' in a command prompt: " * * sorry =)
      At any rate (<-google trad), this external was not working after 8.2 install, and works again after desinstalling 8.2 and reinstall 8.1.11... ..what is even weird is that after reinstalling 8.2, with still 8.1.11 on the compturer, this external (here, at least) don't work anymore even in 8.1.11...
    • Oct 14 2021 | 6:28 pm
      here's my Dependencies output if it helps
    • Oct 14 2021 | 6:53 pm
      ..what is even weird is that after reinstalling 8.2, with still 8.1.11 on the compturer, this external (here, at least) don't work anymore even in 8.1.11...
      yes weird! Try Dependencies and drop the 11strokes.mxe64 into. Do that with 8.2 installed and without and see if Dependencies shows any difference.
      "when the external is loaded" means "when I open max" ?
      I think Ben means the moment when you have written the object name into the box and hit enter. That's when the missing dep. gets detected and you might have some output in procmon. But you need to set a filter for procmon e.g. to Max.exe or it's hard to find anything because of the amount of messages.
    • Oct 15 2021 | 11:55 am
      If I install only 8.1.11 [11strokes] is working but if I drag the file in Dependencies I have an error with maxAPI.dll
      after installing 8.2 : MSVCR11.dll has a problem too and [11strokes] doesn"t work anymore in 8.1.11
      After 8.2 install, if I create [11strokes] in a nw patch there is this log in Procmon when filter only includes max.exe
    • Oct 15 2021 | 12:26 pm
      solved by downloading MSVCR100.dll on the internet.
      @11OLSEN. don't you think there is a problem that installing 8.2 delete this dll ?
    • Oct 15 2021 | 1:41 pm
      @schlam I believe that this is simply the windows installer system that when upgrading versions, it removes any additional dependencies that have been installed for previous versions. It doesn't pay attention to any old versions which might be still be present in a manually copied folder. In Max 8.2, we decided to cut ties with some of these very legacy mscvr libraries. Apologies for the inconvenience.
      Users such as yourself that want to keep using objects that were relying upon Max's version of these dlls are recommended to install them manually. I would recommend that you use the microsoft installer rather than grabbing just the DLL. More detailed information below:
    • Oct 15 2021 | 2:04 pm
      .thank for your response ! Even if 8.2 doesn't use this library anymore, maybe it should not remove old libraries for backward compatibility ? I don't understand too why the installer " doesn't pay attention to any old versions ". It was a pity to undersdtand how to install 8.1.11 and 8.2 on the same computer.
      About your link , I tried that but once 8.2 is installed again, msvcr100dll seems to be deleted again... I am not an informatician at all...maybe it's my fault.. =)
    • Oct 15 2021 | 2:06 pm
      @11OLSEN : with what joshua said is it strange that for you [11strokes] continues to work on 8.2 without reinstalling msvcr100dll isn't it ?
    • Oct 15 2021 | 2:22 pm
      @Joshua Kit Clayton That is maybe ok for now but do you think recompiling the external against the latest sdk would change anything?
    • Oct 15 2021 | 2:30 pm
      @11OLSEN : with what joshua said is it strange that for you [11strokes] continues to work on 8.2 without reinstalling msvcr100dll isn't it ?
      yes, maybe the file is present also at another location on my system, i'm not sure
    • Oct 15 2021 | 2:37 pm
      @11olsen Yes, building with a new SDK, VS2015 or higher (Which instead relies on the universal C runtime) and new cmake generated project files should definitely solve that issue. Let us know if you have any issues.
      @schlam Anyone who had that installed as part of another program or developer tools or manually installed would likely not have the experience of it being removed as you had. Those are relatively outdated C runtimes.