I may have misunderstood your question or what you are actually trying to do, but if not...
If the code that you are referring to is setting the data of a control in a GUI, then you don't need to do anything special other than making sure that the control's font can display the character/symbol/emoji. As you can see below, I have used 2 fonts that can display the speaker, Segoe UI Emoji and Segoe UI Symbol. Each font represents the same symbol a little differently, so which font you choose makes a difference. If the code you are referring to is setting the data of some other output, like a log file, then the same is true. You need to make sure that the special characters are displayed using an appropriate font.
Example:
#include <GUIConstantsEx.au3>
; Define form
Global $Form1 = GUICreate("Form1", 196, 151, 402, 124)
Global $Label1 = GUICtrlCreateLabel("", 72, 32, 36, 20)
Global $Label2 = GUICtrlCreateLabel("", 72, 62, 36, 20)
; Set control fonts
GUICtrlSetFont($Label1, 12, 400, 0, "Segoe UI Emoji")
GUICtrlSetFont($Label2, 12, 400, 0, "Segoe UI Symbol")
GUICtrlSetData($Label1, "🔊")
GUICtrlSetData($Label2, "🔊")
GUISetState(@SW_SHOW)
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
Displayed form:
Edit:
In regards to the question in your topic's title and the example script in your initial post:
Even if ChrW()/AscW() would've worked, MsgBox() wouldn't have displayed the speaker symbol correctly. That's because MsgBox(), with default system fonts, does not use a font that will correctly display the speaker symbol.