Ich habe eine Dll (C++), die eine data_seg enthält, die zum Teilen von Variablen unter anderen Programmen verwendet wird. Es funktioniert und viele Programme verwenden es (30+). Das Problem ist, dass ich diese Bibliothek in ein neues Projekt eingefügt habe, aber die Variable, auf die ich zugreifen möchte, ändert niemals ihren Wert. Ich muss das Programm neu starten und jetzt ist es mit den anderen Programmen synchronisiert und ich kann den letzten Wert einer Variablen sehen. Irgendeine Ahnung?Dll und gemeinsame Variable
Vielen Dank.
Haaaaaaard zu erraten, ohne zu wissen, wie Sie tatsächlich, dass der Speicher teilen ... –
DLL-Variablen sind nicht * shared * zwischen Benutzern von Bibliotheken (users = processes), jeder Prozess, der von library abhängt, hat seine eigene Variable, wahrscheinlich verursacht ein Neustart des Programms das Laden des Wertes, weil er den Wert von einigen externen Informationen initialisiert. –
Nicht nur jeder Benutzer, jeder Prozess! Dies ist jedoch nur dann richtig, wenn die Variable nicht auf eine Art Shared Memory verweist (siehe zB https://msdn.microsoft.com/en-us/library/windows/desktop/aa366878%28v=vs.85%29 .aspx). – Aconcagua