Hallo,
Solange die
DLL geöffnet ist, kannst du sie nicht ersetzen (geschweige denn würde der neue Code ausgeführt werden können).
Mach in deinem Bot eine Schnittstelle über die man sagen kann "entlade-die-
dll", dann wird sie ersetzt und dann kommt ein neues Kommando "lade-die-
dll". Die schnittstelle könnte einen named pipe sein oder er hört auf einem lokalen UDP-Socket - das ganze wird dann einfach mit nem Hilfsprogramm angesteuert.