特定のクライアントからのエラーを管理するために、おそらく起動時に、アプリに現在のエラーログファイルを送信させることを考えています。
VB6 / XP環境でこれを達成するための最良の方法は何でしょうか?
電子メールは簡単かもしれませんが、それはあらゆる種類のアンチウイルス/ファイアウォール保護を解除する可能性があると思います。
Webサーバーに接続する方が良い場合があります。この場合、アプリは引き続きWindowsファイアウォールを開く必要がありますか?
特定のクライアントからのエラーを管理するために、おそらく起動時に、アプリに現在のエラーログファイルを送信させることを考えています。
VB6 / XP環境でこれを達成するための最良の方法は何でしょうか?
電子メールは簡単かもしれませんが、それはあらゆる種類のアンチウイルス/ファイアウォール保護を解除する可能性があると思います。
Webサーバーに接続する方が良い場合があります。この場合、アプリは引き続きWindowsファイアウォールを開く必要がありますか?
私はXMLHTTP
次のようなクライアント エラー ログをアップロードするために使用しています: http://wqweto.wordpress.com/2011/07/12/vb6-using-wininet-to-post-binary-file/
Private Sub pvPostFile(sUrl As String, sFileName As String, Optional ByVal bAsync As Boolean)
Const STR_BOUNDARY As String = "3fbd04f5-b1ed-4060-99b9-fca7ff59c113"
Dim nFile As Integer
Dim baBuffer() As Byte
Dim sPostData As String
'--- read file
nFile = FreeFile
Open sFileName For Binary Access Read As nFile
If LOF(nFile) > 0 Then
ReDim baBuffer(0 To LOF(nFile) - 1) As Byte
Get nFile, , baBuffer
sPostData = StrConv(baBuffer, vbUnicode)
End If
Close nFile
'--- prepare body
sPostData = "--" & STR_BOUNDARY & vbCrLf & _
"Content-Disposition: form-data; name=""uploadfile""; filename=""" & Mid$(sFileName, InStrRev(sFileName, "\") + 1) & """" & vbCrLf & _
"Content-Type: application/octet-stream" & vbCrLf & vbCrLf & _
sPostData & vbCrLf & _
"--" & STR_BOUNDARY & "--"
'--- post
With CreateObject("Microsoft.XMLHTTP")
.Open "POST", sUrl, bAsync
.SetRequestHeader "Content-Type", "multipart/form-data; boundary=" & STR_BOUNDARY
.Send pvToByteArray(sPostData)
End With
End Sub
Private Function pvToByteArray(sText As String) As Byte()
pvToByteArray = StrConv(sText, vbFromUnicode)
End Function