メッセージは外部テキストファイルではなく.wsfにしてresourceタグの方がいいよ

テキストファイルだと、CreateObject("Scripting.FileSystemObject")でFSOのインスタンス作って
ForReading = 1の定数定義して、OpenTextFileでファイル開いて、ReadAllで読み込んでと
たかがメッセージを読み込むだけにしては手間が掛かりすぎな気がする
更にメッセージが複数になれば、メッセージファイルもその数だけ必要になってディレクトリがゴチャるw
1つのテキストファイルにiniみたいなセッション分けして複数のメッセージを書くことも出来るが
その場合、指定のセッションのみを読み出すのは更に煩雑になるし

.wsf化してresourceを使う場合、コードではなくファイル内容としてみれば、xmlタグなどでややゴチャるが
コード、つまりscriptタグの中だけ見れば、かなりスッキリする

ret = objShell.Popup("このパソコンには【Baidu IME】がインストールされています。" & vbCrLf & _
"【Baidu IME】をアンインストールしますか?" & vbCrLf & _
"(【猫耳】に泣きつかれても断固アンインストール!!)", , winName, vbYesNo Or vbSystemModal)
     ↓
ret = objShell.Popup(getResource("msg1"), , winName, vbYesNo Or vbSystemModal)

のように簡略化出来るからね

因みに俺は、スクリプトが完成した以降も変更する可能性があるようなものはscriptタグの上
まず変更しないだろうってものはscriptタグの下に書いてる
<job>
  <resource id="val1">AAA</resource>
  <script language="VBScript"><![CDATA[
' コード
  ]]></script>
  <resource id="msg1">ほげ</resource>
</job>
ついでに、resourceの値は改行して書けばそのまま改行された状態で読み出せるし
&amp;#13;&amp;#10;を入れれば、改行を含むメッセージを1行で書くことも可能
またXMLDOMを使えば、書き換えることだって出来る