728x90

2025/01 11

서랍안에 넣어둔 안쓰는 아이폰으로 비트코인 하드웨어 월렛 만들기

Not your keys, not your coins     요즘 유튜브를 보면 비트코인과 관련된 영상들이 많이 나온다. 영상의 대부분은 다양한 이유를 들어 오르는지 내리는지에 대한 내용이거나 거래소에서 타점을 잡는 방법을 알려주는 내용이다. 가끔 심심할때 보면 나름 재밌다.  그러다 이목을 끌었던 내용이 있었는데 비트코인의 진정한 소유와 콜드월렛에 대한 내용이다. 나 같은 경우에도 비트코인과 이더리움을 아주 조금 거래소에 매수한 것이 있다. 물론 그건 진짜 내가 코인을 가진것이 아니라는 것은 알고 있었지만 구체적인 차이를 말하라고 하면 답하지는 못하는 수준의 지식을 갖고 있었다.  그 영상의 시작 중간 끝에서 나오는 내용은 "Not your keys, not your coins" 였다. 영상에 따라 M..

이 프로젝트에는 MFC 라이브러리가 필요합니다 해결법

오후 12:00에 빌드를 시작함...1>------ 빌드 시작: 프로젝트: Project, 구성: Debug x64 ------NU1903: 'SixLabors.ImageSharp' 3.1.3 패키지에 알려진 high 심각도 취약성인 https://github.com/advisories/GHSA-63p8-c4ww-9cg7이(가) 있습니다.NU1902: 'SixLabors.ImageSharp' 3.1.3 패키지에 알려진 moderate 심각도 취약성인 https://github.com/advisories/GHSA-qxrv-gp6x-rc23이(가) 있습니다.NU1902: 'SixLabors.ImageSharp' 3.1.3 패키지에 알려진 moderate 심각도 취약성인 https://github.com/ad..

공부 2025.01.23

[C#] RX Throttle과 ManualResetEventSlim으로 중복요청 필터링하기

어쩌다 보니 CPP/CLI 에서 메인으로 프로그램을 시작해서 버튼 등의 제어를 통해 C# 프로젝트에서 중계를 해주고 그 결과를 다시 CPP/CLI 프로젝트로 보내서 텍스트나 색으로 상태를 표현하는 프로그램을 제작하게 되었다.  문제는 메인에서 사용하는 IMGUI에서 버튼 등을 통해 딜레이 없이 짧은 시간에 한번에 많은 요청을 보낼 수 있다.그리고 통신 관련 DLL이 그런 요청을 그대로 받아들이면 내부에서 무한 로딩에 빠지는 문제가 있다. 또한 통신 객체의 연결 끊기 및 dispose도 제대로 처리되지 못한다. 메인 프로젝트의 imgui는 생소해서 새 기능을 구현하기 힘들고 통신 dll은 소스가 없어서 내가 수정할 수 없으니 그나마 뭔가 유연하게 고칠 수 있는 중계 프로젝트에서 처리를 해줘야 했다.   그..

공부 2025.01.20

2025년 1월 CONY 배당회수 기록

2024 Cony 매수 및 배당 회수 일기올해의 투자 일기를 작성하면서 CONY에 대해 더 적어보려고 한다.원래 이 ETF는 내년 양도세 250만원 공제를 넘어갈 때, 가격이 내려간 만큼 팔아서 손실확정을 내는데 사용하려고 했다.   그러다duplicat.kr  작년 배당 회수에 이어서.. 1월 분배금은 COIN주가가 그닥 오르지 못한 영향인지 0.83정도를 주당 분배금으로 받게 되었다.533주를 가지고 있어서 세금을 떼고 약 377.8달러를 받았다.     이후 17주를 더 매수해서 550주로 맞췄다. 매입가 평균은 19.01달러가 되었고매입 금액은 10,456.51$ 이다.     늘어난 매수 총 금액과 이번에 받은 분배금을 계산해보니 이제 회수율은 32.58%가 되었다.다음 달에는 다시 코인 시장과..

[Devexpress Winform, c#] XtraMessageBox 버튼 텍스트 변경하기

Devexpress에서 기본 제공하는 버튼은 기본 영어로 나온다. 버튼의 글자를 변경하기 위해 직접 접근할 수는 없지만XtraMessageBoxArgs를 매개변수로 하는 show 함수를 이용해 showing 이벤트에서 버튼의 텍스트를 바꿔치기 할 수 있다.다국어를 위한 리소스 등을 이용해서 적용할 수도 있다. public static class CustomXtraMessageBox{ static XtraMessageBoxArgs getArgs(string text, string caption, MessageBoxButtons buttons, MessageBoxIcon icon) { XtraMessageBoxArgs args = new XtraMessageBoxArgs(); ..

공부/Devexpress 2025.01.14

[JS] 내가 필요한 키워드 저장해두는 확장 만들기2 - 설계 및 구현

이제 기본 구조는 알았으니 내가 원하는 기능을 넣으면 된다.내가 상상한 기능을 구상해보기 위해 대충 그림판으로 편집해서 구도를 잡았다..     나만 사용하는 확장 프로그램이기 때문에 우선 디자인은 크게 고려하지 않았다. 우선 background.js와 content.js와 같이 필요 없는 코드들을 비활성화했다. 그리고 아래와 같이 Popup.html, Popup.js를 수정하고 styles.css를 추가했다.  popup.html 오늘 날짜 복사   popup.jsdocument.addEventListener("DOMContentLoaded", () => { const fullDateSpan = document.getElementById("fullDate"); const to..

공부 2025.01.13

[JS] 내가 필요한 키워드 저장해두는 확장 만들기1 - 기본 구성 파악

유튜브에서 크롬 확장 프로그램을 만드는 영상을 봤더니 갑자기 나도 만들고 싶어졌다. 기왕이면 내가 필요한 기능을 넣어서 만들어보기로 했다.예를 들어, 나는 운동을 할때 비공개로 일기를 적어놓는다.제목을 년도와 날짜로 표시하는데 이걸 일일히 직접 작성한다. 아마 확장 프로그램으로 오늘의 날짜를 제목에 맞게 복사할 수 있다면 큰 수고를 덜 수 있을 것 같다.       이제 확장 프로그램을 제일 빨리 만들어 볼 수 있는 방법을 사용했다.바로 ChatGPT에게 물어보는 것이다.자바스크립트는 데이터가 많아서 그런지 쉽게 대답해준다. manifest.json확장의 메타데이터를 정의하며, 필수적인 파일입니다. 다음과 같은 정보를 포함합니다{ "manifest_version": 3, "name": "My Chro..

공부 2025.01.07

NullReferenceException: Object reference not set to an instance of an object 문제 해결 (URP Missing RendererFeature)

발생한 문제는 아래와 같다. 이것만 봐서는 무엇이 원인인지 잘 모른다.NullReferenceException: Object reference not set to an instance of an objectOVRProjectSetupRenderingTasks+c.b__4_42 (UnityEngine.Rendering.Universal.ScriptableRendererFeature feature) (at Assets/Oculus/VR/Editor/OVRProjectSetup/Tasks/Implementations/OVRProjectSetupRenderingTasks.cs:311)System.Linq.Enumerable.Any[TSource] (System.Collections.Generic.IEnumera..

공부/유니티 2025.01.06

[Devexpress Winform] 스프레드 시트 컨트롤 셀 대상 바꾸기 메세지박스 가로채기

Devexpress 의 SpreadsheetControl에서 셀 영역을 드래그해서 다른 셀에 드롭할 때, 두 영역 모두 값이 있었다면 "Do you want to replace the contents of the destination cells?" 라는 메세지 박스가 나오고 확인을 누르면 셀 대상 바꾸기가 된다. 문제는 이 기능이 Devexpress 라이브러리 내부에서 넣은 기능이라 외부에서 컨트롤할 수 없다.다행히 ReplaceService 함수를 통해 해당 기능을 중간에 가져올 수 있다고 한다.  how to intercept the spreadsheets control "Do you want to replace the contents of the destination cells?" message ?..

공부/Devexpress 2025.01.06

[Devexpress Winform] GridView 에서 ValidatingEditor 이벤트때 변경 전 데이터 가져오기

GridView의 ValidatingEditor 이벤트에 있는 BaseContainerValidateEditorEventArgs에서는  변경된 후의 데이터만 가져올 수 있다. 이럴때는 GridView 인스턴스에서 ActiveEditor의 OldEditValue를 가져온다. 예를 들어, GridView gridView 가 있을 때,ValidatingEditor 이벤트 발생시변한 값이 변경 전 값과 같을 때 다른 작업을 하거나 넘길 수 있다.  gridView.ValidatingEditor += (s, e) => { string name = e.Value as string; if (gridView_Lamp.FocusedColumn.FieldName == "Validate할 column 필드이름..

공부/Devexpress 2025.01.05
반응형