Code:
#include <windows.h>
#include "main.h"
#include <string>
#include <fstream>
#include <direct.h>
std::string songid,destination,basename,boogi,name,var,var2,str;
std::ifstream fin;
std::ofstream fer;
bool success;
char shelp2[256];
int gar,leng;
using namespace std;
bool DownloadFile(LPCTSTR URL , LPCTSTR LocalFilename);
typedef long (WINAPI * MYPROC)(long,LPCTSTR,LPCTSTR,DWORD,long);
bool DownloadFile(LPCTSTR URL , LPCTSTR LocalFilename)
{
long lngRetVal;
HMODULE hinstLib;
MYPROC ProcAdd;
BOOL fFreeResult, fRunTimeLinkSuccess = FALSE;
hinstLib = LoadLibrary("urlmon.dll");
if(hinstLib != NULL)
{
ProcAdd = (MYPROC) GetProcAddress(hinstLib, "URLDownloadToFileA");
if (NULL != ProcAdd)
{
fRunTimeLinkSuccess = TRUE;
lngRetVal = ProcAdd(0, URL, LocalFilename, 0, 0);
fFreeResult = FreeLibrary(hinstLib);
}
}
}
HWND hww,hww2,hww3,hww4,hww5;
char non[256],non2[500],non3[500],shelp[500];
HMENU menu;
HINSTANCE hThisInstance;
HFONT hf,hf2;
long lf,lf2;
HDC hdc;
LRESULT CALLBACK MainMessageHandler(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_CREATE:
{
fin.open("test.txt");
gar=0;
while(fin>>boogi){
if(gar==0){
name+=boogi;
gar=1;
}
else{
name+=" ";
name+=boogi;
}
}
*(std::copy(name.begin(), name.end() - name.begin() < 200 ? name.end() : name.begin() + 199, shelp)) = 0;
hww=CreateWindowEx(WS_EX_CLIENTEDGE, TEXT("EDIT"), TEXT(""), WS_CHILD | WS_VISIBLE | ES_NUMBER,
1, 1, 53, 23,
hwnd,(HMENU) 0xED, GetModuleHandle(NULL), NULL);
hdc = GetDC(NULL);
lf = -MulDiv(12, GetDeviceCaps(hdc, LOGPIXELSY), 72);
lf2 = -MulDiv(10, GetDeviceCaps(hdc, LOGPIXELSY), 72);
ReleaseDC(NULL, hdc);
hf = CreateFont(lf, 0, 0, 0, FW_MEDIUM, FALSE, 0, 0, 0, 0, 0, 0, 0, "Times New Roman");
SendMessage(hww,WM_SETFONT,(WPARAM)hf,TRUE);
hf2 = CreateFont(lf2, 0, 0, 0, 500, FALSE, 0, 0, 0, 0, 0, 0, 0, "Verdana");
hww2=CreateWindowEx(NULL,"Button","Tõmba",
WS_BORDER | WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
56, 1,
80, 23,
hwnd,(HMENU)IDB_BUTTON,
GetModuleHandle(NULL),
NULL);
SendMessage(hww2,WM_SETFONT,(WPARAM)hf2,TRUE);
hww3=CreateWindowEx(WS_EX_CLIENTEDGE, TEXT("EDIT"), TEXT(""), WS_CHILD | WS_VISIBLE | ES_MULTILINE,
1, 26, 238, 23,
hwnd,(HMENU) 0xED, GetModuleHandle(NULL), NULL);
hww4=CreateWindowEx(WS_EX_CLIENTEDGE, TEXT("EDIT"), TEXT(shelp), WS_CHILD | WS_VISIBLE | ES_MULTILINE,
1, 52, 238, 46,
hwnd,(HMENU) 0xED, GetModuleHandle(NULL), NULL);
SendMessage(hww3,WM_SETFONT,(WPARAM)hf,TRUE);
SendMessage(hww4,WM_SETFONT,(WPARAM)hf,TRUE);
hww5=CreateWindowEx(NULL,"Button","Surfa unos",
WS_BORDER | WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
139, 1,
90, 23,
hwnd,(HMENU)IDB_BUTTON2,
GetModuleHandle(NULL),
NULL);
SendMessage(hww5,WM_SETFONT,(WPARAM)hf2,TRUE);
/* Fall through */
}
case WM_COMMAND:
switch( wParam )
{
case IDM_LEAVE:
DestroyWindow(hwnd);
return 0;
case IDM_DESTINATION:
MessageBox(hwnd,"Programm on täielikult illegaalne!","Programmist...",MB_OK | MB_ICONINFORMATION);
return 0;
case IDB_BUTTON2:
system("\"C:\\Program Files\\Internet Explorer\\iexplore.exe\" http://www.u-pop.ee/uplayer");
return 0;
}
if (LOWORD(wParam) == IDB_BUTTON)
{
GetWindowText(hww,non,255);
GetWindowText(hww3,non2,500);
GetWindowText(hww4,non3,500);
basename=non2;
destination=non3;
songid=non;
if(_chdir(non3)==0){
if(destination.substr(destination.length()-1,destination.length())=="\\"){
}
else{
destination+="\\";
}
var="http://data.uno.ee/juke/songid-"+songid+"-555/songs.asx";
var2="C:\\temp.abc";
*(std::copy(var.begin(), var.end() - var.begin() < 200 ? var.end() : var.begin() + 199, shelp)) = 0;
LPCTSTR URL = shelp;
*(std::copy(var2.begin(), var2.end() - var2.begin() < 200 ? var2.end() : var2.begin() + 199, shelp2)) = 0;
LPCTSTR File = shelp2;
DownloadFile(URL,File);
ifstream fi("C:\\temp.abc");
fi>>str;
fi>>str;
fi>>str;
fi>>str;
fi.close();
remove("C:\\temp.abc");
leng=str.length();
leng=leng-17;
str=str.substr(6,leng);
var=str;
var2=destination+basename+".wma";
*(std::copy(var.begin(), var.end() - var.begin() < 200 ? var.end() : var.begin() + 199, shelp)) = 0;
URL = shelp;
*(std::copy(var2.begin(), var2.end() - var2.begin() < 200 ? var2.end() : var2.begin() + 199, shelp2)) = 0;
File = shelp2;
success = DownloadFile(URL ,File);
if (success == false)
{
MessageBox(hwnd,"Selle numbriga laulu kas ei ole või ei saanud hetkel tõmmata!","Valmis",MB_OK | MB_ICONINFORMATION);
}
else
{
MessageBox(hwnd,"Laulu tõmbamine on valmis!","Valmis",MB_OK | MB_ICONINFORMATION);
}
}
else{
MessageBox(hwnd,"Sisestatud kausta aadress ei ole õige!","Viga!",MB_OK | MB_ICONINFORMATION);
}
}
break;
case WM_SIZE:
{
RECT rc;
GetClientRect(hwnd, &rc);
return 0;
}
case WM_DESTROY:
{
fin.close();
fer.open("test.txt");
GetWindowText(hww4,non,500);
fer<<non;
fer.close();
PostQuitMessage(0);
return 0;
}
}
return DefWindowProc(hwnd, uMsg, wParam, lParam);
}
HWND CreateMainWindow(INT nShow)
{
WNDCLASSEX wc = { 0 };
HWND hwnd = NULL;
wc.cbSize = sizeof(wc);
wc.style = 0;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = GetModuleHandle(NULL);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hIconSm = NULL;
wc.lpfnWndProc = MainMessageHandler;
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wc.hbrBackground = (HBRUSH) (COLOR_APPWORKSPACE + 1);
wc.lpszMenuName = NULL;
wc.lpszClassName = TEXT("SimpleEditContainer");
if(RegisterClassEx(&wc))
{
hwnd = CreateWindowEx(0, TEXT("SimpleEditContainer"), TEXT("SongDownloader 2.0"), WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 250, 150,
NULL, NULL, GetModuleHandle(NULL), NULL);
ShowWindow(hwnd, nShow);
}
menu = LoadMenu(hThisInstance, MAKEINTRESOURCE(ID_MENU));
SetMenu(hwnd, menu);
return hwnd;
}
INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE reserved, LPSTR szCommand, INT nShow)
{
MSG msg;
CreateMainWindow(nShow);
while ( GetMessage(&msg, NULL, 0, 0) )
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return (int) msg.wParam;
}