메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

Autoit ini파일 memory 캐시

데브카페

Autoit ini파일 memory 캐시

  • AutoIt에서 .ini 파일을 메모리에 로드해두고 필요할 때마다 읽어오는 방법은 IniRead 또는 IniReadSection 함수를 활용하여 파일의 내용을 변수에 저장하는 것임.
  • .ini 파일 전체를 메모리에 올려두려면 IniReadSectionNames와 IniReadSection 함수 사용
  • ini 파일의 내용을 메모리에 저장해두면, 파일을 매번 다시 읽지 않고도 데이터를 손쉽게 접근.

.ini 파일을 메모리에 로드한 후 필요할 때마다 데이터를 불러오는 방법

.ini 파일 예시

  • 예를 들어 config.ini 파일이라고 가정
[Settings]
username=admin
password=1234

[Network]
ip=192.168.1.1
port=8080

.ini 파일을 메모리에 로드하고 읽기

; .ini 파일 경로
Local $sIniFile = "config.ini"

; .ini 파일을 메모리에 로드
Global $iniData = IniLoad($sIniFile)

; 설정 값을 가져오는 함수
Func GetIniValue($section, $key, $default = "")
    ; 섹션이 존재하는지 확인
    If Not MapExists($iniData[$section]) Then
        Return $default
    EndIf
    ; 키가 존재하는지 확인
    If Not MapExists($iniData[$section][$key]) Then
        Return $default
    EndIf
    ; 값 반환
    Return $iniData[$section][$key]
EndFunc

; 예시: 데이터 읽기
Local $username = GetIniValue("Settings", "username", "defaultUser")
Local $password = GetIniValue("Settings", "password", "defaultPass")
Local $ip = GetIniValue("Network", "ip", "127.0.0.1")
Local $port = GetIniValue("Network", "port", "80")

; 출력
MsgBox(0, "INI Data", "Username: " & $username & @CRLF & "Password: " & $password & @CRLF & "IP: " & $ip & @CRLF & "Port: " & $port)
  • 코드 설명

1. IniLoad 함수: .ini 파일을 메모리에 로드합니다. IniLoad는 각 섹션을 딕셔너리로 읽고, 각 섹션 아래 키-값 쌍으로 저장. 2. GetIniValue 함수: 메모리에 저장된 데이터를 읽기 위해 섹션, 키, 그리고 기본값(값이 없을 경우)을 인자로 받아 해당 값을 반환. 3. 예제 읽기: Settings 섹션에서 username, password와 Network 섹션에서 ip, port 값을 읽어옵니다.

  • .ini 파일 변경시 리로딩 기능 추거개발 필요

Comments