シチュエーション別同一目的 -- Part2


  C++ API+ランタイムライブラリ



↓VC6 用に必要な PATH 環境変数
C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\Bin
  
Set CL6="C:\Program Files\Microsoft Visual Studio\VC98\Bin\cl.exe"
Set LINK6="C:\Program Files\Microsoft Visual Studio\VC98\Bin\link.exe"
Set INC6="C:\Program Files\Microsoft Visual Studio\VC98\Include"
Set LIB6="C:\Program Files\Microsoft Visual Studio\VC98\Lib"
%CL6% lang_01.cpp /c /I%INC6%
%LINK6% /LIBPATH:%LIB6% lang_01.obj
  
↑ビルド1

↓VC7(.NET 2003) 用に必要な PATH 環境変数
C:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE
  
Set CL7="C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\cl.exe"
Set LINK7="C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin\link.exe"
Set INC7="C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include"
Set LIB7="C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\lib"
%CL7% lang_01.cpp /c /I%INC7%
%LINK7% /LIBPATH:%LIB7% lang_01.obj
  
↑ビルド2

  
#include <windows.h>
#include <wininet.h>
#include <stdio.h>
#pragma comment( lib, "wininet.lib " )

HINTERNET hSession;
HINTERNET hConnect;

DWORD nByte = 0;
int nCnt = 0;

void CALLBACK StatusFunc(
	HINTERNET hInternet,
	DWORD Context,
	DWORD Status,
	LPVOID StatusInfo,
	DWORD StatusInfoSize)
{
	if ( Status == INTERNET_STATUS_RESPONSE_RECEIVED ) {
		nByte += *((DWORD *)StatusInfo);
		nCnt++;
		if ( nCnt % 20 == 0  ) {
			printf("* " );
		}
	}
}

int main(int argc, char* argv[])
{

	hSession = InternetOpen(
		"lightbox",
		INTERNET_OPEN_TYPE_DIRECT,
		NULL, NULL, 0
	);
	if ( hSession == NULL ) {
		printf("InternetOpen error\n");
		return 0;
	}

	InternetSetStatusCallback( hSession, StatusFunc );

	DWORD nPassive;

	nPassive = INTERNET_FLAG_PASSIVE;

	hConnect = InternetConnect(
		hSession,
		"bekins.borland.com",
		INTERNET_INVALID_PORT_NUMBER,
		"anonymous",
		"user@domian",
		INTERNET_SERVICE_FTP,
		nPassive,
		NULL
	);
	if ( hConnect == NULL ) {
		InternetCloseHandle( hSession );
		printf("InternetConnect error\n");
		return 0;
	}

	BOOL bRet;

	bRet = FtpGetFile(
		hConnect,
		"/groups/jp/cppbuild/freecommandlinetools2.exe",
		"freecommandlinetools2.exe",
		false,
		FILE_ATTRIBUTE_NORMAL,
		FTP_TRANSFER_TYPE_BINARY | INTERNET_FLAG_RELOAD,
		1
	);

	if ( bRet ) {
		printf("\nダウンロードが完了しました\n");
	}
	else {
		printf("\nダウンロードが失敗しました\n");
	}

	InternetCloseHandle( hConnect );
	InternetCloseHandle( hSession );
	return 0;
}
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ