Support Board
Date/Time: Thu, 27 Feb 2025 09:23:48 +0000
[User Discussion] - Using SC build system from different folders
View Count: 839
[2021-01-31 15:18:20] |
User30743 - Posts: 365 |
This is the first time I am trying SC build system for compiling my code, but how do I actually navigate to a different folder then ASC_Source to send the code? So far I have been using Visual Studio but since there is a need to close and open Siera to see the change after each slight change in the code, I am forced to switch to their build system. I am not particularly happy about that since VS is a pretty good IDE, but anyway, I gave it a try and it does not look too bad. But the problem is that I have multiple files in multiple folders, reflecting the logic, the naming conventions etc, and I want to keep that folder's structure as is since it is nicely organized, tracked by Git and so on. So how do I actually find the source files when they are not in /ASC_Source folder only? There is no way to navigate to any other? Date Time Of Last Edit: 2021-01-31 15:24:08
|
[2021-01-31 19:11:45] |
User907968 - Posts: 833 |
since there is a need to close and open Siera to see the change after each slight change in the code
This is not correct, you simply need to release the DLLs, paste in your newly compiled DLL, and reload DLLs, that's all. Release DLLs - Analysis Menu: Release All DLLs and Deny Load (Build Advanced Custom Studies DLL Window >> Build) Load DLLs - Analysis Menu: Allow Load DLLs (Build Advanced Custom Studies DLL Window >> Build) No reason not to continue using VS and compiling externally. |
[2021-02-01 08:33:33] |
User30743 - Posts: 365 |
hello, this Selecting Release All DLLs and Deny Load is something I don't understand how to do. I am probably really dumb, but I simply could not make it work... Could you possibly make a short video of how you do that?
Date Time Of Last Edit: 2021-02-01 08:34:35
|
[2021-02-01 11:04:50] |
User907968 - Posts: 833 |
If you want to update the custom study dll whilst Sierra Chart is running, just follow these steps and you should have no problem: 1) Compile your custom study in VS 2) In Sierra Chart select menu item 'Analysis' -> 'Build Custom Studies DLL' 3) In the new opened 'Build Advanced Custom Studies DLL' window, select menu item 'Build' -> 'Release All DLLs and Deny Load' (Don't close the window though) 4) Paste your freshly compiled custom study DLL (from step 1) into the appropriate SC\data folder 5) In the 'Build Advanced Custom Studies DLL' window, select menu item 'Build' -> 'Allow Load DLLs' and close the window if you wish That is it. If you are regularly using these commands, you could instead consider adding control bar buttons for this functions, there are control bar commands available for both releasing and loading DLLs. One thing to be aware of, if you are using persistent pointers in your custom studies, then you should either close the chartbook or remove the study instance before releasing the DLLs, otherwise you will end up with invalid pointers. |
[2021-02-01 20:21:14] |
User30743 - Posts: 365 |
I took time and did it EXACTLY as you say, since I was really interested If it will do the job. But it did not.. So, here again, one more time. 1] I took some code and compiled in Visual Studio 19. The output folder for it is as shown in the picture https://prnt.sc/xzplsm 2, 3] Before I moved the DLL into Sierra\Data folder https://prnt.sc/xzpq9g, I opened a chart and clicked 'Build' -> 'Release All DLLs and Deny Load' https://prnt.sc/xzptvo and kept the window opened. 4] Then I moved the DLL to the Data folder https://prnt.sc/xzpxap 5] Then I clicked 'Build' -> 'Allow Load DLLs' and close the window https://prnt.sc/xzq1o6 And then I loaded the study see it in the chart of course, and make a change in the code and recompiled in VS 19 https://prnt.sc/xzqggz And I want the change to be reflected on the loaded chart without doing anything extra (like closing/opening Siera, or moving/copying some files here and there. But it does not work - of course it does not work when my Target to save is in C:\ASCIL\... so whenever I recompile it, this one is affected, not the one the Sierra\Data folder.. ) So am i really that stupid that I cannot follow 5 simple steps to make something work? Or is there something else that I cant understand. I surely suck at C++ build system internals, but I should be able to follow 5 simple steps.. Date Time Of Last Edit: 2021-02-01 20:27:12
|
[2021-02-01 20:45:09] |
User30743 - Posts: 365 |
seems like I got it. the target folder must still be pointing to Sierra\Data
|
[2021-02-05 18:16:02] |
joezy555 - Posts: 4 |
somehow I lost custom studies that I adjusted to suit me, and they're all gone now. It says the Sierrachartstudies.dll needs to be recompiled to be using this version 2218 exactly how I do that? -resubmitted due to spelling errors |
[2021-02-05 18:45:04] |
Ackin - Posts: 1865 |
It says the Sierrachartstudies.dll needs to be recompiled to be using this version 2218 exactly how I do that?
Versions 2215-2225 are not very good versions, upgrade to 2226 before you start doing anything else. The Sierrachart default studies must work in the basic installation. Recompilation only applies to custom studies (your own). more: Advanced Custom Studies DLL Loading Management How to Build an Advanced Custom Study from Source Code How to Build an Advanced Custom Study from Source Code |
[2021-06-29 19:33:18] |
User30743 - Posts: 365 |
One thing to be aware of, if you are using persistent pointers in your custom studies, then you should either close the chartbook or remove the study instance before releasing the DLLs, otherwise you will end up with invalid pointers.
how is this possible? that is exactly what i dont want to do -- all the time closing/openning chartbook etc. Date Time Of Last Edit: 2021-06-29 19:33:50
|
To post a message in this thread, you need to log in with your Sierra Chart account: