본문 바로가기

전체 글

(263)
라자루스 dll 델파이에서 로드 / how use Lazarus dll in delphi ● 문제사항 라자루스를 이용해 만든 DLL파일이 델파이에서 LoadLibrary에서 실패하는 경우 발생 var H: THandle; // Init ... H := LoadLibrary('D:\temp\lazarus.dll'); //H의 값은 0 ● 확인사항 라자루스 프로젝트에서 DLL을 로드시 정상적으로 호출 되는것을 확인 ● 해결방안 라자루스 Project -> Project Options -> Compliler Options -> Config and Target을 보면 Target Os와 CPU가 기본적으로 디폴트로 되어있다 이를 아래와 같이 Tartget OS를 Win32, CPU를 i386으로 바꿔주니 정상적으로 로드에 성공했다 DLL을 사용하는 PC에 따라 다를꺼 같기도한데 내 피시는 윈도우10..
gitignore 자동생성 페이지 소개 https://www.toptal.com/developers/gitignore gitignore.io Create useful .gitignore files for your project www.toptal.com 위 페이지에서 gitignore를 자동생성해준다 위와같이 사용 OS, 언어, IDE를 입력해주고 [생성] 버튼 입력 위 사진과 같이 자동으로 gitignore일을 만들어준다 신규 언어나 IDE를 사용할 때 뭘 뺴야할지 잘 몰라서 통채로 다 올리는 경우가 있었는데 세상편하다
android createnewfile Operation not permitted 해결 이미지파일을 내부저장소에 저장하는 기능이 있는데 어느순간부터 File에서 createnewfile 함수 호출시 Operation not permitted 라는 에러가 발생하였다 File file = new File(fullPath, fileName); file.createNewFile(); //exception 발생부분 원래 정상 작동하던 코드인데 갑자기 안되서 당황하였고 권한 관련해서 이것도 넣어보고 빼보고 아무리 하다 해결이 안됬다가 디버깅중 이상하다 싶어 결국 해결된게 파일의 확장자가 없으면 create를 실패한다 간단하게 filename에서 확장자가 없다면 확장자를 넣어주는 로직을 추가 후 정상작동하는것을 확인하였다 구글링 대충해봤는데 확장자가 꼭 필요하다 라는말 정도만 있고 그 이유는 못찾았다 ..
delphi 각종 윈도우 경로 읽기 get windows path / SHGetSpecialFolderPath uses shlObj; SHGetSpecialFolderPath([핸들], [리턴받을 경로], [찾을 폴더명], [생성여부] 이 함수에서 찾을 폴더명(CSIDL)을 아래 링크를 참조하여 찾아보면 된다 사용 예시) function GetWindowsPath(nCSIDL): String; var P: array [0..MAX_PATH] of Char; begin if SHGetSpecialFolderPath(0, @P[0], nCSIDL, True) then Result := P else Result := ''; end; sAppdataPath := GetWindowsPath(CSIDL_APPDATA); sProgramPath := GetWindowsPath(CSIDL_PROGRAM_FILES); 위와같이 ..
이용자 이탈 우려?…삼성, 스마트폰 기본앱에 광고 없앤다 삼성전자가 갤럭시 스마트폰의 기본 앱에 삽인된 배너 광고를 없앤다. 기본앱 광고 정책에 대한 불만이 지속되자 사전에 이용자 이탈을 방지하겠다는 판단으로 풀이된다. https://news.mt.co.kr/mtview.php?no=2021081717195716643&outlink=1&ref=%3A%2F%2F 이용자 이탈 우려?…삼성, 스마트폰 기본앱에 광고 없앤다 - 머니투데이 노태문 "고객과 임직원 목소리에 귀 기울인다"삼성전자가 갤럭시 스마트폰의 기본 앱에 삽인된 배너 광고를 없앤다. 기본앱 광고 정책에 대한 불만이 지... news.mt.co.kr
델파이 DBXJSON를 이용한 json 생성 / how to make json at delphi (DBXJSON) 델파이2010에선 JSON unit이 없어서 DBXJSON을 사용하여 json을 생성하는 방법입니다 uses DBXJSON; function makejson():string; var JTopObj, JObj : TJSONObject; JArr : TJSONArray; JPair : TJSONPair; i : integer; sTemp : String; begin JTopObj := TJSONObject.Create; JArr := TJSONArray.Create; for i := 1 to 3 do begin JObj := TJSONObject.Create; JObj.AddPair(TJSONPair.Create('array_index', TJSONNumber.Create( i ))); JObj.AddPai..
안드로이드 앱 디컴파일 / 분석 / 뜯어보기 -2(완) (dex2jar, jd-gui) / apk decompile 1편에서 classes.dex파일까지 추출한 상황 2021.07.30 - [운동하는 개발자/Android] - 안드로이드 앱 디컴파일 / 분석 / 뜯어보기 -1 (APK Extractor) / apk decompile 안드로이드 앱 디컴파일 / 분석 / 뜯어보기 -1 (APK Extractor) / apk decompile ※들어가기 앞서 Proguard나 각종 디컴파일 방지 기술이 적용되지 않은 앱에만 사용 가능합니다 1. 앱 추출 play store에서 디컴파일을 원하는 앱을 다운로드한다 (기본적으로 안드로이드에서 apk를 singo112ok.tistory.com 2. Jar 생성 앞서 추출한 clsses.dex파일을 jar파일로 변경해야 하는 차례이다 이때는 dex2jar이란 프로그램을 사용했다 압..
안드로이드 앱 디컴파일 / 분석 / 뜯어보기 -1 (APK Extractor) / apk decompile ※들어가기 앞서 Proguard나 각종 디컴파일 방지 기술이 적용되지 않은 앱에만 사용 가능합니다 1. 앱 추출 play store에서 디컴파일을 원하는 앱을 다운로드한다 (기본적으로 안드로이드에서 apk를 다운받고 설치 한 뒤 apk는 자동 삭제된다) 이를 설치된 데이터를 가지고 다시 apk를 추출해내야 하므로 구글에서 APK Extractor 앱을 다운받는다 ※ 다른 추출 앱도 상관없으며 이미 APK를 인터넷에서 받거나 한 경우엔 해당 작업이 필요 없다 첫 실행화면 드래그하여 추출을 원하는 앱 옆에 : 버튼을 누른다 창이 하나 뜨면 공유 버튼을 누르고 위와 같이 저장된 경로를 알려주고 바로 외부 앱으로 공유도 가능하다 윈도우 탐색기로 해당 경로를 열어보면 저렇게 앱 명(계산기)의 폴더가 생성되었고 들..