簡易転送配信要求API
簡易転送配信要求を発行するAPIです。
構文
INT __stdcall utlsendit( LPCSTR lpszFileName , LPCSTR lpszHostName , LPCSTR lpszRcvLocationPath , LPCSTR lpszRcvFileName , TCHAR cMode , USHORT portnum ,SHORT nPriority , BOOL bSync );
パラメーター説明
- LPCSTR lpszFileName(IN)
-
配信したいファイル名を指定
200バイト以内の文字列で指定します。
- LPCSTR lpszHostName(IN)
-
配信先ホスト名を指定
68バイト以内の文字列で指定します。
- LPCSTR lpszRcvLocationPath(IN)
-
集信ファイルの保存先を指定
200バイト以内の文字列で指定します。省略する場合は“NULL”を指定します。
- LPCSTR lpszRcvFileName(IN)
-
集信ファイル名を指定
200バイト以内の文字列で指定します。省略する場合は“NULL”を指定します。
- TCHAR cMode(IN)
-
転送タイプを指定
- t
-
: テキスト転送
- b
-
: バイナリ転送
- USHORT portnum(IN)
-
集信側ホストのポート番号を指定
“1”~“65535”の範囲で指定します。省略する場合は“0”を指定します。
省略すると、“30000”が設定されます。
- SHORT nPriority(IN)
-
転送優先度を指定
“1”~“256”の範囲で指定します。省略する場合は“0”を指定します。
- BOOL bSync(IN)
-
同期転送フラグを指定
- TRUE
-
: 同期転送する
- FALSE
-
: 同期転送しない
戻り値
正常時は「0」です。エラー時のステータスはutlsendit.exeのエラーコードと同様です。
詳細は、以下を参照してください。
HULFT10 for Windows エラーコード・メッセージ : 配信と集信のコマンド異常終了時の終了ステータス
使用例
Visual C++から使用する場合
#include <windows.h> #include <stdio.h> typedef INT (__stdcall *LPUTLSENDIT)( LPCSTR lpszFileName, LPCSTR lpszHostName, LPCSTR lpszRcvLocationPath, LPCSTR lpszRcvFileName, TCHAR cMode, USHORT portnum, SHORT nPriority, BOOL bSync, INT nWait); int main() { CHAR szFileName[200+1]; CHAR szHostName[68+1]; CHAR szRcvLocationPath[200+1]; CHAR szRcvFileName[200+1]; CHAR cMode; USHORT portnum; SHORT nPriority; BOOL bSync; INT nWait; HMODULE hHulDll; HMODULE hApiDll; LPUTLSENDIT lpUtlsendit; INT nStatus; strcpy_s(szFileName, sizeof(szFileName), "C:\\HULFT Family\\sndfile.txt"); strcpy_s(szHostName, sizeof(szHostName), "RCV_HOST"); strcpy_s(szRcvLocationPath, sizeof(szRcvLocationPath), ""); strcpy_s(szRcvFileName, sizeof(szRcvFileName), ""); cMode = 'T'; portnum = 30000; nPriority = 50; bSync = TRUE; nWait = 300; hApiDll = LoadLibraryEx("C:\\HULFT Family\\hulft10\\bin\\hulapi.dll", NULL, LOAD_WITH_ALTERED_SEARCH_PATH); if (hApiDll == NULL) { printf("Unable to load hulapi.dll." "(Error code = %lu)\n", GetLastError()); FreeLibrary(hHulDll); return 2; } lpUtlsendit = (LPUTLSENDIT)GetProcAddress(hApiDll, "utlsendit"); if (lpUtlsendit == NULL) { printf("Unable to retrieves the address of HULFT API." "(Error code=%lu)\n", GetLastError()); FreeLibrary(hApiDll); FreeLibrary(hHulDll); return 3; } nStatus = lpUtlsendit(szFileName, szHostName, szRcvLocationPath, szRcvFileName, cMode, portnum, nPriority, bSync, nWait); if (nStatus == 0) { printf("Terminated normally.\n"); } else { printf("Error occurred when calling HULFT API." "(Returned value=%d)\n", nStatus); } FreeLibrary(hApiDll); FreeLibrary(hHulDll); return 0; }