Missing prepare_window_handle message

i need to set my own window_handle but using gst_parse_launch function then prepare_window_handle message is never fired. is this a limitation of gst_parse_launch? or i’m doing something wrong?

pipeline = gst_parse_launch("videotestsrc is-live=true ! queue ! d3d12videosink", unerrore)
  If pipeline
    bus = gst_element_get_bus(pipeline)
    gst_bus_set_sync_handler(bus, ProcAddr(bus_sync_handler), pipeline, Null)

solved
pipeline = gst_parse_launch(“d3d12testsrc is-live=true ! queue ! d3d12videosink name=vsink”, unerrore)
vsink = gst_bin_get_by_name(pipeline, “vsink”)
gst_video_overlay_set_window_handle(vsink, Win_1.hWnd)