C++壁紙のランダム設定ソフト
1961 ワード
/*2018-12-28 15:15:18例:インタフェースの使用https://api.berryapi.net/bing/random/?200/200PCデスクトップを交換するための小さなソフトウェア*/機能要件を設定します.ソフトウェア入力を開くには1920*1080などの解像度要件が必要です.デスクトップの設定をクリックすると、ランダムなデスクトップが得られます.
完了するポイント:1.与えられたURLで画像のダウンロードを行う.ダウンロードした画像を入手してデスクトップに設定
質問1:関数URLDownloadToFileにより、ファイルのダウンロードを実現するには、上記の関数を使用してヘッダファイル#includeと対応するリンクライブラリurlmonを追加する必要がある.lib
TCHAR関連の関数を使用するには、ヘッダファイルtcharを持参する必要がある.h
質問2:関数SystemParametersInfoを使用してデスクトップの背景を設定
機能要件は、ほぼ上記のようにコード(補足インタフェース:https://api.berryapi.net/bing/random/?200/200SOUI大神毛芋より提供)
ここで扱う関数はすべてよく使われるシステム呼び出し関数でありMSDNを調べることで明確に理解できるはずである
このような簡単で実用的なデスクトップ交換ソフトの作成が完了しました(これを小さなモジュールとしてコード移植することができます)
効果図:
完了するポイント:1.与えられたURLで画像のダウンロードを行う.ダウンロードした画像を入手してデスクトップに設定
質問1:関数URLDownloadToFileにより、ファイルのダウンロードを実現するには、上記の関数を使用してヘッダファイル#includeと対応するリンクライブラリurlmonを追加する必要がある.lib
TCHAR関連の関数を使用するには、ヘッダファイルtcharを持参する必要がある.h
質問2:関数SystemParametersInfoを使用してデスクトップの背景を設定
機能要件は、ほぼ上記のようにコード(補足インタフェース:https://api.berryapi.net/bing/random/?200/200SOUI大神毛芋より提供)
/*
2018-12-28 15:31:17
1 URL
URL :URLDownloadToFile
:
HRESULT URLDownloadToFile(
LPUNKNOWN pCaller, // Active NULL
LPCTSTR szURL, // URL
LPCTSTR szFileName, //
_Reserved_ DWORD dwReserved, // 0
LPBINDSTATUSCALLBACK lpfnCB // NULL( )
);
2 PC
SystemParametersInfo
*/
#include
using namespace std;
#include
#include
#include
int main()
{
//
TCHAR szCurrentDir[MAX_PATH] = { 0 };
GetModuleFileName(NULL, szCurrentDir, sizeof(szCurrentDir));
(_tcsrchr(szCurrentDir, _T('\\')))[1] = 0;
_tcscat(szCurrentDir, L"backgnd.jpg");
TCHAR url[] = L"https://api.berryapi.net/bing/random/?1920/1080";
HRESULT FileStatus = URLDownloadToFileW(NULL, url, (LPCTSTR)szCurrentDir, 0, NULL);
if (S_OK != FileStatus)
{
cout << "File Download fail";
return EXIT_FAILURE;
}
//
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, szCurrentDir, SPIF_UPDATEINIFILE);
cout << " " << endl;
system("pause");
return 0;
}
ここで扱う関数はすべてよく使われるシステム呼び出し関数でありMSDNを調べることで明確に理解できるはずである
このような簡単で実用的なデスクトップ交換ソフトの作成が完了しました(これを小さなモジュールとしてコード移植することができます)
効果図: