NetMessageBufferSendを利用して他のコンピュータへメッセージを送信したいの
ですがStrConvでUnicodeに変換しても”終了”などはどうしても文字化けして
送信されてしまいます。
まだまだ初心者で自分ではどうしようもありません。
お手数ですがお力をお貸しください。よろしくお願いいたします。
ソースは以下の通りです。
Public Declare Function NetMessageBufferSend Lib "netapi32.dll" _
(ByVal servername As String, _
ByVal msgname As String, _
ByVal FromName As String, _
buf As Any, _
ByVal buflen As Long) As Long
Dim sServerName As String
Dim sMsgName As String
Dim sFromName As String
Dim sMessage As String
Dim lngReturn As Long
sServerName = StrConv("", vbUnicode)
sMsgName = StrConv("fukayama", vbUnicode)
sFromName = StrConv("fukayama", vbUnicode)
sMessage = StrConv("チェック終了", vbUnicode)
lngReturn = NetMessageBufferSend(sServerName, _
sMsgName, _
sFromName, _
ByVal sMessage, _
Len(sMessage))
VBの話ですか?であれば,
http://madia.world.coocan.jp/cgi-bin/VBBBS/wwwlng.cgi
とか
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi
で質問すべきです。
とりあえず,わざわざStrConvなんてことをする必要はないと思いますが。
あと,Len関数の使い方を間違っているのでは?
LenB(StrConv(sMessage, vbFromUnicode))
じゃないかと。
ありがとうございます。
あらためてVisual Basic 初心者掲示板で質問することにします。
ツイート | ![]() |