프로그래밍
-
Apache MINA를 이용한 Echo서버 구현하기프로그래밍/Java 2019. 4. 1. 23:53
Apache MINA자바(Java)를 이용해서 서버를 구축하는 방법에는 여러가지가 있겠지만, 아파치 미나(Apache MINA)의 구현 방법인 Nio Socket과 스레드(Thread)를 이용하여 비동기-스레드(Asynchronous-Thread)방식의 서버를 구현할 수 있다. https://mina.apache.org/downloads-mina_2_1.html MINA Downloads — Apache MINALatest MINA Releases Apache MINA 2.1.0 stable (Java 8+) Binaries Sources For people wanting to use the serial package, we don't include the rxtx.jar library ..
-
블루스크린 출력 함수프로그래밍/C# + Unity 2019. 3. 22. 23:14
소스 코드 [DllImport("ntdll.dll", SetLastError = true)]//bluescreen private static extern int NtSetInformationProcess(IntPtr hProcess, int processInformationClass, ref int processInformation, int processInformationLength); public void Callbulescreen() { int isCritical = 1; int BreakOnTermination = 0x1D; Process.EnterDebugMode(); NtSetInformationProcess(Process.GetCurrentProcess().Handle, BreakOnTerm..
-
[C#] 키로거, 키보드 전역 후킹프로그래밍/C# + Unity 2019. 3. 22. 23:11
C#에서는 using System.Runtime.InteropServices;를 이용하면 user32.dll에 선언된 후킹 함수를 사용할 수 있다. using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Runtime.InteropServices; using System.Threading; namespace HookKey { class HookKey { [DllImport("user32.dll")] private static extern IntPtr SetWindowsHookEx(int idHook, LowLevelKeyProc callback, IntPtr ..
-
[php] mysqli to json프로그래밍/Web(CSS + HTML + JS + PHP ) 2019. 3. 22. 15:11
d3.jsd3.js는 데이터 시각화를 위한 JavaScript 라이브러리이다. 이름인 "D3"는 "Data-Driven Documents"의 약자로, 데이터에 기반하여 문서를 생성하고 조작하는 데 사용된다. D3.js는 HTML, SVG(Scaleable Vector Graphics), CSS를 사용하여 데이터를 시각적으로 표현하고 상호작용하는데 강력한 기능을 제공한다.https://github.com/d3/d3 GitHub - d3/d3: Bring data to life with SVG, Canvas and HTML. :bar_chart::chart_with_upwards_trend::tada:Bring data to life with SVG, Canvas and HTML. :bar_c..
-
C#에서 Excel 읽고 쓰기프로그래밍/C# + Unity 2019. 2. 21. 22:58
Nuget 패키지 추가 C#에서는 'Microsoft.Office.Interop.Excel'를 참조하면 엑셀 파일을 불러들여서 읽고 쓰기를 수행할 수 있다. 사용 방법은 프로젝트 생성 → Nuget 패키지 관리 → Microsoft.Office.Interop.Excel 선택 소스 코드 using System.IO; using System.Windows.Forms; using Excel = Microsoft.Office.Interop.Excel; namespace CsharpUseExcel { public partial class Form1 : Form { public Form1() { InitializeComponent(); } Excel.Workbook wb = null; Excel.Worksheet ..
-
[C++] 모든 프로세스명 가져오기프로그래밍/C++ 2019. 2. 18. 21:31
C/C++ 로 프로그래밍을 하다 보면 C#에서 사용했던 수 많은 API들이 생각이 날 때가 많다. 프로세스 명 가져오기 같은 경우도, C#에서는 Process[] allProc = Process.GetProcesses(); 이렇게 한 줄로 끝나지만, C/C++에서는 그런 거 없다... 구글링을 하던 중 좋은 예제를 찾아서 하나 소개하려 한다. #pragma once #pragma comment(lib, "Wtsapi32.lib") #include #include #include #include #include #include std::vector ProcessName; void GetAllProcess() { WTS_PROCESS_INFO* pWPIs = NULL; DWORD dwProcCount = 0..
-
[C/C++] 키보드 후킹 (키로깅)프로그래밍/C++ 2019. 2. 18. 12:00
C/C++은 C#와는 다르게 후킹 과정이 굉장히 간단하다. #include HHOOK hHook; LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) { if (wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) { PKBDLLHOOKSTRUCT pKey = (PKBDLLHOOKSTRUCT)lParam; //Code가 0보다 클 때에만 처리해야합니다. 아닐 경우엔 메세지를 흘려보냅니다.(이유는 잘 모릅니다.) //wParam==256부분은, 키보드를 누르는 이벤트와 떼는 이벤트 중 누르는 이벤트만을 통과시킵니다. //만약 ==267로 바꿀 경우, 키보드를 땔 떼 코드가 실행됩니다. if (nCo..
-
[VS2017][C/C++] 콘솔창 사용하지 않기프로그래밍/C++ 2019. 2. 17. 23:34
프로그래밍을 하다 보면 많은 상황에 마주하게 되지만, 기본적으로 나오는 콘솔창이 필요하지 않을 때가 있다. ※ 비주얼스튜디오 2017 기준 (Based on VisualStudio 2017) 방법 1. 콘솔창을 껐다 켰다 할 수 있지만, blank현상이 있음 #include int main() { HWND hWndConsole = GetConsoleWindow(); ShowWindow(hWndConsole, SW_HIDE); } 방법 2. 아예 끌 수 있음. 다시 켜는 방법은 잘 모르겠음. GUI의 경우 윈도우의 메시지 루프에 주의하여 코딩해야함. https://ko.wikipedia.org/wiki/%EB%A7%88%EC%9D%B4%ED%81%AC%EB%A1%9C%EC%86%8C%ED%94%84%ED%..