Login Page - Create Account

Support Board


Date/Time: Thu, 19 Jun 2025 05:38:37 +0000



Can't load my DLLs that work in Sierra on my local computer, on another computer

View Count: 1156

[2022-06-28 13:03:33]
ycomp - Posts: 324
I used to compile my code with the sierra chart uploader compiler.

So we will call those "old dlls"

some time ago I switched to Visual Studio 2022 instead.

we will call dlls created by VS "new dlls"

old and new same dlls just compiled by different compilers.

I have no problem using new dlls on my local computer in the various folders that I have copies of SierraChart installed in. e.g. my "DEV" instance and others.

Also these local Sierra Chart copies (I only run the 64bit versions).. don't seem to care if the dll file ends with "_64" or not.


*** VPS ***

I also run Sierra on a VPS. This is where I am having problems. It is windows server 2019, so pretty recent. It runs sierra chart fine, except for trying to run the new dlls. I also run 64 bit there.

I assume the old dlls are 64 bit.. however they do not have the "_64" dll suffix

however, the old dlls will also work fine if copied to my local computer in DATA folders of Sierra copies there.

So on my local computer I can run both the old and new dlls. But on the VPS only the old dlls.

If I try to copy in the new dlls instead, what I will get is:
- they don't show up in the Add Custom Studies dialog (they do on my local computer)
- existing chartbooks that have studies that work with older versions of the dll will say something about the DLL file not existing (even though it does at that specific location that was mentioned) or `SCDLLName` not being used (which it is, I confirmed both in my source and buy using `dumpbin`)

I have many dlls in the log but they all give these same messages as below. For the example below I'm using my `yScrolledback` dll

````
InternalVersionNumberToFileNameMap is empty for yScrolledBack | 2022-06-28 07:12:10.443 *
Error loading: C:\SierraChart\Data\yScrolledBack.dll. File not found or may be missing SCDLLName line. | 2022-06-28 07:12:10.443
````
(NOTE: like I mentioned above the dll does exist at this location and does use SCDLLName - and does work on sierra on my local computer)

````
Found DLL: yScrolledBack.dll | 2022-06-28 07:13:04.570
````

````
yScrolledBack.dll loading error. Windows error code 126: The specified module could not be found. | 2022-06-28 07:13:04.600
VersionNumber is 0 for yScrolledBack.dll | 2022-06-28 07:13:04.600
InternalVersionNumberToFileNameMap is empty for yScrolledBack | 2022-06-28 07:13:04.600 *
Closest match search for: C:\SierraChart\Data\yScrolledBack.dll returned empty result. | 2022-06-28 07:13:04.600 *
````

any ideas what might be causing this? The version of Sierra on the VPS is the latest version. but it also had the same problems about only working with the old dlls and not the new dlls before I updated to the latest version.. I believe it was 2390 before or some version around that number.
Date Time Of Last Edit: 2022-06-28 13:27:56
[2022-06-28 13:35:43]
Sierra Chart Engineering - Posts: 104368
If the DLL is dependent on any other DLLs, then those need to be present on your system. That is where you need to look.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2022-07-02 21:03:12]
ForgivingComputers.com - Posts: 1068
I have had times when after following what I think are all the steps, the study still doesn't show up. Double-check that the correct CPP file was selected, and if changes were made, that it was saved. Restarting Sierra Chart has also cleared things up.

I suggest you try having just one copy of a DLL. So if My_Study.cpp creates My_Study_64.dll then there should be no My_Study.dll. 64-Bit SC does not recognize DLLs without the "_64". If the problem goes away, then you are done. If you still don't see the study in Add Custom Study, then there is something else going on. One copy should work everywhere, it is when there are multiple DLLs with the same partial name that a decision has to be made by Sierra Chart on which to open.

Also, building with Visual Studio in Release mode creates a smaller DLL than the remote build creates, so I would recommend rebuilding all DLLs on a recent if not the latest version of Sierra Chart. And make sure the VPS and local SC versions match.
[2022-07-03 10:04:26]
Sierra Chart Engineering - Posts: 104368
This is definitively not true at all:
. 64-Bit SC does not recognize DLLs without the "_64".

No this is not true if it has dependent DLLs:
One copy should work everywhere,

Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2022-07-03 10:06:41
[2022-07-03 11:52:27]
ForgivingComputers.com - Posts: 1068
This statement is inconsistent with the documentation here: How to Use an Advanced Custom Study or a Study Collection: Custom Study Not Listed or Not Displaying on Chart
This is definitively not true at all:
64-Bit SC does not recognize DLLs without the "_64"


No this is not true if it has dependent DLLs:
One copy should work everywhere
As far as Dependent DLLs go that makes sense. My point was that all DLLs should be built for the 32 or 64-bit architectures.
[2022-07-03 12:05:06]
Sierra Chart Engineering - Posts: 104368
No, you are inferring more from this than intended:
Both the 32-bit and 64-bit DLL file which contains the custom studies can and will exist at the same time in a Sierra Chart installation, if they have been built. Each of these has a different filename. The 64-bit DLL simply has _64 at the end of the filename.

_64 has never been needed. If we ever required this, it would have been a mistake. Not loading a DLL just because it is missing _64 would create issues.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2022-07-03 12:05:41

To post a message in this thread, you need to log in with your Sierra Chart account:

Login

Login Page - Create Account