unresolved external symbol "void __cdecl maxon::_ConsoleOutputC4D when compiling under R19.
-
Pinned it down to
DiagnosticOutput(String());
-
Use maxon::String
-
And here another one
DiagnosticOutput("Loading Project: " + fn.GetString());
So I should use
DiagnosticOutput(maxon::String());?
And what to use for this one?
DiagnosticOutput("Loading Project: " + fn.GetString());
-
DiagnosticOutput() statements like these
DiagnosticOutput("Rendering successful: " + maxon::String::FloatToString((GeGetTimer() - starttime) / 1000.0) + " sec.");
give me the following warning:
Normal DiagnosticOutput() are ok
DiagnosticOutput("Rendering successful: ");
-
This is part of the R15 transition Change in R15, more information on
Debugging - Conversion To String and String - Creation Manual.And you are looking for maxon::FormatString
Cheers,
Maxime -
Ok, I will read and try to understand.
Pim
-
Yes, I should have read the manual.
In R19 it is GeConsoleOut() and not DiagnosticOutput() -
@pim
I have the original R16 and R19 SDK documentation installed locally, and there I do findDiagnosticOutput
.
As such, I am still wondering what the issue is you have.here's an excerpt from the R16 SDK documentation:
#define DiagnosticOutput ( fmt, ... ) DiagnosticOutput outputs text into the console. The output is visible in debug builds or in a release build when the debug console with diagnostic output is activated. The full printf syntax can be used for the format string. THREADSAFE.
To me this seems mostly identical to what the current R21 online documentation mentions.
So in theory it should be no problem for R19. -
Yes, strange.
But going from DiagnosticOutput() to GeConsoleOut() solved the issue.
Using maxon::String in DiagnosticOutput() seems to be the issue. -
Looking at the doc in R19:
So I'm afraid there is no simple solution that will work on each version maxon::String being introduced in R20, you will need to adapt your code.
Cheers,
Maxime.