개발/C# 61

C# 암호화된 키 만들기(Create and Share (with a client app) a Random Encryption Key)

암호화 키 만드는것은 다양하지만 그래도 필요할때, 급할때 가져다 쓰자. 소개 지난주에 누군가가 임의의 암호화 키 생성에 대한 질문을 올렸고, 이전에 그 라인을 따라 무언가를했기 때문에 과거의 노력을 재현하고 이에 대한 기사를 게시 할 것이라고 생각했습니다. 일반 아이디어는 완전히 임의의 키를 만들고 원하는 데이터를 암호화 한 다음 어떻게 든 소비자와 키를 공유하여 데이터를 해독하여 키와 데이터를 소비자에게 전달하는 것입니다. 이 기사에서는 키를 생성하는 코드를 제공하고 실제 암호화와 데이터 전송은 프로그래머의 상상력에 맡깁니다. 키 생성 문자열 배열로 시작했습니다. 보다 구체적으로, 문자열로 변환 된 guid의 배열입니다. 예를 들어, 배열의 크기는 정상적인 크기로 유지되었지만 코드의 특성은 코드를 리버..

개발/C# 2021.04.25

c# 드래그 앤 드랍 ( drag and drop)

드래그 앤 드랍 할 컨트롤 에 Allowdrop 를 true 로 해준뒤 아래 코드를 삽입하면 드래그앤 드랍이 된다. 아래 코드는 리스트 박스에 드래그한 파일의 경로를 추가해준다. private void listbox_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) e.Effect = DragDropEffects.Copy; } private void listbox_DragDrop(object sender, DragEventArgs e) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); foreach (string str ..

개발/C# 2020.01.16

C# 리스트 박스 수직 스크롤바 없애기

프로젝트내에 클래스를 추가 하던, 라이브러리 형태로 하던 간에, 아래 코드로 리스트 박스를 재정의 해서 쓰면 수직 스크롤바가 사라짐. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; namespace ClassLibrary1 { public class MyListBox : System.Windows.Forms.ListBox { private bool mShowScroll; protected override System.Windows.Forms.CreateParams CreateParams { get { CreateParams cp = base.Crea..

개발/C# 2019.12.20

C# 비디오 레코딩 소스 코드

mpeg 동영상을 만들어주는 소스 코드. 영상을 10 프레임 비율로 쪼개서 캡쳐저장뒤, 오디오랑 합체 시켜 mpeg 파일을 만듬. reference 에서 참조해야할 dll 은 Accord.Video.FFMPEG 자세한 내용은 블로그 참조. https://benbcompsci.wordpress.com/2018/12/04/c-screen-recorder/ [C#] Screen Recorder App In this post I will be going over how to make a screen recorder app using C#. The first thing you need to do is install FFMPEG to your system, which you can do by following th..

개발/C# 2019.11.27

C# <이벤트> 통신(Uart,CAN 등) 에서 실시간 값전달

Form1.cs private Initial() { Manager = new Manager(); Manager.RXMsgEvent += ReadCANMEssage; // event 생성 } private void ReadCANMEssage(object sender, TPCANMsgFD e) // 이벤트 발생시 처리할 함수 { if (InvokeRequired) { Invoke(new EventHandler(ReadCANMEssage), sender, e); } else { if(e.ID == 0x18FF02EB) { MessageBox.Show("Test"); } } } CAN.cs public event EventHandler CANRxMsgEvent; // 이벤트 설정 private void Read..

개발/C# 2019.09.30

C# contextmenustrip Control 찾기

ContextmenuStrip 한개로 여러 Control Listview 나 Listbox 같은 곳에 공통적으로 사용하려고 할때 현재 컨트롤러를 알아야 할 필요가 없다. 모르면.. 여러개를 만들어야 하니까. 그런 무식한 설계는 이제 그만 이럴때 sender 로 Toolstripitem 으로 as 한뒤 그것의 Owner를 찾으면 현재 어느 컨트롤에서 클릭하여 Contextmenustrip 이 사용되어 있는지 알수 있다.. 그것이 바로 아래 코드에서 sourceControl 이고 이것이 Listview 이면 as로 처리하면 된다.. ListView listview = null; ToolStripItem menuItem = sender as ToolStripItem; if (menuItem != null) {..

개발/C# 2019.07.12

C# 패널 스크롤바 키보드로 움직이기

Form 안에 패널이 있고 이 패널 안에 Picture 박스가 있다고 치자. 이 Picture 박스의 그림이 패널 보다 크면 스크롤이 생기는데 키보드를 이용해서 내리고 싶을때가 있다. 이럴때 아래 코드를 사용하면 된다. Form에서 Keydown 이벤트를 발생시키고 키다운 /업 에따라 처리하면 된다. private void Form1_KeyDown(object sender, KeyEventArgs e) { if(e.KeyCode == Keys.Down) { Point current = panel_command.AutoScrollPosition; Point scrolled = new Point(current.X, -current.Y + 50); panel_command.AutoScrollPosition =..

개발/C# 2019.07.09