.net6에서 process.start로 다른 프로그램 또는 브라우저 실행 시 오류해결 닷넷 프레임워크에서는 잘되던 코드가 .net6에서는 오류가 난다. 대충 디버깅 해보면 명령어 앞에 빌드경로(Working Path)가 붙어서 실행되면서 파일을 찾을 수 없다는 오류가 발생되는 것 같았다. Process.Start(new ProcessStartInfo("https://www.example.com") { UseShellExecute = true }); 웹 브라우저의 경우 이렇게 하면 잘된다. 개발/C# 2024.01.08
DevExpress Skin & Skin Palette 동시 적용 및 가져오기 예전에는 스킨만 선택하면 됐는데 요즘에는 스킨 안에 색배열.. 제목에서 말한 스킨 팔렛이 또 존재합니다. 함수하나로 동시 적용하는 게 있으면 좋겠습니다만, 아직 제가 못 찾은 건지 없는 건지... 좀 코드가 많지만 소개해 봅니다. 스킨 동시적용하기 대략적인 코드의 주석은 아래 참조해주시고요. GClass.LoginUser는 전역객체입니다. 로그인 사용자 별로 스킨을 적용할 수 있도록 하였습니다. 둘다 이름을 저장하기 때문에 String객체입니다. // 스킨을 적용합니다. (요건 기존과 같습니다.) UserLookAndFeel.Default.SkinName = GClass.LoginUser.skin; // 현재 스킨을 가져와 객체에 담는다. var skin = CommonSkins.GetSkin(UserL.. 개발/C# + DevExpress 2023.09.12
Typescript 현재 접속한 사용자의 아이피 가져오기 https://geolocation-db.com/json/ 사이트 정보를 이용하는 방법을 사용합니다. 이 방법은 인터넷 외부 아이피를 가져오기 때문에 내부 아이피는 가져올 수는 없습니다. 외부 아이피를 통해 접속한 사용자들은 모두 같은 아이피로 처리되요. const result = axios.get('https://geolocation-db.com/json/').then(async (res) => { console.log("Country_code = " + res.data.country_code); console.log("Country_Name = " + res.data.country_name); console.log("State = " + res.data.state) console.log("City =.. 개발/Node.js 2023.08.19
바닐라 ListBox 항목 별 색깔 바꾸기 DevExpress는 다 좋은데 패키징하면 파일이 엄청 커져서 뷁입니다. 그래서 기본 콘트롤로 개발하다보니 이 기능이 필요해서 만들어봤습니다. 대충 이런 모양... ListBox에 넣는 Item은 DataTable을 데이터 소스로 해서 넣어봤습니다. 일반 클래스 형태로 하셔도 됩니다. 현재 아이템에 어떤 기준으로 색상을 넣을 건지의 분기만 가능하면 되요. 물론 스트링으로 넣고 스트링 파싱해서 하셔도 되겠죠? 자세한 내용은 코드 내 주석으로 대신합니다. DataTable dtLog; private void Frmmain_Load(object sender, EventArgs e) { dtLog = new DataTable(); // 흠.. Datatable Column생성하는 건데 궂이 DevExpressH.. 개발/C# 2023.08.17
싱글 인스턴스로 프로그램 실행하기 지원 Framework: 프레임워크, .Net 6에서 확인함. "싱글 인스턴스가 뭐냐?"라는 질의 보다 이것을 왜 사용했는지부터 알아보겠습니다. 프로그램을 실행할 때 아규먼트를 받아서 처리하는 프로그램을 개발할 때, 이미 떠 있는 프로세스에 아규먼트를 전달 할 방법이 뭐가 있을까? 이 방법 이전에는 프로그램이 떠있는지 체크해서 Send Message Win32 API를 통해 아규먼트를 전달하는 방법을 사용했는데 이 경우 별도의 프로그램을 중간매개로 만들어야 했습니다. C# 프로젝트를 생성하면 program.cs가 자동생성되고 Application.Run(new Form1()); 위 코드를 사용해 폼을 띄웁니다. 프로그램이 시작된 상태에서 다시 실행파일을 실행하면 위 코드를 통해 똑같은 프로그램이 뜨겠죠... 개발/C# 2023.07.04