29 Aralık 2019 Pazar
23 Aralık 2019 Pazartesi
Windows Batch START komutu - Yeni Bir Process Başlatır
Giriş
Tek başına çalışan bir process başlatır. Açıklaması şöyle
Bir kısayolu (shortcut) çalıştırmak için şöyle yaparız.
Şöyle yaparız.
wait seçeneği
Açıklaması şöyle.
Tek başına çalışan bir process başlatır. Açıklaması şöyle
If you type start filename.ext in command prompt, the file is run using explorer's engine, and as such whatever is associated to that file extension will start the file.Örnek
Bir kısayolu (shortcut) çalıştırmak için şöyle yaparız.
start mmsys.cpl
ÖrnekŞöyle yaparız.
start winword
Örnek - pencere ismi
Şöyle yaparız
start "" "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC"
:: # Or more elaborately:
start "Optional Window Title" "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC"
Açıklaması şöyle.
start a command in a new window, wait for it to complete, then run another command locally and call a batch file.Şöyle yaparız.
start "" /wait command1 & command2 & call command3.cmd
Powershell Start - Komutu Çalıştırır
19 Aralık 2019 Perşembe
CreateFile metodu
Giriş
İkinci parametre GENERIC_WRITE, GENERIC_READ OLABİLİR.
Üçüncü parametre sharing mode anlamına gelir. Genellikle 0 verilir.
Beşinci parametre dosya varsa ne yapacağımızı belirtir. CREATE_ALWAYS,OPEN_EXISTING olabilir.
Örnek
Şöyle yaparız. Burada OPEN_EXISTING kullanıldığı için yazmak için bir cihaz açılıyor diye düşünülebilir.
Örnek
Şöyle yaparız
Şöyle yaparız.
Şöyle yaparız.
İkinci parametre GENERIC_WRITE, GENERIC_READ OLABİLİR.
Üçüncü parametre sharing mode anlamına gelir. Genellikle 0 verilir.
Beşinci parametre dosya varsa ne yapacağımızı belirtir. CREATE_ALWAYS,OPEN_EXISTING olabilir.
Örnek
Şöyle yaparız. Burada OPEN_EXISTING kullanıldığı için yazmak için bir cihaz açılıyor diye düşünülebilir.
char path[] = "...";
HANDLE output = CreateFile(path,
GENERIC_WRITE,
FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
0,
NULL);
Şöyle yaparız
HANDLE h = CreateFile("process.txt", // name of the file
GENERIC_WRITE, // open for writing
0, // sharing mode, none in this case
0, // use default security descriptor
CREATE_ALWAYS, // overwrite if exists
FILE_ATTRIBUTE_NORMAL,
0);
ÖrnekŞöyle yaparız.
wchar_t wszPath[] = L"\\\\.\\F:";
HANDLE hDevice = CreateFileW(wszPath,
0,
FILE_SHARE_READ |
FILE_SHARE_WRITE,
NULL,
OPEN_EXISTING,
0,
NULL);
if (hDevice != INVALID_HANDLE_VALUE)
{
...
CloseHandle(hDevice);
hDevice = NULL;
}
ÖrnekŞöyle yaparız.
serialPortHandle = CreateFile(("COM2"),
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
FILE_FLAG_OVERLAPPED | FILE_FLAG_NO_BUFFERING,
NULL);
18 Kasım 2019 Pazartesi
GetWindowLong metodu
Örnek
Şöyle yaparız.
Şöyle yaparız.
HWND g_hwndTarget;
BOOL CALLBACK EnumCallback(HWND hwnd, LPARAM lParam)
{
wchar_t szText[MAX_PATH] = {};
GetWindowTextW(hwnd, szText, MAX_PATH);
std::wstring strTitle = szText;
if (strTitle.find(L"cmd.exe") != std::string::npos)
{
g_hwndTarget = hwnd;
return FALSE;
}
return TRUE;
}
int main()
{
EnumDesktopWindows(NULL, EnumCallback, 0);
RECT rect = {};
SystemParametersInfo(SPI_GETWORKAREA, 0, &rect, 0);
if (g_hwndTarget)
{
LONG style = GetWindowLong(g_hwndTarget, GWL_STYLE);
style &= ~WS_BORDER;
style &= ~WS_OVERLAPPEDWINDOW;
SetWindowLong(g_hwndTarget, GWL_STYLE, style);
SetWindowPos(g_hwndTarget, HWND_BOTTOM, 0, 0, rect.right, rect.bottom, 0);
}
return 0;
}
EnumDesktopWindows metodu
Giriş
Callback FALSE dönünce durur.
Örnek
Şöyle yaparız.
Callback FALSE dönünce durur.
Örnek
Şöyle yaparız.
HWND g_hwndTarget;
BOOL CALLBACK EnumCallback(HWND hwnd, LPARAM lParam)
{
wchar_t szText[MAX_PATH] = {};
GetWindowTextW(hwnd, szText, MAX_PATH);
std::wstring strTitle = szText;
if (strTitle.find(L"cmd.exe") != std::string::npos)
{
g_hwndTarget = hwnd;
return FALSE;
}
return TRUE;
}
EnumDesktopWindows(NULL, EnumCallback, 0);
SystemParametersInfo metodu
GetWindowText metodu
Giriş
Şu satırı dahil ederiz.
Şöyle yaparız.
Şöyle yaparız
Şu satırı dahil ederiz.
#include <windows.h>
ÖrnekŞöyle yaparız.
QString getActiveWndTitle()
{
char buff[256];
HWND hwnd = GetForegroundWindow();
GetWindowText(hwnd, (LPWSTR) buff, 254);
QString title = QString::fromWCharArray((const wchar_t *)buff);
return title;
}
ÖrnekŞöyle yaparız
HWND hwnd = ...
wchar_t szText[MAX_PATH] = {};
GetWindowTextW(hwnd, szText, MAX_PATH);
20 Ekim 2019 Pazar
GetLogicalProcessorInformation metodu
Örnek ver.
17 Ekim 2019 Perşembe
ShellExecute metodu
Örnek
Şöyle yaparız.
Şöyle yaparız.
char verb[10] = "runas";
char cmd[10] = "net";
char params[40] = "user myuser";
ShellExecuteA(NULL, verb, cmd, params, 0, SW_SHOW);
3 Ekim 2019 Perşembe
CreateThread metodu
Giriş
İmzası şöyle.
İmzası şöyle.
HANDLE WINAPI CreateThread( __in_opt LPSECURITY_ATTRIBUTES lpThreadAttributes,
__in SIZE_T dwStackSize,
__in LPTHREAD_START_ROUTINE lpStartAddress,
__in_opt LPVOID lpParameter,
__in DWORD dwCreationFlags,
__out_opt LPDWORD lpThreadId );
Kaydol:
Kayıtlar (Atom)