通知
すべてクリア

解決済み新旧の移行作業でFTPサーバーに接続できません

投稿: 2
質問投稿者
コミュニティ参加日: 3週間前

旧スターレンタルフリーから新しいサーバーに移行作業を行っていますが、つながりせん。

********************************************************

旧スターレンタルサーバーフリーでは正常に動作するVBA

*******************************************************

' FTP接続情報
ftpHost = "XXXXXX2.starfree.jp"
ftpUsername = "XXXXXXX2.starfree.jp"
ftpPassword = "XXXXXXXX"

' サーバー上のキーと有効期限を確認するファイル
remoteFile = "/key_data/" & updateKey & ".txt"
localFile = Environ("TEMP") & "\" & updateKey & ".txt"

' エラーハンドリング開始
On Error Resume Next ' Skip errors and continue

' インターネット接続を開始
hInternet = InternetOpen("FTP Connection", 1, vbNullString, vbNullString, 0)

' インターネット接続失敗時
If hInternet = 0 Then GoTo Cleanup

' FTP接続を確立
hConnect = InternetConnect(hInternet, ftpHost, 21, ftpUsername, ftpPassword, 1, 0, 0)

' 認証失敗時
If hConnect = 0 Then GoTo Cleanup

' ファイルをダウンロード
If FtpGetFile(hConnect, remoteFile, localFile, False, 0, 1, 0) Then
' ローカルファイルからキー、バージョン、有効期限日付を取得
If Dir(localFile) <> "" Then
Open localFile For Input As #1
Input #1, keyFromServer
Input #1, versionStr
Input #1, expiryDateStr
Close #1

' バージョンを設定
versionFromServer = versionStr

' 日付変換を試みる
expiryDate = CDate(expiryDateStr)

If expiryDate = 0 Then
isValid = False
Else
' 現在の日付を取得
currentDate = Date

' キーと有効期限のチェック
If updateKey = keyFromServer And currentDate <= expiryDate Then
isValid = True
Else
isValid = False
End If
End If

' ローカルファイルを削除
Kill localFile
Else
isValid = False
End If
Else
isValid = False
End If

*****************************************************

新スターレンタルサーバーフリー

*******************************************************

旧設定のままでは接続できなかったのでパッシブ、アクテイブモードを両方試して

//////////////////////////////////////////////////////////////////
リモートファイルのダウンロードに失敗しました。

リモートファイル:/htpasswd/FF0000AXXXXXX.txt

ローカルファイル:

C:"Users"XXXXX"AppData"Local"Temp¥FF000AXXXXXX.txt

接続モード:Passive

//////////////////////////////////////////////////////////////////

となり正常に動作しません。

' FTP接続情報
Const ftpHost As String = "svXXXXX.star.ne.jp"
Const ftpUsername As String = "ssXXXXXX"
Const ftpPassword As String = "XXXXXXXX"
remoteFile = "/htpasswd/" & updateKey & ".txt"
localFile = Environ("TEMP") & "\" & updateKey & ".txt"

' インターネット接続初期化
hInternet = InternetOpen("FTP Connection", 1, vbNullString, vbNullString, 0)
If hInternet = 0 Then GoTo Cleanup

' パッシブモードで接続
connectionMode = "Passive"
hConnect = InternetConnect(hInternet, ftpHost, 21, ftpUsername, ftpPassword, INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)
If hConnect = 0 Then
' アクティブモードで再接続
connectionMode = "Active"
hConnect = InternetConnect(hInternet, ftpHost, 21, ftpUsername, ftpPassword, INTERNET_SERVICE_FTP, 0, 0)
End If
If hConnect = 0 Then GoTo Cleanup

新旧のFTPサーバー仕様で何が変更になっているのかを教えていただけないでしょうか?

どなたか良きアドバイスよろしくお願いします。

 

1件の返信
投稿: 2
質問投稿者
コミュニティ参加日: 3週間前

FTPアカウントの追加することで正常に動作するようになりました。

FTPアカウントの追加

https://www.star.ne.jp/support/manual/man_ftp_add.php

返信