옵션 |
|
지금제가 하고 싶은건 A라는 폴더 안에 Book.jpg라는 이미지가 있으면 그걸 가지고 icon.ico라는 아이콘 파일로 변환하고 이 아이콘을 A라는 폴더의 아이콘으로 설정해주는 작업을 파이썬으로 하고 싶어요. 근데 이게 문제가 뭐냐면 icon.ico로 변환하는거까지는 어려울거 없이 되는데, A에 아이콘 설정을 해줘야 하는데, 그걸 위해서는 A라는 폴더안의 desktop.ini파일 안에
[.ShellClassInfo]
IconResource=.icon.ico,0
위와 같은 코드를 넣어줘야 해요.
근데 문제가 뭐냐면 파이썬에서 파일 입출력으로 이걸 만들어줘도 이게 시스템 파일로 인식이 안되는건지 아이콘 설정이 안되요.
웃긴건 똑같은 내용을 텍스트 파일로 만들고(수작업으로), 이 텍스트 파일의 이름을 desktop.ini로 바꿔주기만 해도 제대로 동작해요.
근데 왜 파이썬으로 하면 제대로 적용이 안되는건지 모르겠네요;;
import os
icon_dir = "[.ShellClassInfo]n
IconResource=.icon.ico,0"
os.system("magick convert book.jpg -resize 256x256 -gravity center -background transparent -extent 256x256 icon.ico")
desktop_file = open("desktop.ini", "wt")
desktop_file.write(icon_dir)
desktop_file.close()
위 코드가 현재 제가 사용하고 있는 코드입니다.
magick이라는 명령어를 실행하는 부분은 외부 프로그램을 이용해서 icon파일을 만들어주는 부분이구요, icon_dir이라는 변수에 들어있는 String이 desktop.ini의 내용으로 들어갈 문자열이예요. 이렇게 해서 만들어진 문자열을 그대로 복붙해서 수동으로 만들면 제대로 동작하는데, 왜 그냥은 안되는지 모르겠네요 ㅠㅠ
제발 도와주세요 지금 미치겠습니다.;;