Compare commits
140 Commits
Author | SHA1 | Date |
---|---|---|
Костянтин Сергійович | 1d4eea4926 | |
Pete Batard | e596e1a550 | |
Riku Brander | 49be8c34b5 | |
Aldis Tutins | 3fdf6e121f | |
a1346054 | 97d69d84c6 | |
Pete Batard | 45423becd5 | |
Martin Kubánik | fb43dc8957 | |
Roberto Boriotti | d12e845b9a | |
Miloš Ljubičić | 236b4e60eb | |
Jakub Zieciak | b2f06d746b | |
Ben Gamer | 8727d3b3f6 | |
Marco A. Ramirez Madrid | ef2cac008d | |
Csizmadia Gábor | 9476bb41ad | |
五月雨 | 412f1c63da | |
Christos Alvanos | 0c38268665 | |
Pete Batard | 03d46b3d87 | |
Pete Batard | d0bc05077a | |
Pete Batard | 180a61736c | |
Pete Batard | 2106be0c3b | |
Marcos Mello | ddc7f1b89d | |
Pete Batard | 39a5ae6d36 | |
Pete Batard | cba95f7710 | |
Erfan Al | 4df3fd8d16 | |
VenusGirl | d38664dde8 | |
Mehmetali Kuran | 7d63b78571 | |
Wang JiaWei | 2767fdbfd3 | |
Ahmed Rasnaama | 569b1e2971 | |
Pete Batard | 2a6df95cad | |
Pete Batard | 83e0bdad7a | |
Pete Batard | df9e333f3a | |
Pete Batard | 4ec57dc5d7 | |
Pete Batard | 6ac2dfb0df | |
Suttirak Mattayawerakiat | 00dc0473b5 | |
Pete Batard | 4286871f50 | |
Thilo Langbein | 2c3e560ba3 | |
Thomas De Rocker | 2ecb8b54b2 | |
Sopor | 4019bc135f | |
Дмитрий Ерохин | 0a956f38b0 | |
Itiel | 37ccc8d1e1 | |
Mike Handberg Hovedskov | 13ae9b3339 | |
Richard Kahl | 11f74cde01 | |
Fedorovici Constantin-Robert | b28eb88e3b | |
Minh Nguyễn Quang | 8b0531e4dc | |
Pete Batard | 855a06d3a0 | |
Pete Batard | eb45c97667 | |
Pete Batard | 513c5f44a5 | |
Pete Batard | 92ac1c770c | |
Pete Batard | f813eb05d8 | |
Pete Batard | 34e6e43a97 | |
Pete Batard | 8a8e418751 | |
Pete Batard | 4eda8d9d5c | |
Pete Batard | 5061af2b7c | |
Pete Batard | dd8314b2f0 | |
Pete Batard | 6dac531552 | |
Pete Batard | 8a5a5a318a | |
Pete Batard | 52ca79816f | |
Pete Batard | b7568ab30a | |
Pete Batard | a59389e1e1 | |
Pete Batard | d3f78c4e01 | |
Pete Batard | 5eae8a6441 | |
Pete Batard | abc33122a0 | |
Pete Batard | 8738e7a7de | |
Bella Zhang | 026afa7e3d | |
Pete Batard | 172888ac32 | |
Pete Batard | 15e3886499 | |
Pete Batard | 0f23c47184 | |
Pete Batard | 164d4b0ab0 | |
Pete Batard | 1be7eaf306 | |
Pete Batard | ac9a3f42d8 | |
Pete Batard | c2b2624b62 | |
Pete Batard | 018ed3414b | |
Pete Batard | f6fd520d2a | |
Pete Batard | b63f9ae93c | |
Pete Batard | fff39c56e8 | |
Pete Batard | 710bfe7f4d | |
Pete Batard | ae6732c07b | |
Fred | 2cebf914fd | |
Pete Batard | 70e87482c1 | |
Pete Batard | ebe01cc7b6 | |
Pete Batard | 51569d9e13 | |
dependabot[bot] | 965d82c425 | |
johnloopi | b6d14d46df | |
Pete Batard | 89c1f8a72c | |
Pete Batard | e0b5c6d96f | |
Pete Batard | 58c56eb398 | |
Pete Batard | 020e0b7c3a | |
Pete Batard | 8edb487ac9 | |
Pete Batard | 1630e912d4 | |
Pete Batard | e9d588a6e0 | |
Pete Batard | 0bd38abd4e | |
Pete Batard | 45a5f22d43 | |
Pete Batard | 8859c59548 | |
Pete Batard | 1fc790295c | |
Pete Batard | 99bffe8364 | |
Pete Batard | 98725a0d5f | |
Pete Batard | 94ecf74c5f | |
Pete Batard | d5bf53054b | |
Pete Batard | 866aa22a8b | |
Pete Batard | 9c6b1ad977 | |
Pete Batard | 5b6574d6f6 | |
Pete Batard | c5ad16fdeb | |
Pete Batard | 5084317dd7 | |
AJIOB | b81b440a20 | |
Pete Batard | 64e85ed09a | |
Pete Batard | 3329304e67 | |
Pete Batard | 65b84ea99d | |
Pete Batard | 5191c68337 | |
Pete Batard | 5bbcba8534 | |
Pete Batard | f411d526d6 | |
Pete Batard | 0363bfe503 | |
Pete Batard | ef345bf106 | |
ИEØ_ΙΙØZ | bb66dfc492 | |
Pete Batard | 10dbfdd7e1 | |
Pete Batard | 0b1c68635a | |
Pete Batard | f9370e002e | |
Pete Batard | d4c9f2dfa1 | |
Pete Batard | 1476e9cd8b | |
Pete Batard | c47ee4c435 | |
Pete Batard | c717c7789b | |
Pete Batard | f233191d54 | |
Pete Batard | 52a5551749 | |
Pete Batard | 16570f8662 | |
Pete Batard | c59e9209eb | |
Pete Batard | 7eb9a6f16b | |
Pete Batard | be5b590cfb | |
Pete Batard | 43764268de | |
Pete Batard | c4b1b23832 | |
Pete Batard | 090bfb9770 | |
Pete Batard | 3e81b38c2d | |
Pete Batard | 71e99add76 | |
Pete Batard | beb847511b | |
Pete Batard | 30ccf24ca4 | |
Pete Batard | 109df708b4 | |
Pete Batard | 4d89e83b5d | |
Pete Batard | 600b8fc787 | |
Pete Batard | 3afa139d7a | |
Pete Batard | 3a0f7d3813 | |
Pete Batard | 23d89d9764 | |
Pete Batard | 0df68b6af9 | |
Pete Batard | 0bda98f0ed |
|
@ -25,7 +25,7 @@ Checklist
|
|||
---------
|
||||
- [ ] I looked at https://github.com/pbatard/rufus/wiki/FAQ to see if my question has already been answered.
|
||||
- [ ] I performed a search in the issue tracker for similar issues using keywords relevant to my problem, such as the error message I got from the log.
|
||||
- [ ] I clicked the 'Log' button or pressed <kbd>Ctrl</kbd>-<kbd>L</kbd> in Rufus, or used [DebugView](https://learn.microsoft.com/en-us/sysinternals/downloads/debugview), and copy/pasted the log into the section that says `<FULL LOG>` below.
|
||||
- [ ] I clicked the 'Log' button (🗒️) or pressed <kbd>Ctrl</kbd>-<kbd>L</kbd> in Rufus, or used [DebugView](https://learn.microsoft.com/en-us/sysinternals/downloads/debugview), and copy/pasted the log into the section that says `<FULL LOG>` below.
|
||||
- [ ] The log I am copying is the FULL log, starting with the line `Rufus version: x.y.z` - I have NOT removed any part of it.
|
||||
|
||||
Additionally (if applicable):
|
||||
|
|
|
@ -40,15 +40,15 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v2
|
||||
uses: github/codeql-action/init@v3
|
||||
with:
|
||||
languages: cpp
|
||||
|
||||
- name: Add MSBuild to PATH
|
||||
uses: microsoft/setup-msbuild@v1
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
with:
|
||||
msbuild-architecture: x64
|
||||
|
||||
|
@ -56,4 +56,4 @@ jobs:
|
|||
run: msbuild ${{env.SOLUTION_FILE_PATH}} /m /p:Configuration=${{ env.BUILD_CONFIGURATION}},Platform=${{ env.TARGET_PLATFORM }}
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v2
|
||||
uses: github/codeql-action/analyze@v3
|
||||
|
|
|
@ -27,7 +27,7 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: recursive
|
||||
|
@ -44,7 +44,7 @@ jobs:
|
|||
run: echo "${{github.workspace}}/cov-analysis-win64/bin" >> $GITHUB_PATH
|
||||
|
||||
- name: Add MSBuild to PATH
|
||||
uses: microsoft/setup-msbuild@v1
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
|
||||
- name: Build with Coverity
|
||||
run: |
|
||||
|
@ -52,7 +52,7 @@ jobs:
|
|||
cov-build.exe --dir cov-int msbuild ${{ env.SOLUTION_FILE_PATH }} /m /p:Configuration=${{ env.BUILD_CONFIGURATION }},Platform=${{ env.TARGET_PLATFORM }}
|
||||
|
||||
- name: Publish Coverity artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: cov-int
|
||||
path: cov-int/
|
||||
|
|
|
@ -3,15 +3,15 @@ name: '[cron] Lock stale issues'
|
|||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
- cron: '33 22 * * *'
|
||||
|
||||
jobs:
|
||||
lock:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: dessant/lock-threads@v4
|
||||
- uses: dessant/lock-threads@v5
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
issue-inactive-days: '90'
|
||||
issue-comment: >
|
||||
This thread has been automatically locked since there has not been
|
||||
|
|
|
@ -53,7 +53,7 @@ jobs:
|
|||
upx
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: recursive
|
||||
|
@ -63,14 +63,18 @@ jobs:
|
|||
shell: bash
|
||||
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
||||
# This ONLY works if the shell is bash or if using $env:GITHUB_OUTPUT
|
||||
run: echo "option=--enable-alpha" >> $GITHUB_OUTPUT
|
||||
run: |
|
||||
echo "option=--enable-alpha" >> $GITHUB_OUTPUT
|
||||
sed -b -i 's/VALUE "InternalName", "Rufus"/VALUE "InternalName", "Rufus (ALPHA)"/' ./src/rufus.rc
|
||||
|
||||
- name: Set BETA
|
||||
id: set_beta
|
||||
shell: bash
|
||||
if: ${{ startsWith(github.ref, 'refs/tags/') && contains(github.ref, 'BETA') }}
|
||||
# This ONLY works if the shell is bash or if using $env:GITHUB_OUTPUT
|
||||
run: echo "option=--enable-beta" >> $GITHUB_OUTPUT
|
||||
run: |
|
||||
echo "option=--enable-beta" >> $GITHUB_OUTPUT
|
||||
sed -b -i 's/VALUE "InternalName", "Rufus"/VALUE "InternalName", "Rufus (BETA)"/' ./src/rufus.rc
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
|
@ -92,7 +96,18 @@ jobs:
|
|||
|
||||
- name: Upload artifacts
|
||||
if: ${{ github.event_name == 'push' }}
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: MinGW
|
||||
name: ${{ matrix.sys }}
|
||||
path: ./*.exe
|
||||
|
||||
Extra-Step-To-Merge-Artifacts-Thanks-To-Upload-Artifact-v4-Breaking-Backwards-Compatibility:
|
||||
runs-on: windows-latest
|
||||
needs: MinGW-Build
|
||||
steps:
|
||||
- name: Merge Artifacts
|
||||
uses: actions/upload-artifact/merge@v4
|
||||
if: ${{ github.event_name == 'push' }}
|
||||
with:
|
||||
name: MinGW
|
||||
delete-merged: true
|
|
@ -39,13 +39,13 @@ jobs:
|
|||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: recursive
|
||||
|
||||
- name: Add MSBuild to PATH
|
||||
uses: microsoft/setup-msbuild@v1
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
with:
|
||||
msbuild-architecture: x64
|
||||
|
||||
|
@ -54,14 +54,18 @@ jobs:
|
|||
shell: bash
|
||||
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
|
||||
# This ONLY works if the shell is bash or if using $env:GITHUB_OUTPUT
|
||||
run: echo "option=/DALPHA" >> $GITHUB_OUTPUT
|
||||
run: |
|
||||
echo "option=/DALPHA" >> $GITHUB_OUTPUT
|
||||
sed -b -i 's/VALUE "InternalName", "Rufus"/VALUE "InternalName", "Rufus (ALPHA)"/' ./src/rufus.rc
|
||||
|
||||
- name: Set BETA
|
||||
id: set_beta
|
||||
shell: bash
|
||||
if: ${{ startsWith(github.ref, 'refs/tags/') && contains(github.ref, 'BETA') }}
|
||||
# This ONLY works if the shell is bash or if using $env:GITHUB_OUTPUT
|
||||
run: echo "option=/DBETA" >> $GITHUB_OUTPUT
|
||||
run: |
|
||||
echo "option=/DBETA" >> $GITHUB_OUTPUT
|
||||
sed -b -i 's/VALUE "InternalName", "Rufus"/VALUE "InternalName", "Rufus (BETA)"/' ./src/rufus.rc
|
||||
|
||||
- name: Build
|
||||
shell: cmd
|
||||
|
@ -82,10 +86,21 @@ jobs:
|
|||
curl --request POST --url https://www.virustotal.com/api/v3/monitor/items --header 'x-apikey: ${{ secrets.VIRUSTOTAL_API_KEY }}' --form path='/rufus_${{ matrix.TARGET_PLATFORM }}.exe' --form file=@./rufus_${{ matrix.TARGET_PLATFORM }}.exe
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
uses: actions/upload-artifact@v4
|
||||
if: ${{ github.event_name == 'push' }}
|
||||
with:
|
||||
name: VS2022
|
||||
name: ${{ matrix.TARGET_PLATFORM }}
|
||||
path: |
|
||||
./*.exe
|
||||
./*.pdb
|
||||
|
||||
Extra-Step-To-Merge-Artifacts-Thanks-To-Upload-Artifact-v4-Breaking-Backwards-Compatibility:
|
||||
runs-on: windows-latest
|
||||
needs: VS2022-Build
|
||||
steps:
|
||||
- name: Merge Artifacts
|
||||
uses: actions/upload-artifact/merge@v4
|
||||
if: ${{ github.event_name == 'push' }}
|
||||
with:
|
||||
name: VS2022
|
||||
delete-merged: true
|
||||
|
|
|
@ -1,27 +1,40 @@
|
|||
*.a
|
||||
*.aps
|
||||
*.appx
|
||||
*.appxupload
|
||||
*.bak
|
||||
*.db
|
||||
*.db-shm
|
||||
*.db-wal
|
||||
*.dep
|
||||
*.diff
|
||||
*.dll
|
||||
*.efi
|
||||
*.exe
|
||||
*.htm
|
||||
*.idb
|
||||
*.ipch
|
||||
*.la
|
||||
*.lib
|
||||
*.lo
|
||||
*.lock
|
||||
*.log
|
||||
*.mac
|
||||
*.mo
|
||||
*.mp4
|
||||
*.ncb
|
||||
*.nope
|
||||
*.o
|
||||
*.obj
|
||||
*.old
|
||||
*.opendb
|
||||
*.opt
|
||||
*.org
|
||||
*.p7x
|
||||
*.patch
|
||||
*.pc
|
||||
*.pdb
|
||||
*.pdf
|
||||
*.plg
|
||||
*.res
|
||||
*.sig
|
||||
|
@ -35,22 +48,21 @@
|
|||
.deps
|
||||
.libs
|
||||
Makefile
|
||||
arm
|
||||
arm64
|
||||
x64
|
||||
x86
|
||||
/arm
|
||||
/arm64
|
||||
/x64
|
||||
/x86
|
||||
autom4te.cache
|
||||
config.guess
|
||||
./config.h
|
||||
/config.h
|
||||
config.log
|
||||
config.status
|
||||
config.sub
|
||||
cov-int
|
||||
cov-int.zip
|
||||
depcomp
|
||||
embedded.loc
|
||||
res/loc/pollock/.vs
|
||||
res/loc/pollock/bin
|
||||
res/loc/pollock/obj
|
||||
rufus_files
|
||||
/res/loc/pollock/.vs
|
||||
/res/loc/pollock/bin
|
||||
/res/loc/pollock/obj
|
||||
/rufus_files
|
||||
stamp-h1
|
||||
/.vs/rufus
|
||||
|
|
|
@ -19,7 +19,7 @@ TARGET := $(word 1,$(subst -, ,$(TUPLE)))
|
|||
DEF_SUFFIX := $(if $(TARGET:x86_64=),.def,.def64)
|
||||
|
||||
.PHONY: all
|
||||
all: dwmapi-delaylib.lib wintrust-delaylib.lib
|
||||
all: dwmapi-delaylib.lib version-delaylib.lib wintrust-delaylib.lib
|
||||
|
||||
%.def64: %.def
|
||||
$(AM_V_SED) "s/@.*//" $< >$@
|
||||
|
@ -29,4 +29,3 @@ all: dwmapi-delaylib.lib wintrust-delaylib.lib
|
|||
|
||||
clean:
|
||||
$(RM) -rf *.lib
|
||||
|
|
@ -367,7 +367,7 @@ uninstall-am:
|
|||
|
||||
|
||||
.PHONY: all
|
||||
all: dwmapi-delaylib.lib wintrust-delaylib.lib
|
||||
all: dwmapi-delaylib.lib version-delaylib.lib wintrust-delaylib.lib
|
||||
|
||||
%.def64: %.def
|
||||
$(AM_V_SED) "s/@.*//" $< >$@
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
EXPORTS
|
||||
GetFileVersionInfoSizeW@8
|
||||
GetFileVersionInfoW@16
|
||||
VerQueryValueA@16
|
|
@ -133,12 +133,12 @@
|
|||
<AdditionalOptions>/utf-8 $(ExternalCompilerOptions) %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -162,12 +162,12 @@
|
|||
<AdditionalOptions>/utf-8 $(ExternalCompilerOptions) %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<AdditionalLibraryDirectories>C:\Program Files (x86)\Windows Kits\10\Lib\10.0.15063.0\um\arm</AdditionalLibraryDirectories>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -193,12 +193,12 @@
|
|||
<AdditionalOptions>/utf-8 $(ExternalCompilerOptions) %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<AdditionalLibraryDirectories>C:\Program Files (x86)\Windows Kits\10\Lib\10.0.16299.0\um\arm64</AdditionalLibraryDirectories>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -229,12 +229,12 @@
|
|||
<AdditionalOptions>/utf-8 $(ExternalCompilerOptions) %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -260,13 +260,13 @@
|
|||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<AdditionalOptions>/BREPRO %(AdditionalOptions)</AdditionalOptions>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -292,13 +292,13 @@
|
|||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<AdditionalLibraryDirectories>C:\Program Files (x86)\Windows Kits\10\Lib\10.0.15063.0\um\arm</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>/BREPRO %(AdditionalOptions)</AdditionalOptions>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -326,13 +326,13 @@
|
|||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;ole32.lib;advapi32.lib;gdi32.lib;shell32.lib;comdlg32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<AdditionalLibraryDirectories>C:\Program Files (x86)\Windows Kits\10\Lib\10.0.16299.0\um\arm64</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>/BREPRO %(AdditionalOptions)</AdditionalOptions>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;ole32.dll;advapi32.dll;gdi32.dll;shell32.dll;comdlg32.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -363,13 +363,13 @@
|
|||
<StringPooling>true</StringPooling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;comdlg32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>advapi32.lib;comctl32.lib;crypt32.lib;gdi32.lib;ole32.lib;dwmapi.lib;setupapi.lib;shell32.lib;shlwapi.lib;version.lib;wintrust.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<UACExecutionLevel>RequireAdministrator</UACExecutionLevel>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<AdditionalOptions>/BREPRO %(AdditionalOptions)</AdditionalOptions>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;comdlg32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
<DelayLoadDLLs>advapi32.dll;comctl32.dll;crypt32.dll;gdi32.dll;ole32.dll;dwmapi.dll;setupapi.dll;shell32.dll;shlwapi.dll;version.dll;wintrust.dll;%(DelayLoadDLLs)</DelayLoadDLLs>
|
||||
</Link>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_UNICODE;UNICODE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
@ -397,7 +397,7 @@
|
|||
<ClCompile Include="..\src\process.c" />
|
||||
<ClCompile Include="..\src\re.c" />
|
||||
<ClCompile Include="..\src\rufus.c" />
|
||||
<ClCompile Include="..\src\checksum.c" />
|
||||
<ClCompile Include="..\src\hash.c" />
|
||||
<ClCompile Include="..\src\smart.c" />
|
||||
<ClCompile Include="..\src\stdfn.c" />
|
||||
<ClCompile Include="..\src\stdio.c" />
|
||||
|
|
|
@ -66,7 +66,7 @@
|
|||
<ClCompile Include="..\src\smart.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\checksum.c">
|
||||
<ClCompile Include="..\src\hash.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\pki.c">
|
||||
|
|
|
@ -1,11 +1,59 @@
|
|||
o Version 4.5 (2024.05.??)
|
||||
Add a new advanced option, that adds runtime UEFI media validation to suitable images (Windows, most Linux)
|
||||
Move the 'Use Rufus MBR' advanced option to a cheat mode (Alt-A)
|
||||
Fix truncation of VHDX images, as well as a benign error message when writing VHD/VHDX
|
||||
Fix support for Linux persistence in some configurations (Mint, Ubuntu 24.04)
|
||||
Fix multiple potential vulnerabilities (with thanks to Mansour Gashasbi)
|
||||
Update internal GRUB to version 2.12
|
||||
Update UEFI:NTFS to latest (now always uses the ntfs-3g driver, rather than the buggy AMI NTFS one)
|
||||
Increase buffer size when copying ISO files, in an attempt to minimize the AMI NTFS UEFI driver bug
|
||||
Improve partition creation handling
|
||||
Don't display the WUE dialog when a conflicting 'unattend.xml' already exists
|
||||
|
||||
o Version 4.4 (2024.01.17)
|
||||
Add workaround for distros that use broken symbolic links as their UEFI bootloaders (such as Mint 21.3)
|
||||
Add support for GRUB 2.12
|
||||
Fix a crash when saving .ffu images
|
||||
Fix UEFI:NTFS partition not being added, in MBR mode, for some Linux ISOs
|
||||
Prevent Microsoft Dev Drives from being listed
|
||||
Improve support for SDXC card readers
|
||||
Improve Large FAT32 formatting by aligning start of data regions to 1 MB (courtesy of Fred)
|
||||
|
||||
o Version 4.3 (2023.10.19)
|
||||
Add support for Rock Ridge symbolic links preservation when NTFS is used
|
||||
Add an exception to enforce NTFS for Linux Mint's LMDE
|
||||
Add an expert feature to restrict a Windows installation to S Mode
|
||||
Fix persistence support for Debian 12 when booted in BIOS mode
|
||||
Fix a regression that prevented the opening of .vhd images
|
||||
Update UEFI:NTFS to report a more explicit error on bootmgr security issues
|
||||
Improve the search for conflicting processes by running it in a background thread
|
||||
Improve support for Slax Linux
|
||||
|
||||
o Version 4.2 (2023.07.26)
|
||||
Add detection and warning for UEFI revoked bootloaders (including ones revoked through SkuSiPolicy.p7b)
|
||||
Add ZIP64 support, to extract .zip images that are larger than 4 GB
|
||||
Add saving and restoring current drive to/from compressed VHDX image
|
||||
Add saving and restoring current drive to/from compressed FFU (Full Flash Update) image [EXPERIMENTAL]
|
||||
Fix a crash when trying to open Windows ISOs, with the MinGW compiled x86 32-bit version
|
||||
Fix an issue where ISOs that contain a boot image with an 'EFI' label are not detected as bootable
|
||||
Increase the ISO → ESP limit for Debian 12 netinst images
|
||||
Ensure that the main partition size is aligned to the cluster size
|
||||
|
||||
o Version 4.1 (2023.05.31)
|
||||
Add timeouts on enumeration queries that may stall on some systems
|
||||
Restore MS-DOS drive creation through the download of binaries from Microsoft
|
||||
Update the log button icon
|
||||
Fix UEFI:NTFS incompatibility with Windows Dev Kit 2023 platform
|
||||
Fix more GRUB 'out of range pointer' errors with Ubuntu/Fedora when booting in BIOS mode
|
||||
|
||||
o Version 4.0 (2023.04.26)
|
||||
Fix persistence partition not working with Ubuntu 23.04
|
||||
Fix persistent partition not working with Ubuntu 23.04
|
||||
Fix out of range pointer error with Ubuntu 23.04 when booting in BIOS mode
|
||||
Fix boot freeze with Ubuntu Studio when Secure Boot is enabled
|
||||
Fix incorrect architecture detection when checking for updates
|
||||
Fix a Windows Store application crash when processing GRUB bootloaders
|
||||
Fix a Windows Store application crash when enumerating processes that contain a % sign
|
||||
Fix a Windows Store application crash when using the German localization
|
||||
Fix a Windows Store application crash when using German localization
|
||||
Note that the major version was bumped on account of:
|
||||
- New versions of Rufus requiring Windows 8 or later
|
||||
- New versions of Rufus defaulting to a 64-bit executable
|
||||
|
|
|
@ -17,18 +17,19 @@ Features
|
|||
--------
|
||||
|
||||
* Format USB, flash card and virtual drives to FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3
|
||||
* Create DOS bootable USB drives, using [FreeDOS](https://www.freedos.org) or MS-DOS (Windows 8.1 or earlier)
|
||||
* Create DOS bootable USB drives using [FreeDOS](https://www.freedos.org) or MS-DOS
|
||||
* Create BIOS or UEFI bootable drives, including [UEFI bootable NTFS](https://github.com/pbatard/uefi-ntfs)
|
||||
* Create bootable drives from bootable ISOs (Windows, Linux, etc.)
|
||||
* Create bootable drives from bootable disk images, including compressed ones
|
||||
* Create Windows 11 installation drives for PCs that don't have TPM or Secure Boot
|
||||
* Create [Windows To Go](https://en.wikipedia.org/wiki/Windows_To_Go) drives
|
||||
* Create VHD/DD, VHDX and FFU images of an existing drive
|
||||
* Create persistent Linux partitions
|
||||
* Create VHD/DD images of a drive
|
||||
* Compute MD5, SHA-1, SHA-256 and SHA-512 checksums of the selected image
|
||||
* Perform runtime validation of UEFI bootable media
|
||||
* Improve Windows installation experience by automatically setting up OOBE parameters (local account, privacy options, etc.)
|
||||
* Perform bad blocks checks, including detection of "fake" flash drives
|
||||
* Download official Microsoft Windows 7, Windows 8, Windows 10 or Windows 11 retail ISOs
|
||||
* Download official Microsoft Windows 8, Windows 10 or Windows 11 retail ISOs
|
||||
* Download [UEFI Shell](https://github.com/pbatard/UEFI-Shell) ISOs
|
||||
* Modern and familiar UI, with [38 languages natively supported](https://github.com/pbatard/rufus/wiki/FAQ#What_languages_are_natively_supported_by_Rufus)
|
||||
* Small footprint. No installation required.
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
@echo off
|
||||
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x64\signtool" sign /v /sha1 3dbc3a2a0e9ce8803b422cfdbc60acd33164965d /fd SHA256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td SHA256 %1
|
||||
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x64\signtool" sign /v /sha1 3dbc3a2a0e9ce8803b422cfdbc60acd33164965d /fd SHA256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td SHA256 %*
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.71 for rufus 4.0.
|
||||
# Generated by GNU Autoconf 2.71 for rufus 4.5.
|
||||
#
|
||||
# Report bugs to <https://github.com/pbatard/rufus/issues>.
|
||||
#
|
||||
|
@ -611,8 +611,8 @@ MAKEFLAGS=
|
|||
# Identity of this package.
|
||||
PACKAGE_NAME='rufus'
|
||||
PACKAGE_TARNAME='rufus'
|
||||
PACKAGE_VERSION='4.0'
|
||||
PACKAGE_STRING='rufus 4.0'
|
||||
PACKAGE_VERSION='4.5'
|
||||
PACKAGE_STRING='rufus 4.5'
|
||||
PACKAGE_BUGREPORT='https://github.com/pbatard/rufus/issues'
|
||||
PACKAGE_URL='https://rufus.ie'
|
||||
|
||||
|
@ -1269,7 +1269,7 @@ if test "$ac_init_help" = "long"; then
|
|||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures rufus 4.0 to adapt to many kinds of systems.
|
||||
\`configure' configures rufus 4.5 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
|
@ -1336,7 +1336,7 @@ fi
|
|||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of rufus 4.0:";;
|
||||
short | recursive ) echo "Configuration of rufus 4.5:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
|
@ -1428,7 +1428,7 @@ fi
|
|||
test -n "$ac_init_help" && exit $ac_status
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
rufus configure 4.0
|
||||
rufus configure 4.5
|
||||
generated by GNU Autoconf 2.71
|
||||
|
||||
Copyright (C) 2021 Free Software Foundation, Inc.
|
||||
|
@ -1504,7 +1504,7 @@ cat >config.log <<_ACEOF
|
|||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by rufus $as_me 4.0, which was
|
||||
It was created by rufus $as_me 4.5, which was
|
||||
generated by GNU Autoconf 2.71. Invocation command line was
|
||||
|
||||
$ $0$ac_configure_args_raw
|
||||
|
@ -2767,7 +2767,7 @@ fi
|
|||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='rufus'
|
||||
VERSION='4.0'
|
||||
VERSION='4.5'
|
||||
|
||||
|
||||
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
||||
|
@ -5309,7 +5309,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
|||
# report actual input values of CONFIG_FILES etc. instead of their
|
||||
# values after options handling.
|
||||
ac_log="
|
||||
This file was extended by rufus $as_me 4.0, which was
|
||||
This file was extended by rufus $as_me 4.5, which was
|
||||
generated by GNU Autoconf 2.71. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
|
@ -5365,7 +5365,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
|
|||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||
ac_cs_config='$ac_cs_config_escaped'
|
||||
ac_cs_version="\\
|
||||
rufus config.status 4.0
|
||||
rufus config.status 4.5
|
||||
configured by $0, generated by GNU Autoconf 2.71,
|
||||
with options \\"\$ac_cs_config\\"
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
AC_INIT([rufus], [4.0], [https://github.com/pbatard/rufus/issues], [rufus], [https://rufus.ie])
|
||||
AC_INIT([rufus], [4.5], [https://github.com/pbatard/rufus/issues], [rufus], [https://rufus.ie])
|
||||
AM_INIT_AUTOMAKE([-Wno-portability foreign no-dist no-dependencies])
|
||||
AC_CONFIG_SRCDIR([src/rufus.c])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
• 源代码: https://github.com/pbatard/rufus
|
||||
• 更新日志: https://github.com/pbatard/rufus/blob/master/ChangeLog.txt","Rufus 是個能格式化並製作可開機 USB 快閃磁碟機(USB 隨身碟、Memory Stick 等等)的工具。
|
||||
• 官方網站: https://rufus.ie
|
||||
• 源代碼: https://github.com/pbatard/rufus
|
||||
• 源始碼: https://github.com/pbatard/rufus
|
||||
• 更新日誌: https://github.com/pbatard/rufus/blob/master/ChangeLog.txt","Rufus je aplikacija koja olakšava formatiranje i stvaranje USB pokretačkih jedinica.
|
||||
• Službena stranica: https://rufus.ie
|
||||
• Šifra izvora: https://github.com/pbatard/rufus
|
||||
|
@ -114,24 +114,20 @@
|
|||
• Trang web chính thức: https://rufus.ie
|
||||
• Mã nguồn: https://github.com/pbatard/rufus
|
||||
• Nhật ký thay đổi: https://github.com/pbatard/rufus/blob/master/ChangeLog.txt"
|
||||
"ReleaseNotes","3","Text","• Fix persistence partition not working with Ubuntu 23.04
|
||||
• Fix out of range pointer error with Ubuntu 23.04 when booting in BIOS mode
|
||||
• Fix boot freeze with Ubuntu Studio when Secure Boot is enabled
|
||||
• Fix incorrect architecture detection when checking for updates
|
||||
• Fix a Windows Store application crash when processing GRUB bootloaders
|
||||
• Fix a Windows Store application crash when enumerating processes that contain a % sign
|
||||
• Fix a Windows Store application crash when using the German localization
|
||||
• Note that the major version was bumped on account of:
|
||||
• - New versions of Rufus requiring Windows 8 or later
|
||||
• - New versions of Rufus defaulting to a 64-bit executable
|
||||
• - Old versions of Rufus potentially not being able to update properly",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"ReleaseNotes","3","Text","• Add workaround for distros that use broken symbolic links as their UEFI bootloaders (such as Mint 21.3)
|
||||
• Add support for GRUB 2.12
|
||||
• Fix a crash when saving .ffu images
|
||||
• Fix UEFI:NTFS partition not being added, in MBR mode, for some Linux ISOs
|
||||
• Prevent Microsoft Dev Drives from being listed
|
||||
• Improve support for SDXC card readers
|
||||
• Improve Large FAT32 formatting by aligning start of data regions to 1 MB (courtesy of Fred)",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"Title","4","Text","Rufus",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"ShortTitle","5","Text","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"SortTitle","6","Text","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"VoiceTitle","7","Text","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"ShortDescription","8","Text","","Rufus - The Reliable USB Formatting Utility","Rufus - أداة فرمتة الـ USB جديرة بالثقة","Rufus - Надеждната USB форматираща програма","Rufus - 可靠的 USB 格式化工具","Rufus - 快速可靠的 USB 格式化工具","Rufus - Pouzdan alat za formatiranje USB-a","Rufus - Spolehlivý program pro formátování USB","Rufus - Det pålidelige USB-formateringsværktøj","Rufus - de betrouwbare USB-formatteertool","Rufus - Luotettava USB-alustusohjelma","Rufus - L'utilitaire de formatage USB fiable","Rufus - Das zuverlässige USB-Formatierungstool","Rufus - Μία αξιόπιστη εφαρμογή διαμόρφωσης USB","Rufus - הכלי לאתחול USB האמין ביותר","Rufus - A megbízható USB-formázó segédprogram","Rufus - Utilitas Pemformatan USB yang Handal","Rufus - Utility affidabile per la formattazione di unità USB","Rufus - 信頼性の高い USB フォーマット ユーティリティ","Rufus - 신뢰할 수 있는 USB 포맷 유틸리티","Rufus - uzticama un vienkārša USB formatēšanas utilīta","Rufus - patikima USB formatavimo priemonė","Rufus - Utiliti pemformatan USB yang dipercayai","Rufus - Det pålitelige USB-formateringsprogrammet","Rufus، ابزاری کاربردی و قابلاطمینان برای فرمت کردن درایوهای USB","Rufus - niezawodne narzędzie do formatowania USB","Rufus - O Utilitário de Formatação USB Confiável","Rufus - O utilitário de confiança para formatação USB","Rufus - Instrumentul de încredere pentru formatări USB","Rufus - Надежная утилита для форматирования USB","Rufus - Pouzdan Alat Za Formatiranje USB diska","Rufus - Spoľahlivý program pre formátovanie USB","Rufus - zanesljivi pripomoček za USB formatiranje","Rufus, la herramienta de formateo de USBs en la que puedes confiar","Rufus - Det pålitliga verktyget för USB-formatering","Rufus - ยูทิลิตี้การฟอร์แมต USB ที่ไว้ใจได้","Rufus - Güvenilir USB Biçimlendirme Programı","Rufus - надійна утиліта для форматування USB-накопичувачів","Rufus - Tiện ích Định dạng USB Đáng tin cậy"
|
||||
"DevStudio","9","Text","Pete Batard",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"CopyrightTrademarkInformation","12","Text","© 2011-2023 Pete Batard",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"CopyrightTrademarkInformation","12","Text","© 2011-2024 Pete Batard",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"AdditionalLicenseTerms","13","Text","https://www.gnu.org/licenses/gpl-3.0.html","This application is licensed under the terms of the GNU Public License (GPL) version 3.
|
||||
See https://www.gnu.org/licenses/gpl-3.0.en.html for details.","هذا التطبيق مُرخص بموجب شروط رخصة جنو (GNU) العمومية (GPL) الإصدار 3.
|
||||
راجع https://www.gnu.org/licenses/gpl-3.0.ar.html لمزيد من التفاصيل.","Тази програма е лицензирана според условията на GNU Public License (GPL) версия 3.
|
||||
|
@ -265,19 +261,19 @@ Xem tại https://www.gnu.org/licenses/gpl-3.0.html để biết thêm chi tiế
|
|||
"OptionalPromo358x358","611","Relative path (or URL to file in Partner Center)","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"OptionalPromo1000x800","612","Relative path (or URL to file in Partner Center)","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"OptionalPromo414x180","613","Relative path (or URL to file in Partner Center)","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"Feature1","700","Text","","Format USB, flash card and virtual drives to FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","تهيئة USB وبطاقة الفلاش ومحركات الأقراص الافتراضية إلى FAT / FAT32 / NTFS / UDF / exFAT / ReFS / ext2 / ext3","Форматиране на USB, карти памет и виртуални устройства с FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","将 U 盘、存储卡或虚拟驱动器格式化为 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 格式","將 U 盤、存儲卡或虛擬驅動器格式化為 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 格式","Formatirajte USB, flash karticu i virtualne pogone na FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formátování USB, flash karet a virtuálních jednotek na FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formater USB, flash kort og virtuelle drev til FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USB, flashkaart en virtuele schijven formatteren naar FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Alusta USB-asemia, muistikortteja ja virtuaalisia asemia muotoon FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatez des périphériques USB, des cartes flash et des disques virtuels en FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatieren von USB, Flash-Karte und virtuellen Laufwerken in FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Μορφοποίηση USB, κάρτας flash και εικονικών μονάδων δίσκου σε FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","אתחול USB, כרטיסי זיכרון וכוננים וירטואליים ל־FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USB, flash memóriakártyák és virtuális meghajtók formázása FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 fájlrendszerre","Format USB, kartu flash dan penyimpanan maya ke FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatta USB, flash card e unità virtuali in FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USBメモリやSDカード、仮想ドライブをFAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3でフォーマットします。","USB, 플래시 카드 및 가상 드라이브를 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3로 포맷","Formatē USB, atmiņas kartes un virtuālos diskus formātos FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Suformatuokite USB, flash kortelę ir virtualius diskus į FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatkan USB, kad flash dan pemacu maya kepada FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formater USB, minnekort og virtuelle disker til FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","فرمت USB، فلش کارت و درایوهای مجازی به FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Sformatuj nośnik używając: FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatar dispositivos USB, cartões flash e discos virtuais com FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatar dispositivos USB, cartão de memória e drives virtuais em FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatează USB, card flash si drive-uri virtuale la FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Форматировать USB, флешки и виртуальные диски в FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatiraj USB, flash kartice, i virtualne diskove u FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Naformátujte USB, kartu a virtuálne disky do FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","FormatIRANJE USB, bliskavice in virtualnih pogonov na FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatee USB, tarjetas flash y unidades virtuales a FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatera USB-enheter, flash-kort och virtuella enheter till FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","ฟอร์แมต USB, แฟลชการ์ด หรือไดร์ฟจำลองให้อยู่ในรูปแบบของ FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USB, flash kart ve sanal sürücüleri FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 olarak biçimlendirin","Форматування USB-накопичувачів, флешок, карток пам'яті у FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Định dạng USB, thẻ nhớ hoặc ổ nhớ ảo với FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3"
|
||||
"Feature2","701","Text","","Create FreeDOS bootable USB drives","إنشاء محركات أقراص USB قابلة للتشغيل من FreeDOS","Създаване на FreeDOS стартиращ USB устройства","创建 FreeDOS 可启动驱动器","創建 FreeDOS 可啟動驅動器","Stvaranje FreeDOS USB pogona za pokretanje","Vytvoření bootovacích disků USB se systémem FreeDOS","Lav FreeDOS opstartsbare USB drev","FreeDOS opstartbare USB-schijven aanmaken","Luo boottaavia FreeDOS USB-asemia","Créez des disques amorçable FreeDOS","FreeDOS-bootfähige USB-Laufwerke erstellen","Δημιουργήστε μονάδες USB με δυνατότητα εκκίνησης FreeDOS","יצירת כונני USB הניתנים לאתחול של FreeDOS","Bootolható FreeDOS USB meghajtó készítése","Buat perangkat USB FreeDOS yang dapat di boot","Crea unità USB avviabili FreeDOS","FreeDOSの起動可能ドライブを作成します。","FreeDOS 부팅 가능한 USB 드라이브 만들기","Izveido FreeDOS ielādes USB ierīces","Sukurkite FreeDOS įkrovos USB diskus","Buat pemacu USB boleh boot FreeDOS","Lag FreeDos oppstartbar USB stick","درایوهای USB قابل بوت FreeDOS را ایجاد کنید","Stwórz bootowalny nośnik USB FreeDOS","Criar discos USB inicializáveis FreeDOS","Criar unidades USB inicializáveis FreeDOS","Crează drive USB bootabil FreeDOS","Создать загрузочные USB-диски FreeDOS","Kreiraj FreeDOS butabilni USB disk","Vytvorte bootovacie usb zariadenia FreeDOS","Ustvarite FreeDOS zagonske USB pogone","Crear unidades USB de arranque FreeDOS","Skapa FreeDOS startbara USB-enheter","สร้าง USB ไดร์ฟที่บูตได้สำหรับระบบ FreeDOS","FreeDOS önyüklenebilir USB sürücüleri oluşturun","Створення завантажувальних пристроїв FreeDOS","Tạo USB có thể khởi động với FreeDOS"
|
||||
"Feature3","702","Text","","Create bootable drives from bootable ISOs (Windows, Linux, etc.)","إنشاء محركات أقراص قابلة للتمهيد من ملفات ISO القابلة للتمهيد (Windows و Linux وما إلى ذلك)","Създаване на стартиращи устройства от ISO образи (Windows, Linux и др.)","从可启动 ISO 文件 (Windows 和 Linux 等) 创建可启动驱动器","從可啟動 ISO 文件 (Windows 和 Linux 等) 創建可啟動驅動器","Stvaranje pogona za pokretanje iz ISO-ova za pokretanje (Windows, Linux itd.)","Vytváření bootovacích jednotek ze zaváděcích ISO (Windows, Linux atd.)","Lav opstartsbarer drev fra opstartsbarer ISOer (Window, Linux, osv.)","Opstartbare schijven aanmaken via opstartbare ISO's (Windows, Linux, enz)","Luo käynnistysasemia boottaavista ISO-kuvista (Windows, Linux jne.)","Créez des disques amorçables à partir d'images ISOs (Windows, Linux, etc.)","Erstellen bootfähiger Laufwerke aus bootfähigen ISOs (Windows, Linux, etc.)","Δημιουργήστε εκκινήσιμες μονάδες από ISO με δυνατότητα εκκίνησης (Windows, Linux, κ.λπ.)","יצירת כוננים הניתנים לאתחול מקובצי ISO הניתנים לאתחול (Windows, Linux וכו')","Bootolható meghajtók készítése bootolható ISO képfájlokból (Windows, Linux, stb.)","Buat perangkat yang dapat di boot dari ISO (Windows, Linux, dll.)","Crea unità avviabili da ISO avviabili (Windows, Linux, ecc.)","WindowsやLinuxなどのISOファイルから起動可能ドライブを作成します。","부팅 가능한 ISO (Windows, Linux 등)에서 부팅 가능한 드라이브 만들기","Izveido ielādes ierīces no ISO failiem (Windows, Linux, u.c.)","Sukurkite įkrovos diskus iš įkrovos ISO (Windows, Linux ir kt.)","Buat pemacu boleh boot daripada ISO boleh boot (Windows, Linux, dll.)","Lag oppstartabar enhet/disk fra ISOer (Windows, Linux, etc.)","ایجاد درایوهای قابل بوت از ISOهای قابل بوت (ویندوز، لینوکس و غیره)","Twórz dyski rozruchowe z obrazów ISO (Windows, Linux itp.)","Criar discos inicializáveis a partir de ISOs inicializáveis (Windows, Linux, etc.)","Criar unidades inicializáveis a partir de ISOs inicializáveis (Windows, Linux, etc.)","Crează drive-uri bootabile de la ISO-uri bootabile (Windows, Linux, etc.)","Создать загрузочные диски из загрузочных ISO-образов (Windows, Linux и т.д.)","Kreirajte disk jedinice za pokretanje sistema od ISO-a koji se mogu pokretanja sistema (Windows, Linux itd.)","Vytvorte bootovacie jednotky z ISO súborov (Windows, Linux atď.)","Ustvarite zagonske pogone iz zagonskih ISO-jev (Windows, Linux itd.)","Cree unidades de arranque desde ISO de arranque (Windows, Linux, etc.)","Skapa startbara enheter från startbara ISO-filer (Windows, Linux, etc.)","สร้าง USB ไดร์ฟที่บูตได้จากไฟล์อิมเมจที่บูตได้ (เช่น ไฟล์ติดตั้ง Windows หรือ Linux เป็นต้น)","Önyüklenebilir ISO'lardan önyüklenebilir sürücüler oluşturun (Windows, Linux, vb.)","Створення завантажувальних пристроїв з завантажувальних образів (Windows, Linux, тощо)","Tạo ổ đĩa có thể khởi động từ các file ISO có thể khởi động (Windows, Linux, v.v...)"
|
||||
"Feature4","703","Text","","Create bootable drives from bootable disk images, including compressed ones","إنشاء محركات أقراص قابلة للتمهيد من صور الأقراص القابلة للتمهيد ، بما في ذلك الأقراص المضغوطة","Създаване на стартиращи устройства от образи, включително компресирани такива","从可启动硬盘镜像 (包括压缩镜像) 创建可启动驱动器","從可啟動硬盤鏡像 (包括壓縮鏡像) 創建可啟動驅動器","Stvaranje pogona za pokretanje iz slika diska za pokretanje, uključujući komprimirane","Vytváření zaváděcích jednotek ze zaváděcích obrazů disků, včetně komprimovaných","Lav opstartsbarer drev fra opstartsbarer disk billeder, inklusiv komprimerede billeder","Opstartbare schijven aanmaken van opstartbare schijf-images, inclusief gecomprimeerde images","Luo käynnistysasemia boottaavista levykuvista, pakatut kuvat mukaanlukien","Créez des disques amorçables à partir d'images disque, y compris à partir d'images compressées","Erstellen bootfähiger Laufwerke aus bootfähigen Festplatten-Images, einschließlich komprimierter Images","Δημιουργήστε μονάδες εκκίνησης από εικόνες δίσκου με δυνατότητα εκκίνησης, συμπεριλαμβανομένων συμπιεσμένων","יצירת כוננים הניתנים לאתחול מקובצי תמונת דיסק הניתנים לאתחול, כולל קבצים דחוסים","Bootolható meghajtók készítése bootolható lemez képfájlokból, beleértve a tömörítetteket is","Buat perangkat yang dapat di boot dari Disk Image, termasuk yang Disk Image yang terkompresi","Crea unità avviabili da immagini disco avviabili, incluse quelle compresse","圧縮済みのものを含むディスクイメージから起動可能ドライブを作成します。","압축된 이미지를 포함하여 부팅 가능한 디스크 이미지에서 부팅 가능한 드라이브 만들기","Izveido ielādes ierīces no ielādes disku virtuālajiem attēliem, tai skaitā arī no saspiestajiem","Sukurkite įkrovos diskus iš įkrovos disko vaizdų, įskaitant suspaustus","Buat pemacu boleh boot daripada imej cakera boleh boot, termasuk yang dimampatkan","Lag oppstartbare disker fra images, inkludert komprimerte sådan","درایوهای قابل بوت را از تصاویر دیسک قابل بوت، از جمله موارد فشرده، ایجاد کنید","Twórz dyski rozruchowe z obrazów dysków, włączając skompresowane","Criar discos inicializáveis a partir de imagens de disco inicializáveis, inclusive de imagens compactadas","Criar unidades inicializáveis a partir de imagens de disco inicializáveis, inclusive de imagens compactadas","Crează drive-uri de la imagini de disc bootabile, incluzând cele compresate","Создать загрузочные диски из образов загрузочных дисков, в том числе сжатых","Kreiranje disk jedinica za pokretanje sistema sa slika diska koji se može pokretanja, uključujući kompresovane","Vytvorte bootovacie jednotky z diskových obrazov, vrátane tých komprimovaných","Ustvarite zagonske pogone iz slik diska, ki jih je mogoče zagnati, vključno s stisnjenimi","Cree unidades de arranque a partir de imágenes de disco de arranque, incluidas las comprimidas","Skapa startbara enheter från startbara diskavbildningar, inklusive komprimerade","สร้างไดร์ฟที่บูตได้จากดิสก์อิมเมจที่บูตได้ รวมไปถึงอันที่ถูกบีบอัด","Sıkıştırılmış olanlar da dahil olmak üzere önyüklenebilir disk yansısından önyüklenebilir sürücüler oluşturun","Створення завантажувальних пристроїв з завантажувальних образів, у тому числі стиснутих","Tạo ổ đĩa có thể khởi động từ các tệp đĩa có thể khởi động, bao gồm cả tệp nén"
|
||||
"Feature5","704","Text","","Create BIOS or UEFI bootable drives, including UEFI bootable NTFS","إنشاء BIOS أو محركات أقراص UEFI قابلة للتمهيد ، بما في ذلك NTFS القابل للتشغيل من UEFI","Създаване на BIOS или UEFI стартиращи устройства, включително UEFI стартиращ NTFS","创建 BIOS 或 UEFI 可启动驱动器,包括 UEFI 可启动的 NTFS 驱动器","創建 BIOS 或 UEFI 可啟動驅動器,包括 UEFI 可啟動的 NTFS 驅動器","Stvaranje BIOS ili UEFI pogona za pokretanje, uključujući UEFI NTFS za pokretanje","Vytvořte zaváděcí jednotky BIOS nebo UEFI, včetně zaváděcích souborů NTFS UEFI","Lav BIOS eller UEFI opstartsbarer drev, inklusiv UEFI opstartsbarer NTFS","BIOS of UEFI opstartbare schijven aanmaken, inclusief UEFI opstartbare NTFS","Luo BIOS- tai UEFI-boottaavia asemia, mukaanlukien UEFI-boottaavat NTFS-asemat","Créez des disques amorçables BIOS ou UEFI, y compris des disques UEFI amorçables utilisant NTFS","Erstellen von BIOS- oder UEFI-bootfähigen Laufwerken, einschließlich UEFI-bootfähigem NTFS","Δημιουργήστε μονάδες δίσκου με δυνατότητα εκκίνησης BIOS ή UEFI, συμπεριλαμβανομένων NTFS με δυνατότητα εκκίνησης UEFI","יצירת כוננים הניתנים לאתחול ממחשבים התומכים ב־BIOS או UEFI, לרבות כוננים הניתנים לאתחול מ־UEFI, המשתמשים במערכת הקבצים NTFS","BIOS-ból vagy UEFI-ből bootolható meghajtók készítése, beleértve az UEFI-ből bootolható NTFS meghajtókat is","Buat perangkat BIOS atau UEFI yang dapat di boot, termasuk perangkat NTFS yang dapat di boot oleh UEFI","Crea unità avviabili BIOS o UEFI, incluso NTFS avviabile UEFI","UEFI:NTFSを含むBIOS及びUEFIで起動可能なドライブを作成します。","UEFI 부팅 가능한 NTFS를 포함하여 BIOS 또는 UEFI 부팅 가능 드라이브 만들기","Izveido BIOS vai UEFI ielādes ierīces, ieskaitot UEFI ielādi no NTFS","Sukurkite BIOS arba UEFI įkrovos diskus, įskaitant UEFI įkrovos NTFS","Buat pemacu boleh boot BIOS atau UEFI, termasuk NTFS boleh boot UEFI","Lag BIOS eller UEFI oppstartbare disker, inkludert UEFI oppstartbar NTFS","درایوهای قابل بوت بایوس یا UEFI از جمله NTFS قابل بوت UEFI ایجاد کنید","Stwórz dysk rozruchowy BIOS lub UEFI, włączając bootowalny dysk UEFI NTFS","Criar discos inicializáveis BIOS ou UEFI, inclusive discos UEFI inicializáveis usando NTFS","Criar discos inicializáveis BIOS ou UEFI, inclusive discos UEFI inicializáveis usando NTFS","Crează discuri bootabile BIOS sau UEFI, incluzând NTFS-uri bootabile de UEFI","Создать загрузочные диски BIOS или UEFI, включая загрузочный UEFI NTFS","Kreiranje BIOS ili UEFI disk jedinica za pokretanje sistema, uključujući NTFS sa UEFI pokretanjem sistema","Vytvorte bootovacie jednotky systému BIOS alebo UEFI vrátane UEFI bootovateľnej jednotky NTFS","Ustvarite zagonske pogone BIOS ali UEFI, vključno z UEFI bootable NTFS","Cree unidades de arranque BIOS o UEFI, incluido NTFS de arranque UEFI","Skapa BIOS- eller UEFI-startbara enheter, inklusive UEFI-startbar NTFS","สร้างไดร์ฟที่บูตได้จาก BIOS หรือ UEFI รวมไปถึง NTFS ที่บูตได้จาก UEFI","UEFI önyüklenebilir NTFS dahil BIOS ya da UEFI önyüklenebilir sürücüler oluşturun","Створення завантажувальних пристроїв BIOS чи UEFI, включаючи завантажувальний UEFI NTFS","Tạo ổ đĩa có thể khởi động với hệ thống BIOS hoặc UEFI, bao gồm cả NTFS có thể khởi động với UEFI"
|
||||
"Feature6","705","Text","","Create 'Windows To Go' drives","إنشاء محركات أقراص ""Windows To Go\","Създаване на 'Windows To Go' устройства","创建 'Windows To Go' 驱动器","創建 'Windows To Go' 驅動","Stvaranje pogona ""Windows To Go\","Vytvoření jednotek ""Windows To Go","Lav 'Windows To Go' drev","'Windows To Go'-schijven aanmaken","Luo 'Windows To Go' -asemia","Créez des disques 'Windows To Go'","Erstellen von ""Windows To Go""-Laufwerken","Δημιουργήστε μονάδες δίσκου ""Windows To Go\","יצירת כונני Windows To Go","'Windows To Go' meghajtók készítése","Buat perangkat Windows To Go","Crea unità 'Windows To Go'","Windows To Goドライブを作成します。","'Windows To Go' 드라이브 만들기","Izveido 'Windows To Go' ierīces","Sukurkite ""Windows To Go"" diskus","Buat pemacu 'Windows To Go'","Lag 'Windows To Go' disker","درایوهای ""Windows To Go"" را ایجاد کنید","Stwórz dysk 'Windows To Go'","Criar discos 'Windows To Go'","Criar discos 'Windows To Go'","Crează discuri 'Windows To Go'","Создание дисков Windows To Go","Kreiranje disk jedinica ""Windows to Go\","Vytvorte jednotky „Windows To Go\","Ustvarjanje pogonov »Windows To Go'","Cree unidades 'Windows To Go'","Skapa 'Windows To Go'-enheter","สร้างไดร์ฟของ 'Windows To Go'","'Windows To Go' sürücüleri oluşturun","Створення пристроїв 'Windows To Go'","Tạo ổ đĩa 'Windows To Go'"
|
||||
"Feature7","706","Text","","Create Windows 11 installation drives for PCs that don't have TPM or Secure Boot","قم بإنشاء محركات تثبيت ويندوز 11 لأجهزة الكمبيوتر التي لا تحتوي على TPM أو التمهيد الآمن","Създаване на Windows 11 инсталационно устройство за компютри, които нямат TPM или Secure Boot","为没有 TPM 或安全启动功能的电脑创建 Windows 11 安装驱动器","為沒有 TPM 或安全啟動功能的電腦創建 Windows 11 安裝驅動","Stvaranje instalacijskih pogona sustava Windows 11 za PC-jeve koji nemaju TPM ili Sigurno pokretanje","Vytvoření instalačních jednotek systému Windows 11 pro počítače bez čipu TPM nebo Secure Boot","Lav Windows 11 installations drev for PCer der ikker har TPM eller Secure Boot","Windows 11 installatieschijven aanmaken voor pc's die geen TPM of Secure Boot hebben","Luo Windows 11 -asennusasemia tietokoneille, jotka eivät tue TPM- tai Secure Boot -ominaisuuksia","Créez des disques d'installation Windows 11 pour des PCs qui ne disposent pas de TPM ou Secure Boot","Erstellen von Windows 11-Installationslaufwerken für PCs ohne TPM oder Secure Boot","Δημιουργήστε μονάδες εγκατάστασης των Windows 11 για υπολογιστές που δεν διαθέτουν TPM ή Ασφαλή Εκκίνηση","יצירת כונני התקנה של Windows 11 עבור מחשבים שאין להם TPM או Secure Boot","Windows 11 telepítési meghajtók készítése olyan PC-k számára, amelyek nem rendelkeznek TPM vagy Secure Boot funkciókkal","Buat perangkat pemasang Windows 11 untuk PC yang tidak mempunyai TPM atau Secure Boot","Crea unità di installazione di Windows 11 per PC che non dispongono di TPM o avvio protetto","TPM及びセキュアブート非対応のPC向けのWindows 11インストールドライブを作成します","TPM 또는 보안 부팅이 없는 PC용 Windows 11 설치 드라이브 만들기","Izveido Windows 11 instalācijas ierīces datoriem, kam nav TPM vai Secure Boot","Sukurkite Windows 11 diegimo diskus kompiuteriams, kuriuose nėra TPM arba saugaus įkrovimo","Buat pemacu pemasangan Windows 11 untuk PC yang tidak mempunyai TPM atau But Selamat","Lag oppstartsmedia for Windows 11 som ikke krever TPM eller Secure Boot","درایوهای نصب ویندوز 11 را برای رایانه هایی که TPM یا Secure Boot ندارند ایجاد کنید","Twórz dyski instalacyjne systemu Windows 11 dla komputerów, które nie posiadają modułu TPM ani Secure Boot","Criar discos de instalação do Windows 11 para PCs que não possuem TPM ou Secure Boot","Criar discos de instalação do Windows 11 para PCs que não possuem TPM ou Secure Boot","Crează drive de instalare Windows 11 pe computere care nu au TPM sau Bootare Securizată","Создать установочные диски Windows 11 для компьютеров без TPM или безопасной загрузки","Kreiranje windows 11 instalacionih disk jedinica za računare koji nemaju TPM ili bezbedno pokretanje sistema","Vytvorte inštalačné jednotky Windows 11 pre počítače, ktoré nemajú modul TPM, ani Secure Boot","Ustvarjanje namestitvenih pogonov za Windows 11 za računalnike, ki nimate TPM ali Varnega zagona","Cree unidades de instalación de Windows 11 para PC que no tienen TPM o Arranque seguro","Skapa installationsenheter till Windows 11 för datorer som inte har TPM eller säker start","สร้างไดร์ฟติดตั้ง Windows 11 สำหรับคอมพิวเตอร์ที่ไม่มี TPM หรือ SecureBoot","TPM ya da Güvenli Önyüklemeye sahip olmayan bilgisayarlar için Windows 11 kurulum sürücüleri oluşturun","Створення інсталяційних дисків Windows 11 для ПК, які не мають TPM чи Secure Boot","Tạo ổ đĩa cài đặt Windows 11 cho các máy tính không có TPM hoặc Secure Boot"
|
||||
"Feature8","707","Text","","Create persistent Linux partitions","إنشاء Persistent Linux partitions","Създаване на устойчиви Linux дялове","创建持久 Linux 分区","創建持久 Linux 分區","Stvaranje trajnih Linux particija","Vytvoření trvalých oddílů systému Linux","Lav vedvarende Linux adskillelser","Persistent Linux partities aanmaken","Luo pysyviä Linux-osioita","Créez des partitions persistentes pour Linux","Persistente Linux-Partitionen erstellen","Δημιουργήστε μόνιμα διαμερίσματα Linux","יצירת מחיצות Linux קבועות","Tartós Linux partíciók készítése","Buat partisi Linux yang tetap/persistent","Crea partizioni persistenti Linux","記録用Linuxパーティションを作成します。","영구 리눅스 파티션 만들기","Izveido pastāvīgas Linux partīcijas","Sukurkite nuolatinius Linux skaidinius","Buat partition Linux berterusan","Lag persistente Linux partisjoner","ایجاد پارتیشن های لینوکس دائمی","Stwórz particje persistent Linuxa","Criar partições persistentes para Linux","Crie partições persistentes para Linux","Crează partiție de Linux persistentă","Создать постоянные разделы Linux","Kreiranje upornih Linux particija","Vytvorte trvalé oblasti systému Linux","Ustvarjanje trajnih Linux particij","Crear particiones persistentes de Linux","Skapa beständiga Linux-partitioner","สร้างพาร์ทิชั่นของ Linux แบบถาวร","Kalıcı Linux bölümleri oluşturun","Створення розділу збереження Linux","Tạo phân vùng Linux liên tục"
|
||||
"Feature9","708","Text","","Create VHD/DD images of the selected drive","إنشاء صور VHD / DD لمحرك الأقراص المحدد","Създаване на VHD/DD образи на избраното устройство","为选择的驱动器创建 VHD/DD 镜像","為選中的驅動創建 VHD/DD 鏡像","Stvaranje VHD/DD slika odabranog pogona","Vytvoření obrazů VHD/DD z vybrané jednotky","Lav VHD/DD billeder af det valgte drev","VHD/DD-images van de geselecteerde schijf aanmaken","Luo VHD/DD-kuvia valitusta asemasta","Créez des images VHD/DD du périphérique sélectionné","VHD/DD-Images des ausgewählten Laufwerks erstellen","Δημιουργήστε εικόνες VHD/DD της επιλεγμένης μονάδας δίσκου","יצירת קובצי תמונה מסוג VHD/DD של הכונן שנבחר","VHD/DD képfájl készítése a kiválasztott meghajtóról","Buat image VHD/DD dari penyimpanan yang dipilih","Crea immagini VHD/DD dell'unità selezionata","選択されたドライブのVHD/DDイメージを作成します。","선택한 드라이브의 VHD/DD 이미지 만들기","Izveido izvēlētā diska VHD/DD virtuālos attēlus","Sukurkite pasirinkto disko VHD / DD vaizdus","Buat imej VHD/DD bagi pemacu yang dipilih","Lag VHD/DD speilinger av valgt disk","تصاویر VHD/DD از درایو انتخاب شده ایجاد کنید","Stwórz obraz VHD/DD z wybranego dysku","Criar imagens VHD/DD do dispositivo selecionado","Criar imagens VHD/DD do dispositivo selecionado","Crează imagini VHD/DD de pe drive-ul selectat","Создать образы VHD/DD выбранного диска","Kreiranje VHD/DD slika izabrane disk jedinice","Vytvorte obrazy VHD/DD z vybratej jednotky","Ustvarjanje VHD/DD slik izbranega pogona","Cree imágenes VHD/DD de la unidad seleccionada","Skapa VHD/DD-avbilder av den valda enheten","สร้างอิมเมจไฟล์แบบ VHD/DD ของไดร์ฟที่เลือก","Seçilen sürücünün VHD/DD yansılarını oluşturun","Створення образів VHD/DD з вибраних дисків","Tạo tệp VHD/DD từ ổ đĩa đã chọn"
|
||||
"Feature10","709","Text","","Compute MD5, SHA-1, SHA-256 and SHA-512 checksums of the selected image","حساب المجموع الاختباري MD5 و SHA-1 و SHA-256 و SHA-512 للصورة المحددة","Изчисляване на MD5, SHA-1, SHA-256 и SHA-512 чексуми на избраният образ","计算被选择镜像的 MD5、SHA-1、SHA-256 和 SHA-512 校验码","計算被選中鏡像的 MD5、SHA-1、SHA-256 和 SHA-512 校驗碼","Izračunajte kontrolne zbrojeve odabrane slike MD5, SHA-1, SHA-256 i SHA-512","Výpočet kontrolních součtů MD5, SHA-1, SHA-256 a SHA-512 vybraného obrazu","Beregn MD5, SHA-1, SHA-256 og SHA-512 checksums af det valgte billede","MD5, SHA-1, SHA-256 en SHA-512 controlesommen berekenen van de geselecteerde image","Laske MD5, SHA-1, SHA-256 ja SHA-512 tarkistussummia valitusta levykuvasta","Calculez les sommes de contrôle MD5, SHA-1, SHA-256 et SHA-512 de l'image sélectionnée","Berechnung von MD5-, SHA-1-, SHA-256- und SHA-512-Prüfsummen für das ausgewählte Bild","Υπολογίστε τα αθροίσματα ελέγχου MD5, SHA-1, SHA-256 και SHA-512 της επιλεγμένης εικόνας","חישוב סיכומי ביקורת מסוג MD5, SHA-1, SHA-256 ו־SHA-512 של קובץ התמונה שנבחרה","A kiválasztott képfájl MD5, SHA-1, SHA-256 és SHA-512 ellenőrző összegének kiszámítása","Hitung checksum MD5, SHA-1, SHA-256 dan SHA-512 dari image yang dipilih","Calcola i checksum MD5, SHA-1, SHA-256 e SHA-512 dell'immagine selezionata","選択されたイメージのMD5、SHA-1、SHA-256及びSHA-512チェックサムを計算します。","선택한 이미지의 MD5, SHA-1, SHA-256 및 SHA-512 체크섬 계산","Izskaitļo izvēlētā virtuālā attēla MD5, SHA-1, SHA-256 un SHA-512 kontrolsummas","Apskaičiuokite pasirinkto vaizdo MD5, SHA-1, SHA-256 ir SHA-512 kontrolines sumas","Kira MD5, SHA-1, SHA-256 dan SHA-512 checksum imej yang dipilih","Kalkuler MD5, SHA-1, SHA-256 og SHA-512 sjekksummer fra valgt speiling","MD5، SHA-1، SHA-256 و SHA-512 را برای تصویر انتخابی محاسبه کنید","Oblicz sumy kontrolne MD5, SHA-1, SHA-256 i SHA-512 dla wybranego obrazu","Calcular somas de verificação MD5, SHA-1, SHA-256 e SHA-512 da imagem selecionada","Calcular checksums MD5, SHA-1, SHA-256 e SHA-512 da imagem selecionada","Compută MD5, SHA-1, SHA-256 și SHA-512 suma de control ale imaginilor selectate","Вычислить контрольные суммы MD5, SHA-1, SHA-256 и SHA-512 выбранного образа","Izračunajte MD5, SHA-1, SHA-256 i SHA-512 kontrolne preglede izabrane slike","Vypočítajte kontrolné súčty vybratého obrazu (MD5, SHA-1, SHA-256 a SHA-512)","Račun MD5, SHA-1, SHA-256 in SHA-512 kontrolni vsoti izbrane slike","Calcule las sumas de comprobación MD5, SHA-1, SHA-256 y SHA-512 de la imagen seleccionada","Beräkna kontrollsummor MD5, SHA-1, SHA-256 och SHA-512 för den valda avbilden","คำนวนรหัส MD5, SHA-1, SHA-256, SHA-512 ของไฟล์อิมเมจที่เลือก","Seçilen yansının MD5, SHA-1, SHA-256 ve SHA-512 sağlama toplamlarını hesaplayın","Обчислення контрольних сум MD5, SHA-1, SHA-256 та SHA-512 для вибраних образів","Tính tổng kiểm MD5, SHA-1, SHA-256 và SHA-512 của tệp đã chọn"
|
||||
"Feature11","710","Text","","Perform bad blocks checks, including detection of ""fake"" flash drives","إجراء فحوصات كتل تالفة ، بما في ذلك الكشف عن محركات أقراص فلاش ""زائفة\","Проверяване за лоши блокове, включително засичане на ""фалшиви"" устройства","执行坏块检查,包括对”假“U盘的检测","執行壞塊檢查,包括對”假“USB 快閃磁碟機的檢測","Izvršite provjere loših blokova, uključujući otkrivanje ""lažnih"" flash pogona","Provést kontrolu vadných bloků, včetně detekce ""falešných"" bloků. flash disky","Udøv dårlige blokke tjeks, inklusiv opdagelse af ""falske"" flashdrev","Controles uitvoeren op slechte blokken, inclusief detectie van ""valse"" flashdrives","Suorita viallisten lohkojen tarkistuksia, sisältäen ""valheellisten"" muistitikkujen tunnistamisen","Executez un test de mauvais secteurs avec detection des ""fake drives\","Durchführung von Prüfungen auf fehlerhafte Blöcke, einschließlich der Erkennung von ""gefälschten"" Flash-Laufwerken","Εκτελέστε ελέγχους εσφαλμένων block, συμπεριλαμβανομένου του εντοπισμού ""ψευδών"" μονάδων flash","ביצוע בדיקות אחר בלוקים (אזורים) פגומים, כולל זיהוי של כונני הבזק ""מזוייפים\","Hibás blokkok ellenőrzése, beleértve a ""hamis"" flash meghajtók detektálását","Lakukan cek Blok yang buruk, termasuk deteksi USB Flash Disk ""PALSU\","Esegui controlli dei blocchi danneggiati, incluso il rilevamento di unità flash ""false\","不良ブロックチェック及び容量詐欺ドライブの検知を行います。","""위조"" 플래시 드라이브 감지를 포함하여 불량 블록 검사 수행","Izpilda bojāto bloku pārbaudi ieskaitot ""falsificēto"" nesēju noteikšanu","Atlikite blogų blokų patikrinimus, įskaitant ""netikrų"" flash diskų aptikimą","Melakukan pemeriksaan blok buruk, termasuk pengesanan pemacu kilat ""palsu\","Utfør sjekk for dårlige sektorer, inkludert sjekk for forfalskede flash disker","بررسی بلوک های بد، از جمله تشخیص درایوهای فلش ""جعلی"" را انجام دهید","Sprawdź dysk pod względem spójności danych lub wykryj ""nieorginalny"" pendrive","Executar verificações de blocos defeituosos, incluindo detecção de unidades flash ""falsificadas\","Executar verificações de blocos inválidos, incluindo a detecção de unidades flash ""falsas\","Verifică blocuri rele, incluzând detectarea de drive-uri flash ""false\","Проверить наличие плохих блоков, обнаружить ""поддельные"" флешки","Izvršite provere loših blokova, uključujući otkrivanje ""lažnih"" fleš diskova","Vykonajte kontroly zlých blokov vrátane detekcie „falošných"" prenosných diskov","Izvajanje preverjanj slabih blokov, vključno z odkrivanjem »lažnih« bliskavic","Realice comprobaciones de bloques defectuosos, incluida la detección de unidades flash ""falsas\","Utför kontroll av trasiga block, inklusive upptäckt av ""falska"" USB-minnen","ดำเนินการตรวจสอบบล็อกข้อมูลที่พัง รวมไปถึงการทดสอบว่าเป็นแฟลชไดร์ฟ ""ปลอม"" หรือไม่","""Sahte"" flash sürücülerin tespiti de dahil olmak üzere hatalı blok kontrolleri gerçekleştirin","Перевірка дисків (включаючи фальшиві диски)","Thực hiện kiểm tra điểm lỗi, bao gồm phát hiện ổ đĩa ""giả\"
|
||||
"Feature12","711","Text","","Download official Microsoft Windows retail ISOs","قم بتنزيل ملفات ISO الرسمية الخاصة بـ Microsoft Windows","Изтегляне на официални Microsoft Windows ISO образи","下载微软官方 Windows 镜像","下載微軟官方 Windows 鏡像","Preuzimanje službenih ISO-ova za maloprodaju sustava Microsoft Windows","Stažení oficiálních souborů ISO systému Microsoft Windows","Hent officielle Microsoft Windows detail ISOer","Officiële Microsoft Windows retail ISO's downloaden","Lataa virallisia Microsoft Windowsin jälleenmyyntiversion ISO-levykuvia","Téléchargez des images ISOs commerciales officielles de Microsoft Windows","Offizielle Microsoft Windows-ISOs herunterladen","Κατεβάστε τα επίσημα retail ISO των Microsoft Windows","הורדת קובצי ה־ISO הקמעונאיים הרשמיים של Microsoft Windows","Hivatalos Microsoft Windows kiskereskedelmi ISO képfájlok letöltése","Unduh ISO Microsoft Windows resmi","Scarica le ISO ufficiali di Microsoft Windows","マイクロソフト公式のWindows ISOをダウンロードします。","공식 Microsoft Windows 리테일 ISO 다운로드","Lejupielādē oficiālos Microsoft ISO failus","Atsisiųskite oficialius Microsoft Windows mažmeninės prekybos ISO","Muat turun rasmi ISO runcit Microsoft Windows","Last ned offisielle Windows ISOer","ISO های رسمی ماکروسافت را دریافت کنید","Pobierz oficjalny obraz ISO systemu Microsoft Windows","Baixar ISOs oficiais do Microsoft Windows","Transferir ISOs oficiais do Microsoft Windows Retail","Descarcă un Microsoft Windows ISO oficial de vânzare","Загрузить официальные ISO-образы Windows","Preuzmite zvanične Microsoft Windows maloprodajne ISO-ove","Stiahnite si oficiálne ISO pre Microsoft Windows","Prenos uradnih Microsoft Windows maloprodaja ISOs","Descargue los ISO oficiales de Microsoft Windows","Ladda ner officiella Microsoft Windows ISO-filer","ดาวน์โหลดอิมเมจไฟล์ของ Windows จากเว็บไซต์ทางการ","Resmi Microsoft Windows Retail ISO'larını indirin","Завантаження офіційних образів Microsoft Windows","Tải xuống các tệp Microsoft Windows ISO bán lẻ chính thức"
|
||||
"Feature13","712","Text","","Download UEFI Shell ISOs","قم بتنزيل UEFI Shell ISOs","Изтегляне на UEFI Shell образи","下载 UEFI Shell 镜像","下載 UEFI Shell 鏡像","Preuzmite ISO-ove UEFI ljuske","Stažení souborů UEFI Shell ISO","Hent UEFI Shell ISOer","UEFI Shell ISO's downloaden","Lataa UEFI Shell ISO-levykuvia","Téléchargez des images ISOs du Shell UEFI","UEFI-Shell-ISOs herunterladen","Κατεβάστε τα ISO Shell UEFI","הורדת קובצי ISO של מעטפת UEFI","UEFI Shell ISO képfájlok letöltése","Unduh Shell ISO UEFI","Scarica le ISO della shell UEFI","UEFIシェルのISOをダウンロードします。","UEFI Shell ISO 다운로드","Lejupielādē UEFI OS ISO failus","Atsisiųskite UEFI Shell ISO","Muat turun ISO Shell UEFI","Last ned UEFI kommandolinje ISOer","ISO های پوسته UEFI را دانلود کنید","Ściągnij obrazy ISO UEFI Shell","Baixar ISOs do Shell UEFI","Transferir ISOs de UEFI Shell","Descarcă UEFI Shell ISO-uri","Загрузить ISO-образы оболочки UEFI","Preuzmite UEFI Shell ISOs","Stiahnite UEFI Shell ISO","Prenos UEFI Shell ISOs","Descargar ISO de UEFI Shell","Ladda ner UEFI-shell ISO-filer","ดาวน์โหลดอิมเมจไฟล์ของ UEFI Shell","UEFI Shell ISO'larını indirin","Завантаження командної оболонки UEFI ISO","Tải xuống các tệp UEFI Shell ISO"
|
||||
"Feature1","700","Text","","Format USB, flash card and virtual drives to FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","تهيئة USB وبطاقة الفلاش ومحركات الأقراص الافتراضية إلى FAT / FAT32 / NTFS / UDF / exFAT / ReFS / ext2 / ext3","Форматиране на USB, карти памет и виртуални устройства с FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","将 U 盘、存储卡或虚拟驱动器格式化为 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 格式","將隨身碟、記憶卡或虛擬光碟機格式化為 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 格式","Formatirajte USB, flash karticu i virtualne pogone na FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formátování USB, flash karet a virtuálních jednotek na FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formater USB, flash kort og virtuelle drev til FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USB, flashkaart en virtuele schijven formatteren naar FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Alusta USB-asemia, muistikortteja ja virtuaalisia asemia muotoon FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatez des périphériques USB, des cartes flash et des disques virtuels en FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatieren von USB, Flash-Karte und virtuellen Laufwerken in FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Μορφοποίηση USB, κάρτας flash και εικονικών μονάδων δίσκου σε FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","אתחול USB, כרטיסי זיכרון וכוננים וירטואליים ל־FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USB, flash memóriakártyák és virtuális meghajtók formázása FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 fájlrendszerre","Format USB, kartu flash dan penyimpanan maya ke FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatta USB, flash card e unità virtuali in FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USBメモリやSDカード、仮想ドライブをFAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3でフォーマットします。","USB, 플래시 카드 및 가상 드라이브를 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3로 포맷","Formatē USB, atmiņas kartes un virtuālos diskus formātos FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Suformatuokite USB, flash kortelę ir virtualius diskus į FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatkan USB, kad flash dan pemacu maya kepada FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formater USB, minnekort og virtuelle disker til FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","فرمت USB، فلش کارت و درایوهای مجازی به FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Sformatuj nośnik używając: FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatar dispositivos USB, cartões flash e discos virtuais com FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatar dispositivos USB, cartão de memória e drives virtuais em FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatează USB, card flash si drive-uri virtuale la FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Форматировать USB, флешки и виртуальные диски в FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatiraj USB, flash kartice, i virtualne diskove u FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Naformátujte USB, kartu a virtuálne disky do FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","FormatIRANJE USB, bliskavice in virtualnih pogonov na FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatee USB, tarjetas flash y unidades virtuales a FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Formatera USB-enheter, flash-kort och virtuella enheter till FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","ฟอร์แมต USB, แฟลชการ์ด หรือไดร์ฟจำลองให้อยู่ในรูปแบบของ FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","USB, flash kart ve sanal sürücüleri FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 olarak biçimlendirin","Форматування USB-накопичувачів, флешок, карток пам'яті у FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3","Định dạng USB, thẻ nhớ hoặc ổ nhớ ảo với FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3"
|
||||
"Feature2","701","Text","","Create FreeDOS bootable USB drives","إنشاء محركات أقراص USB قابلة للتشغيل من FreeDOS","Създаване на FreeDOS стартиращ USB устройства","创建 FreeDOS 可启动驱动器","建立 FreeDOS 可啟隨身碟","Stvaranje FreeDOS USB pogona za pokretanje","Vytvoření bootovacích disků USB se systémem FreeDOS","Lav FreeDOS opstartsbare USB drev","FreeDOS opstartbare USB-schijven aanmaken","Luo boottaavia FreeDOS USB-asemia","Créez des disques amorçable FreeDOS","FreeDOS-bootfähige USB-Laufwerke erstellen","Δημιουργήστε μονάδες USB με δυνατότητα εκκίνησης FreeDOS","יצירת כונני USB הניתנים לאתחול של FreeDOS","Bootolható FreeDOS USB meghajtó készítése","Buat perangkat USB FreeDOS yang dapat di boot","Crea unità USB avviabili FreeDOS","FreeDOSの起動可能ドライブを作成します。","FreeDOS 부팅 가능한 USB 드라이브 만들기","Izveido FreeDOS ielādes USB ierīces","Sukurkite FreeDOS įkrovos USB diskus","Buat pemacu USB boleh boot FreeDOS","Lag FreeDos oppstartbar USB stick","درایوهای USB قابل بوت FreeDOS را ایجاد کنید","Stwórz bootowalny nośnik USB FreeDOS","Criar discos USB inicializáveis FreeDOS","Criar unidades USB inicializáveis FreeDOS","Crează drive USB bootabil FreeDOS","Создать загрузочные USB-диски FreeDOS","Kreiraj FreeDOS butabilni USB disk","Vytvorte bootovacie usb zariadenia FreeDOS","Ustvarite FreeDOS zagonske USB pogone","Crear unidades USB de arranque FreeDOS","Skapa FreeDOS startbara USB-enheter","สร้าง USB ไดร์ฟที่บูตได้สำหรับระบบ FreeDOS","FreeDOS önyüklenebilir USB sürücüleri oluşturun","Створення завантажувальних пристроїв FreeDOS","Tạo USB có thể khởi động với FreeDOS"
|
||||
"Feature3","702","Text","","Create bootable drives from bootable ISOs (Windows, Linux, etc.)","إنشاء محركات أقراص قابلة للتمهيد من ملفات ISO القابلة للتمهيد (Windows و Linux وما إلى ذلك)","Създаване на стартиращи устройства от ISO образи (Windows, Linux и др.)","从可启动 ISO 文件 (Windows 和 Linux 等) 创建可启动驱动器","從可啟動 ISO 檔案 (Windows 和 Linux 等) 建立可啟動隨身碟","Stvaranje pogona za pokretanje iz ISO-ova za pokretanje (Windows, Linux itd.)","Vytváření bootovacích jednotek ze zaváděcích ISO (Windows, Linux atd.)","Lav opstartsbarer drev fra opstartsbarer ISOer (Window, Linux, osv.)","Opstartbare schijven aanmaken via opstartbare ISO's (Windows, Linux, enz)","Luo käynnistysasemia boottaavista ISO-kuvista (Windows, Linux jne.)","Créez des disques amorçables à partir d'images ISOs (Windows, Linux, etc.)","Erstellen bootfähiger Laufwerke aus bootfähigen ISOs (Windows, Linux, etc.)","Δημιουργήστε εκκινήσιμες μονάδες από ISO με δυνατότητα εκκίνησης (Windows, Linux, κ.λπ.)","יצירת כוננים הניתנים לאתחול מקובצי ISO הניתנים לאתחול (Windows, Linux וכו')","Bootolható meghajtók készítése bootolható ISO képfájlokból (Windows, Linux, stb.)","Buat perangkat yang dapat di boot dari ISO (Windows, Linux, dll.)","Crea unità avviabili da ISO avviabili (Windows, Linux, ecc.)","WindowsやLinuxなどのISOファイルから起動可能ドライブを作成します。","부팅 가능한 ISO (Windows, Linux 등)에서 부팅 가능한 드라이브 만들기","Izveido ielādes ierīces no ISO failiem (Windows, Linux, u.c.)","Sukurkite įkrovos diskus iš įkrovos ISO (Windows, Linux ir kt.)","Buat pemacu boleh boot daripada ISO boleh boot (Windows, Linux, dll.)","Lag oppstartabar enhet/disk fra ISOer (Windows, Linux, etc.)","ایجاد درایوهای قابل بوت از ISOهای قابل بوت (ویندوز، لینوکس و غیره)","Twórz dyski rozruchowe z obrazów ISO (Windows, Linux itp.)","Criar discos inicializáveis a partir de ISOs inicializáveis (Windows, Linux, etc.)","Criar unidades inicializáveis a partir de ISOs inicializáveis (Windows, Linux, etc.)","Crează drive-uri bootabile de la ISO-uri bootabile (Windows, Linux, etc.)","Создать загрузочные диски из загрузочных ISO-образов (Windows, Linux и т.д.)","Kreirajte disk jedinice za pokretanje sistema od ISO-a koji se mogu pokretanja sistema (Windows, Linux itd.)","Vytvorte bootovacie jednotky z ISO súborov (Windows, Linux atď.)","Ustvarite zagonske pogone iz zagonskih ISO-jev (Windows, Linux itd.)","Cree unidades de arranque desde ISO de arranque (Windows, Linux, etc.)","Skapa startbara enheter från startbara ISO-filer (Windows, Linux, etc.)","สร้าง USB ไดร์ฟที่บูตได้จากไฟล์อิมเมจที่บูตได้ (เช่น ไฟล์ติดตั้ง Windows หรือ Linux เป็นต้น)","Önyüklenebilir ISO'lardan önyüklenebilir sürücüler oluşturun (Windows, Linux, vb.)","Створення завантажувальних пристроїв з завантажувальних образів (Windows, Linux, тощо)","Tạo ổ đĩa có thể khởi động từ các file ISO có thể khởi động (Windows, Linux, v.v...)"
|
||||
"Feature4","703","Text","","Create bootable drives from bootable disk images, including compressed ones","إنشاء محركات أقراص قابلة للتمهيد من صور الأقراص القابلة للتمهيد ، بما في ذلك الأقراص المضغوطة","Създаване на стартиращи устройства от образи, включително компресирани такива","从可启动硬盘镜像 (包括压缩镜像) 创建可启动驱动器","從可啟動硬碟映像檔 (包括壓縮映像檔) 建立可啟動隨身碟","Stvaranje pogona za pokretanje iz slika diska za pokretanje, uključujući komprimirane","Vytváření zaváděcích jednotek ze zaváděcích obrazů disků, včetně komprimovaných","Lav opstartsbarer drev fra opstartsbarer disk billeder, inklusiv komprimerede billeder","Opstartbare schijven aanmaken van opstartbare schijf-images, inclusief gecomprimeerde images","Luo käynnistysasemia boottaavista levykuvista, pakatut kuvat mukaanlukien","Créez des disques amorçables à partir d'images disque, y compris à partir d'images compressées","Erstellen bootfähiger Laufwerke aus bootfähigen Festplatten-Images, einschließlich komprimierter Images","Δημιουργήστε μονάδες εκκίνησης από εικόνες δίσκου με δυνατότητα εκκίνησης, συμπεριλαμβανομένων συμπιεσμένων","יצירת כוננים הניתנים לאתחול מקובצי תמונת דיסק הניתנים לאתחול, כולל קבצים דחוסים","Bootolható meghajtók készítése bootolható lemez képfájlokból, beleértve a tömörítetteket is","Buat perangkat yang dapat di boot dari Disk Image, termasuk yang Disk Image yang terkompresi","Crea unità avviabili da immagini disco avviabili, incluse quelle compresse","圧縮済みのものを含むディスクイメージから起動可能ドライブを作成します。","압축된 이미지를 포함하여 부팅 가능한 디스크 이미지에서 부팅 가능한 드라이브 만들기","Izveido ielādes ierīces no ielādes disku virtuālajiem attēliem, tai skaitā arī no saspiestajiem","Sukurkite įkrovos diskus iš įkrovos disko vaizdų, įskaitant suspaustus","Buat pemacu boleh boot daripada imej cakera boleh boot, termasuk yang dimampatkan","Lag oppstartbare disker fra images, inkludert komprimerte sådan","درایوهای قابل بوت را از تصاویر دیسک قابل بوت، از جمله موارد فشرده، ایجاد کنید","Twórz dyski rozruchowe z obrazów dysków, włączając skompresowane","Criar discos inicializáveis a partir de imagens de disco inicializáveis, inclusive de imagens compactadas","Criar unidades inicializáveis a partir de imagens de disco inicializáveis, inclusive de imagens compactadas","Crează drive-uri de la imagini de disc bootabile, incluzând cele compresate","Создать загрузочные диски из образов загрузочных дисков, в том числе сжатых","Kreiranje disk jedinica za pokretanje sistema sa slika diska koji se može pokretanja, uključujući kompresovane","Vytvorte bootovacie jednotky z diskových obrazov, vrátane tých komprimovaných","Ustvarite zagonske pogone iz slik diska, ki jih je mogoče zagnati, vključno s stisnjenimi","Cree unidades de arranque a partir de imágenes de disco de arranque, incluidas las comprimidas","Skapa startbara enheter från startbara diskavbildningar, inklusive komprimerade","สร้างไดร์ฟที่บูตได้จากดิสก์อิมเมจที่บูตได้ รวมไปถึงอันที่ถูกบีบอัด","Sıkıştırılmış olanlar da dahil olmak üzere önyüklenebilir disk yansısından önyüklenebilir sürücüler oluşturun","Створення завантажувальних пристроїв з завантажувальних образів, у тому числі стиснутих","Tạo ổ đĩa có thể khởi động từ các tệp đĩa có thể khởi động, bao gồm cả tệp nén"
|
||||
"Feature5","704","Text","","Create BIOS or UEFI bootable drives, including UEFI bootable NTFS","إنشاء BIOS أو محركات أقراص UEFI قابلة للتمهيد ، بما في ذلك NTFS القابل للتشغيل من UEFI","Създаване на BIOS или UEFI стартиращи устройства, включително UEFI стартиращ NTFS","创建 BIOS 或 UEFI 可启动驱动器,包括 UEFI 可启动的 NTFS 驱动器","建立 BIOS 或 UEFI 可啟動隨身碟,包括 UEFI 可啟動的 NTFS 隨身碟","Stvaranje BIOS ili UEFI pogona za pokretanje, uključujući UEFI NTFS za pokretanje","Vytvořte zaváděcí jednotky BIOS nebo UEFI, včetně zaváděcích souborů NTFS UEFI","Lav BIOS eller UEFI opstartsbarer drev, inklusiv UEFI opstartsbarer NTFS","BIOS of UEFI opstartbare schijven aanmaken, inclusief UEFI opstartbare NTFS","Luo BIOS- tai UEFI-boottaavia asemia, mukaanlukien UEFI-boottaavat NTFS-asemat","Créez des disques amorçables BIOS ou UEFI, y compris des disques UEFI amorçables utilisant NTFS","Erstellen von BIOS- oder UEFI-bootfähigen Laufwerken, einschließlich UEFI-bootfähigem NTFS","Δημιουργήστε μονάδες δίσκου με δυνατότητα εκκίνησης BIOS ή UEFI, συμπεριλαμβανομένων NTFS με δυνατότητα εκκίνησης UEFI","יצירת כוננים הניתנים לאתחול ממחשבים התומכים ב־BIOS או UEFI, לרבות כוננים הניתנים לאתחול מ־UEFI, המשתמשים במערכת הקבצים NTFS","BIOS-ból vagy UEFI-ből bootolható meghajtók készítése, beleértve az UEFI-ből bootolható NTFS meghajtókat is","Buat perangkat BIOS atau UEFI yang dapat di boot, termasuk perangkat NTFS yang dapat di boot oleh UEFI","Crea unità avviabili BIOS o UEFI, incluso NTFS avviabile UEFI","UEFI:NTFSを含むBIOS及びUEFIで起動可能なドライブを作成します。","UEFI 부팅 가능한 NTFS를 포함하여 BIOS 또는 UEFI 부팅 가능 드라이브 만들기","Izveido BIOS vai UEFI ielādes ierīces, ieskaitot UEFI ielādi no NTFS","Sukurkite BIOS arba UEFI įkrovos diskus, įskaitant UEFI įkrovos NTFS","Buat pemacu boleh boot BIOS atau UEFI, termasuk NTFS boleh boot UEFI","Lag BIOS eller UEFI oppstartbare disker, inkludert UEFI oppstartbar NTFS","درایوهای قابل بوت بایوس یا UEFI از جمله NTFS قابل بوت UEFI ایجاد کنید","Stwórz dysk rozruchowy BIOS lub UEFI, włączając bootowalny dysk UEFI NTFS","Criar discos inicializáveis BIOS ou UEFI, inclusive discos UEFI inicializáveis usando NTFS","Criar discos inicializáveis BIOS ou UEFI, inclusive discos UEFI inicializáveis usando NTFS","Crează discuri bootabile BIOS sau UEFI, incluzând NTFS-uri bootabile de UEFI","Создать загрузочные диски BIOS или UEFI, включая загрузочный UEFI NTFS","Kreiranje BIOS ili UEFI disk jedinica za pokretanje sistema, uključujući NTFS sa UEFI pokretanjem sistema","Vytvorte bootovacie jednotky systému BIOS alebo UEFI vrátane UEFI bootovateľnej jednotky NTFS","Ustvarite zagonske pogone BIOS ali UEFI, vključno z UEFI bootable NTFS","Cree unidades de arranque BIOS o UEFI, incluido NTFS de arranque UEFI","Skapa BIOS- eller UEFI-startbara enheter, inklusive UEFI-startbar NTFS","สร้างไดร์ฟที่บูตได้จาก BIOS หรือ UEFI รวมไปถึง NTFS ที่บูตได้จาก UEFI","UEFI önyüklenebilir NTFS dahil BIOS ya da UEFI önyüklenebilir sürücüler oluşturun","Створення завантажувальних пристроїв BIOS чи UEFI, включаючи завантажувальний UEFI NTFS","Tạo ổ đĩa có thể khởi động với hệ thống BIOS hoặc UEFI, bao gồm cả NTFS có thể khởi động với UEFI"
|
||||
"Feature6","705","Text","","Create 'Windows To Go' drives","إنشاء محركات أقراص ""Windows To Go\","Създаване на 'Windows To Go' устройства","创建 'Windows To Go' 驱动器","建立 'Windows To Go' 隨身碟","Stvaranje pogona ""Windows To Go\","Vytvoření jednotek ""Windows To Go","Lav 'Windows To Go' drev","'Windows To Go'-schijven aanmaken","Luo 'Windows To Go' -asemia","Créez des disques 'Windows To Go'","Erstellen von ""Windows To Go""-Laufwerken","Δημιουργήστε μονάδες δίσκου ""Windows To Go\","יצירת כונני Windows To Go","'Windows To Go' meghajtók készítése","Buat perangkat Windows To Go","Crea unità 'Windows To Go'","Windows To Goドライブを作成します。","'Windows To Go' 드라이브 만들기","Izveido 'Windows To Go' ierīces","Sukurkite ""Windows To Go"" diskus","Buat pemacu 'Windows To Go'","Lag 'Windows To Go' disker","درایوهای ""Windows To Go"" را ایجاد کنید","Stwórz dysk 'Windows To Go'","Criar discos 'Windows To Go'","Criar discos 'Windows To Go'","Crează discuri 'Windows To Go'","Создание дисков Windows To Go","Kreiranje disk jedinica ""Windows to Go\","Vytvorte jednotky „Windows To Go\","Ustvarjanje pogonov »Windows To Go'","Cree unidades 'Windows To Go'","Skapa 'Windows To Go'-enheter","สร้างไดร์ฟของ 'Windows To Go'","'Windows To Go' sürücüleri oluşturun","Створення пристроїв 'Windows To Go'","Tạo ổ đĩa 'Windows To Go'"
|
||||
"Feature7","706","Text","","Create Windows 11 installation drives for PCs that don't have TPM or Secure Boot","قم بإنشاء محركات تثبيت ويندوز 11 لأجهزة الكمبيوتر التي لا تحتوي على TPM أو التمهيد الآمن","Създаване на Windows 11 инсталационно устройство за компютри, които нямат TPM или Secure Boot","为没有 TPM 或安全启动功能的电脑创建 Windows 11 安装驱动器","為沒有 TPM 或安全開機功能的電腦建立 Windows 11 安裝隨身碟","Stvaranje instalacijskih pogona sustava Windows 11 za PC-jeve koji nemaju TPM ili Sigurno pokretanje","Vytvoření instalačních jednotek systému Windows 11 pro počítače bez čipu TPM nebo Secure Boot","Lav Windows 11 installations drev for PCer der ikker har TPM eller Secure Boot","Windows 11 installatieschijven aanmaken voor pc's die geen TPM of Secure Boot hebben","Luo Windows 11 -asennusasemia tietokoneille, jotka eivät tue TPM- tai Secure Boot -ominaisuuksia","Créez des disques d'installation Windows 11 pour des PCs qui ne disposent pas de TPM ou Secure Boot","Erstellen von Windows 11-Installationslaufwerken für PCs ohne TPM oder Secure Boot","Δημιουργήστε μονάδες εγκατάστασης των Windows 11 για υπολογιστές που δεν διαθέτουν TPM ή Ασφαλή Εκκίνηση","יצירת כונני התקנה של Windows 11 עבור מחשבים שאין להם TPM או Secure Boot","Windows 11 telepítési meghajtók készítése olyan PC-k számára, amelyek nem rendelkeznek TPM vagy Secure Boot funkciókkal","Buat perangkat pemasang Windows 11 untuk PC yang tidak mempunyai TPM atau Secure Boot","Crea unità di installazione di Windows 11 per PC che non dispongono di TPM o avvio protetto","TPM及びセキュアブート非対応のPC向けのWindows 11インストールドライブを作成します","TPM 또는 보안 부팅이 없는 PC용 Windows 11 설치 드라이브 만들기","Izveido Windows 11 instalācijas ierīces datoriem, kam nav TPM vai Secure Boot","Sukurkite Windows 11 diegimo diskus kompiuteriams, kuriuose nėra TPM arba saugaus įkrovimo","Buat pemacu pemasangan Windows 11 untuk PC yang tidak mempunyai TPM atau But Selamat","Lag oppstartsmedia for Windows 11 som ikke krever TPM eller Secure Boot","درایوهای نصب ویندوز 11 را برای رایانه هایی که TPM یا Secure Boot ندارند ایجاد کنید","Twórz dyski instalacyjne systemu Windows 11 dla komputerów, które nie posiadają modułu TPM ani Secure Boot","Criar discos de instalação do Windows 11 para PCs que não possuem TPM ou Secure Boot","Criar discos de instalação do Windows 11 para PCs que não possuem TPM ou Secure Boot","Crează drive de instalare Windows 11 pe computere care nu au TPM sau Bootare Securizată","Создать установочные диски Windows 11 для компьютеров без TPM или безопасной загрузки","Kreiranje windows 11 instalacionih disk jedinica za računare koji nemaju TPM ili bezbedno pokretanje sistema","Vytvorte inštalačné jednotky Windows 11 pre počítače, ktoré nemajú modul TPM, ani Secure Boot","Ustvarjanje namestitvenih pogonov za Windows 11 za računalnike, ki nimate TPM ali Varnega zagona","Cree unidades de instalación de Windows 11 para PC que no tienen TPM o Arranque seguro","Skapa installationsenheter till Windows 11 för datorer som inte har TPM eller säker start","สร้างไดร์ฟติดตั้ง Windows 11 สำหรับคอมพิวเตอร์ที่ไม่มี TPM หรือ SecureBoot","TPM ya da Güvenli Önyüklemeye sahip olmayan bilgisayarlar için Windows 11 kurulum sürücüleri oluşturun","Створення інсталяційних дисків Windows 11 для ПК, які не мають TPM чи Secure Boot","Tạo ổ đĩa cài đặt Windows 11 cho các máy tính không có TPM hoặc Secure Boot"
|
||||
"Feature8","707","Text","","Create persistent Linux partitions","إنشاء Persistent Linux partitions","Създаване на устойчиви Linux дялове","创建持久 Linux 分区","建立持續性 Linux 磁區","Stvaranje trajnih Linux particija","Vytvoření trvalých oddílů systému Linux","Lav vedvarende Linux adskillelser","Persistent Linux partities aanmaken","Luo pysyviä Linux-osioita","Créez des partitions persistentes pour Linux","Persistente Linux-Partitionen erstellen","Δημιουργήστε μόνιμα διαμερίσματα Linux","יצירת מחיצות Linux קבועות","Tartós Linux partíciók készítése","Buat partisi Linux yang tetap/persistent","Crea partizioni persistenti Linux","記録用Linuxパーティションを作成します。","영구 리눅스 파티션 만들기","Izveido pastāvīgas Linux partīcijas","Sukurkite nuolatinius Linux skaidinius","Buat partition Linux berterusan","Lag persistente Linux partisjoner","ایجاد پارتیشن های لینوکس دائمی","Stwórz particje persistent Linuxa","Criar partições persistentes para Linux","Crie partições persistentes para Linux","Crează partiție de Linux persistentă","Создать постоянные разделы Linux","Kreiranje upornih Linux particija","Vytvorte trvalé oblasti systému Linux","Ustvarjanje trajnih Linux particij","Crear particiones persistentes de Linux","Skapa beständiga Linux-partitioner","สร้างพาร์ทิชั่นของ Linux แบบถาวร","Kalıcı Linux bölümleri oluşturun","Створення розділу збереження Linux","Tạo phân vùng Linux liên tục"
|
||||
"Feature9","708","Text","","Create VHD/DD images of the selected drive","إنشاء صور VHD / DD لمحرك الأقراص المحدد","Създаване на VHD/DD образи на избраното устройство","为选择的驱动器创建 VHD/DD 镜像","為選中的磁碟機建立 VHD/DD 映像檔","Stvaranje VHD/DD slika odabranog pogona","Vytvoření obrazů VHD/DD z vybrané jednotky","Lav VHD/DD billeder af det valgte drev","VHD/DD-images van de geselecteerde schijf aanmaken","Luo VHD/DD-kuvia valitusta asemasta","Créez des images VHD/DD du périphérique sélectionné","VHD/DD-Images des ausgewählten Laufwerks erstellen","Δημιουργήστε εικόνες VHD/DD της επιλεγμένης μονάδας δίσκου","יצירת קובצי תמונה מסוג VHD/DD של הכונן שנבחר","VHD/DD képfájl készítése a kiválasztott meghajtóról","Buat image VHD/DD dari penyimpanan yang dipilih","Crea immagini VHD/DD dell'unità selezionata","選択されたドライブのVHD/DDイメージを作成します。","선택한 드라이브의 VHD/DD 이미지 만들기","Izveido izvēlētā diska VHD/DD virtuālos attēlus","Sukurkite pasirinkto disko VHD / DD vaizdus","Buat imej VHD/DD bagi pemacu yang dipilih","Lag VHD/DD speilinger av valgt disk","تصاویر VHD/DD از درایو انتخاب شده ایجاد کنید","Stwórz obraz VHD/DD z wybranego dysku","Criar imagens VHD/DD do dispositivo selecionado","Criar imagens VHD/DD do dispositivo selecionado","Crează imagini VHD/DD de pe drive-ul selectat","Создать образы VHD/DD выбранного диска","Kreiranje VHD/DD slika izabrane disk jedinice","Vytvorte obrazy VHD/DD z vybratej jednotky","Ustvarjanje VHD/DD slik izbranega pogona","Cree imágenes VHD/DD de la unidad seleccionada","Skapa VHD/DD-avbilder av den valda enheten","สร้างอิมเมจไฟล์แบบ VHD/DD ของไดร์ฟที่เลือก","Seçilen sürücünün VHD/DD yansılarını oluşturun","Створення образів VHD/DD з вибраних дисків","Tạo tệp VHD/DD từ ổ đĩa đã chọn"
|
||||
"Feature10","709","Text","","Compute MD5, SHA-1, SHA-256 and SHA-512 checksums of the selected image","حساب المجموع الاختباري MD5 و SHA-1 و SHA-256 و SHA-512 للصورة المحددة","Изчисляване на MD5, SHA-1, SHA-256 и SHA-512 чексуми на избраният образ","计算被选择镜像的 MD5、SHA-1、SHA-256 和 SHA-512 校验码","計算被選中映像的 MD5、SHA-1、SHA-256 和 SHA-512 檢查碼","Izračunajte kontrolne zbrojeve odabrane slike MD5, SHA-1, SHA-256 i SHA-512","Výpočet kontrolních součtů MD5, SHA-1, SHA-256 a SHA-512 vybraného obrazu","Beregn MD5, SHA-1, SHA-256 og SHA-512 checksums af det valgte billede","MD5, SHA-1, SHA-256 en SHA-512 controlesommen berekenen van de geselecteerde image","Laske MD5, SHA-1, SHA-256 ja SHA-512 tarkistussummia valitusta levykuvasta","Calculez les sommes de contrôle MD5, SHA-1, SHA-256 et SHA-512 de l'image sélectionnée","Berechnung von MD5-, SHA-1-, SHA-256- und SHA-512-Prüfsummen für das ausgewählte Bild","Υπολογίστε τα αθροίσματα ελέγχου MD5, SHA-1, SHA-256 και SHA-512 της επιλεγμένης εικόνας","חישוב סיכומי ביקורת מסוג MD5, SHA-1, SHA-256 ו־SHA-512 של קובץ התמונה שנבחרה","A kiválasztott képfájl MD5, SHA-1, SHA-256 és SHA-512 ellenőrző összegének kiszámítása","Hitung checksum MD5, SHA-1, SHA-256 dan SHA-512 dari image yang dipilih","Calcola i checksum MD5, SHA-1, SHA-256 e SHA-512 dell'immagine selezionata","選択されたイメージのMD5、SHA-1、SHA-256及びSHA-512チェックサムを計算します。","선택한 이미지의 MD5, SHA-1, SHA-256 및 SHA-512 체크섬 계산","Izskaitļo izvēlētā virtuālā attēla MD5, SHA-1, SHA-256 un SHA-512 kontrolsummas","Apskaičiuokite pasirinkto vaizdo MD5, SHA-1, SHA-256 ir SHA-512 kontrolines sumas","Kira MD5, SHA-1, SHA-256 dan SHA-512 checksum imej yang dipilih","Kalkuler MD5, SHA-1, SHA-256 og SHA-512 sjekksummer fra valgt speiling","MD5، SHA-1، SHA-256 و SHA-512 را برای تصویر انتخابی محاسبه کنید","Oblicz sumy kontrolne MD5, SHA-1, SHA-256 i SHA-512 dla wybranego obrazu","Calcular somas de verificação MD5, SHA-1, SHA-256 e SHA-512 da imagem selecionada","Calcular checksums MD5, SHA-1, SHA-256 e SHA-512 da imagem selecionada","Compută MD5, SHA-1, SHA-256 și SHA-512 suma de control ale imaginilor selectate","Вычислить контрольные суммы MD5, SHA-1, SHA-256 и SHA-512 выбранного образа","Izračunajte MD5, SHA-1, SHA-256 i SHA-512 kontrolne preglede izabrane slike","Vypočítajte kontrolné súčty vybratého obrazu (MD5, SHA-1, SHA-256 a SHA-512)","Račun MD5, SHA-1, SHA-256 in SHA-512 kontrolni vsoti izbrane slike","Calcule las sumas de comprobación MD5, SHA-1, SHA-256 y SHA-512 de la imagen seleccionada","Beräkna kontrollsummor MD5, SHA-1, SHA-256 och SHA-512 för den valda avbilden","คำนวนรหัส MD5, SHA-1, SHA-256, SHA-512 ของไฟล์อิมเมจที่เลือก","Seçilen yansının MD5, SHA-1, SHA-256 ve SHA-512 sağlama toplamlarını hesaplayın","Обчислення контрольних сум MD5, SHA-1, SHA-256 та SHA-512 для вибраних образів","Tính tổng kiểm MD5, SHA-1, SHA-256 và SHA-512 của tệp đã chọn"
|
||||
"Feature11","710","Text","","Perform bad blocks checks, including detection of ""fake"" flash drives","إجراء فحوصات كتل تالفة ، بما في ذلك الكشف عن محركات أقراص فلاش ""زائفة\","Проверяване за лоши блокове, включително засичане на ""фалшиви"" устройства","执行坏块检查,包括对”假“U盘的检测","執行壞軌檢查,包括對”假“USB 快閃磁碟機的偵測","Izvršite provjere loših blokova, uključujući otkrivanje ""lažnih"" flash pogona","Provést kontrolu vadných bloků, včetně detekce ""falešných"" bloků. flash disky","Udøv dårlige blokke tjeks, inklusiv opdagelse af ""falske"" flashdrev","Controles uitvoeren op slechte blokken, inclusief detectie van ""valse"" flashdrives","Suorita viallisten lohkojen tarkistuksia, sisältäen ""valheellisten"" muistitikkujen tunnistamisen","Executez un test de mauvais secteurs avec detection des ""fake drives\","Durchführung von Prüfungen auf fehlerhafte Blöcke, einschließlich der Erkennung von ""gefälschten"" Flash-Laufwerken","Εκτελέστε ελέγχους εσφαλμένων block, συμπεριλαμβανομένου του εντοπισμού ""ψευδών"" μονάδων flash","ביצוע בדיקות אחר בלוקים (אזורים) פגומים, כולל זיהוי של כונני הבזק ""מזוייפים\","Hibás blokkok ellenőrzése, beleértve a ""hamis"" flash meghajtók detektálását","Lakukan cek Blok yang buruk, termasuk deteksi USB Flash Disk ""PALSU\","Esegui controlli dei blocchi danneggiati, incluso il rilevamento di unità flash ""false\","不良ブロックチェック及び容量詐欺ドライブの検知を行います。","""위조"" 플래시 드라이브 감지를 포함하여 불량 블록 검사 수행","Izpilda bojāto bloku pārbaudi ieskaitot ""falsificēto"" nesēju noteikšanu","Atlikite blogų blokų patikrinimus, įskaitant ""netikrų"" flash diskų aptikimą","Melakukan pemeriksaan blok buruk, termasuk pengesanan pemacu kilat ""palsu\","Utfør sjekk for dårlige sektorer, inkludert sjekk for forfalskede flash disker","بررسی بلوک های بد، از جمله تشخیص درایوهای فلش ""جعلی"" را انجام دهید","Sprawdź dysk pod względem spójności danych lub wykryj ""nieorginalny"" pendrive","Executar verificações de blocos defeituosos, incluindo detecção de unidades flash ""falsificadas\","Executar verificações de blocos inválidos, incluindo a detecção de unidades flash ""falsas\","Verifică blocuri rele, incluzând detectarea de drive-uri flash ""false\","Проверить наличие плохих блоков, обнаружить ""поддельные"" флешки","Izvršite provere loših blokova, uključujući otkrivanje ""lažnih"" fleš diskova","Vykonajte kontroly zlých blokov vrátane detekcie „falošných"" prenosných diskov","Izvajanje preverjanj slabih blokov, vključno z odkrivanjem »lažnih« bliskavic","Realice comprobaciones de bloques defectuosos, incluida la detección de unidades flash ""falsas\","Utför kontroll av trasiga block, inklusive upptäckt av ""falska"" USB-minnen","ดำเนินการตรวจสอบบล็อกข้อมูลที่พัง รวมไปถึงการทดสอบว่าเป็นแฟลชไดร์ฟ ""ปลอม"" หรือไม่","""Sahte"" flash sürücülerin tespiti de dahil olmak üzere hatalı blok kontrolleri gerçekleştirin","Перевірка дисків (включаючи фальшиві диски)","Thực hiện kiểm tra điểm lỗi, bao gồm phát hiện ổ đĩa ""giả\"
|
||||
"Feature12","711","Text","","Download official Microsoft Windows retail ISOs","قم بتنزيل ملفات ISO الرسمية الخاصة بـ Microsoft Windows","Изтегляне на официални Microsoft Windows ISO образи","下载微软官方 Windows 镜像","下載微軟官方 Windows 映像檔","Preuzimanje službenih ISO-ova za maloprodaju sustava Microsoft Windows","Stažení oficiálních souborů ISO systému Microsoft Windows","Hent officielle Microsoft Windows detail ISOer","Officiële Microsoft Windows retail ISO's downloaden","Lataa virallisia Microsoft Windowsin jälleenmyyntiversion ISO-levykuvia","Téléchargez des images ISOs commerciales officielles de Microsoft Windows","Offizielle Microsoft Windows-ISOs herunterladen","Κατεβάστε τα επίσημα retail ISO των Microsoft Windows","הורדת קובצי ה־ISO הקמעונאיים הרשמיים של Microsoft Windows","Hivatalos Microsoft Windows kiskereskedelmi ISO képfájlok letöltése","Unduh ISO Microsoft Windows resmi","Scarica le ISO ufficiali di Microsoft Windows","マイクロソフト公式のWindows ISOをダウンロードします。","공식 Microsoft Windows 리테일 ISO 다운로드","Lejupielādē oficiālos Microsoft ISO failus","Atsisiųskite oficialius Microsoft Windows mažmeninės prekybos ISO","Muat turun rasmi ISO runcit Microsoft Windows","Last ned offisielle Windows ISOer","ISO های رسمی ماکروسافت را دریافت کنید","Pobierz oficjalny obraz ISO systemu Microsoft Windows","Baixar ISOs oficiais do Microsoft Windows","Transferir ISOs oficiais do Microsoft Windows Retail","Descarcă un Microsoft Windows ISO oficial de vânzare","Загрузить официальные ISO-образы Windows","Preuzmite zvanične Microsoft Windows maloprodajne ISO-ove","Stiahnite si oficiálne ISO pre Microsoft Windows","Prenos uradnih Microsoft Windows maloprodaja ISOs","Descargue los ISO oficiales de Microsoft Windows","Ladda ner officiella Microsoft Windows ISO-filer","ดาวน์โหลดอิมเมจไฟล์ของ Windows จากเว็บไซต์ทางการ","Resmi Microsoft Windows Retail ISO'larını indirin","Завантаження офіційних образів Microsoft Windows","Tải xuống các tệp Microsoft Windows ISO bán lẻ chính thức"
|
||||
"Feature13","712","Text","","Download UEFI Shell ISOs","قم بتنزيل UEFI Shell ISOs","Изтегляне на UEFI Shell образи","下载 UEFI Shell 镜像","下載 UEFI Shell 映像檔","Preuzmite ISO-ove UEFI ljuske","Stažení souborů UEFI Shell ISO","Hent UEFI Shell ISOer","UEFI Shell ISO's downloaden","Lataa UEFI Shell ISO-levykuvia","Téléchargez des images ISOs du Shell UEFI","UEFI-Shell-ISOs herunterladen","Κατεβάστε τα ISO Shell UEFI","הורדת קובצי ISO של מעטפת UEFI","UEFI Shell ISO képfájlok letöltése","Unduh Shell ISO UEFI","Scarica le ISO della shell UEFI","UEFIシェルのISOをダウンロードします。","UEFI Shell ISO 다운로드","Lejupielādē UEFI OS ISO failus","Atsisiųskite UEFI Shell ISO","Muat turun ISO Shell UEFI","Last ned UEFI kommandolinje ISOer","ISO های پوسته UEFI را دانلود کنید","Ściągnij obrazy ISO UEFI Shell","Baixar ISOs do Shell UEFI","Transferir ISOs de UEFI Shell","Descarcă UEFI Shell ISO-uri","Загрузить ISO-образы оболочки UEFI","Preuzmite UEFI Shell ISOs","Stiahnite UEFI Shell ISO","Prenos UEFI Shell ISOs","Descargar ISO de UEFI Shell","Ladda ner UEFI-shell ISO-filer","ดาวน์โหลดอิมเมจไฟล์ของ UEFI Shell","UEFI Shell ISO'larını indirin","Завантаження командної оболонки UEFI ISO","Tải xuống các tệp UEFI Shell ISO"
|
||||
"Feature14","713","Text","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"Feature15","714","Text","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
"Feature16","715","Text","",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
|
||||
|
|
|
|
@ -3,6 +3,9 @@
|
|||
@echo off
|
||||
setlocal EnableExtensions DisableDelayedExpansion
|
||||
|
||||
rem if set, this will override the version for the package
|
||||
rem set VERSION_OVERRIDE=4.4.2104.0
|
||||
|
||||
goto main
|
||||
|
||||
:ReplaceTokenInFile
|
||||
|
@ -66,13 +69,31 @@ for %%a in (%ARCHS%) do (
|
|||
)
|
||||
)
|
||||
|
||||
rem exiftool.exe can't be installed in the Windows system directories...
|
||||
if not exist exiftool.exe (
|
||||
echo exiftool.exe must exist in this directory
|
||||
goto out
|
||||
)
|
||||
|
||||
rem Make sure we're not trying to create a package from an ALPHA or BETA version!
|
||||
exiftool -s3 -*InternalName* rufus_x64.exe | findstr /C:"ALPHA" 1>nul && (
|
||||
echo Alpha version detected - ABORTED
|
||||
goto out
|
||||
)
|
||||
exiftool -s3 -*InternalName* rufus_x64.exe | findstr /C:"BETA" 1>nul && (
|
||||
echo Beta version detected - ABORTED
|
||||
goto out
|
||||
)
|
||||
|
||||
rem Populate the version from the executable
|
||||
set target=%~dp0rufus_x64.exe
|
||||
set target=%target:\=\\%
|
||||
wmic datafile where "name='%target%'" get version | find /v "Version" > version.txt
|
||||
set /p VERSION=<version.txt
|
||||
set VERSION=%VERSION: =%
|
||||
del version.txt
|
||||
if "%VERSION_OVERRIDE%"=="" (
|
||||
exiftool -s3 -*FileVersionNumber* rufus_x64.exe > version.txt
|
||||
set /p VERSION=<version.txt
|
||||
del version.txt
|
||||
) else (
|
||||
echo WARNING: Forcing version to %VERSION_OVERRIDE%
|
||||
set VERSION=%VERSION_OVERRIDE%
|
||||
)
|
||||
|
||||
echo Will create %VERSION% AppStore Bundle
|
||||
pause
|
||||
|
|
|
@ -4,4 +4,4 @@
|
|||
*/
|
||||
#pragma once
|
||||
|
||||
#define GRUB2_PACKAGE_VERSION "2.06"
|
||||
#define GRUB2_PACKAGE_VERSION "2.12"
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
This directory contains the Grub 2.0 boot records that are used by Rufus
|
||||
|
||||
* Because of issue #2233, boot.img and core.img were created from the GRUB git
|
||||
source (@e67a551a48192a04ab705fca832d82f850162b64) obtained on 2023.04.25 from:
|
||||
https://git.savannah.gnu.org/cgit/grub.git/tree/?id=e67a551a48192a04ab705fca832d82f850162b64
|
||||
on a Debian 11.6 x64 system using the commands:
|
||||
* boot.img and core.img were created from a patched (since the offcial GRUB 2.12 release is *BROKEN*):
|
||||
https://ftp.gnu.org/gnu/grub/grub-2.12.tar.xz
|
||||
on a Debian 12.5 x64 system using the commands:
|
||||
./autogen.sh
|
||||
# --enable-boot-time for Manjaro Linux
|
||||
./configure --disable-nls --enable-boot-time
|
||||
|
|
Before Width: | Height: | Size: 115 B After Width: | Height: | Size: 351 B |
Before Width: | Height: | Size: 218 B After Width: | Height: | Size: 517 B |
Before Width: | Height: | Size: 125 B After Width: | Height: | Size: 365 B |
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="32px" height="32px" viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve">
|
||||
<g id="icon">
|
||||
<path d="M30,30H4v-4H2v-2h2v-2H2v-2h2v-2H2v-2h2v-2H2v-2h2v-2H2V8h2V6H2V4h2V0h26V30zM6,28h22V2H6v2h2v2H6v2h2v2H6v2h2v2H6v2h2v2H6v2h2v2H6v2h2v2H6V28zM24,24H12v-2h12V24zM24,20H12v-2h12V20zM24,16H12v-2h12V16zM24,12H12v-2h12V12zM24,8H12V6h12V8z" fill="#287FB7"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 659 B |
|
@ -5,7 +5,24 @@ To edit a translation, please make sure to follow:
|
|||
https://github.com/pbatard/rufus/wiki/Localization#Editing_an_existing_translation
|
||||
Or simply download https://files.akeo.ie/pollock/pollock-1.5.exe and follow its directions.
|
||||
|
||||
o v3.22 (2023.??.??)
|
||||
o v4.5 (2024.05.??)
|
||||
- *UPDATED* IDC_RUFUS_MBR -> IDC_UEFI_MEDIA_VALIDATION "Enable runtime UEFI media validation"
|
||||
- *UPDATED* MSG_167 "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
- *NEW* MSG_337 "An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS (...)"
|
||||
- *NEW* MSG_338 "Revoked UEFI bootloader detected"
|
||||
- *NEW* MSG_339 "Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked (...)"
|
||||
- *NEW* MSG_340 "a \"Security Violation\" screen"
|
||||
- *NEW* MSG_341 "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
- *NEW MSG_342 "Compressed VHDX Image"
|
||||
- *NEW* MSG_343 "Uncompressed VHD Image"
|
||||
- *NEW* MSG_344 "Full Flash Update Image"
|
||||
- *NEW* MSG_345 "Some additional data must be downloaded from Microsoft to use this functionality (...)"
|
||||
- *NEW* MSG_346 "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
- *NEW* MSG_347 "Expert Mode"
|
||||
- *NEW* MSG_348 "Extracting archive files: %s"
|
||||
- *NEW* MSG_349 "Use Rufus MBR"
|
||||
|
||||
o v3.22 (2023.03.25)
|
||||
// MSG_144 is aimed the the ISO download feature
|
||||
- *UPDATED* MSG_144 "Temporarily banned by Microsoft for requesting too many downloads (...)" -> "Download of Windows ISOs is unavailable due to Microsoft having altered their website to prevent it."
|
||||
// MSG_199 will appear for the ISO download feature if running on Windows 7
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-04-24 12:17+0300\n"
|
||||
"PO-Revision-Date: 2023-04-25 13:09+0100\n"
|
||||
"POT-Creation-Date: 2024-04-26 10:29+0100\n"
|
||||
"PO-Revision-Date: 2024-04-29 10:22+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ar_SA\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Arabic (العربية)\n"
|
||||
"X-Rufus-LCID: 0x0401, 0x0801, 0x0c01, 0x1001, 0x1401, 0x1801, 0x1c01, 0x2001, 0x2401, 0x2801, 0x2c01, 0x3001, 0x3401, 0x3801, 0x3c01, 0x4001\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "قائمة محركات الأقراص الثابتة USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "إضافة إصلاحات لنظام الإدخال والإخراج الأساسي (BIOS) القديم"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "استخدام Rufus MBR مع معرف BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "تمكين التحقق من صحة وسائط UEFI في وقت التشغيل"
|
||||
|
||||
# fixed translation since فورمات is the pronounce of format in arabic, correct translation is تهّيئة
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
|
@ -73,7 +71,7 @@ msgstr "نظام الملفات"
|
|||
|
||||
#. • IDD_DIALOG → IDS_CLUSTER_SIZE_TXT
|
||||
msgid "Cluster size"
|
||||
msgstr "حجم الكتلة"
|
||||
msgstr "حجم المجموعة"
|
||||
|
||||
#. • IDD_DIALOG → IDS_LABEL_TXT
|
||||
msgid "Volume label"
|
||||
|
@ -145,7 +143,7 @@ msgstr "السجل"
|
|||
|
||||
#. • IDD_LOG → IDC_LOG_CLEAR
|
||||
msgid "Clear"
|
||||
msgstr "مسح"
|
||||
msgstr "مسح الكل"
|
||||
|
||||
#. • IDD_LOG → IDC_LOG_SAVE
|
||||
msgid "Save"
|
||||
|
@ -215,11 +213,11 @@ msgstr ""
|
|||
|
||||
#. • MSG_004
|
||||
msgid "Rufus update policy"
|
||||
msgstr "سياسة تحديث Rufus"
|
||||
msgstr "تحديث سياسة Rufus"
|
||||
|
||||
#. • MSG_005
|
||||
msgid "Do you want to allow Rufus to check for application updates online?"
|
||||
msgstr "هل تريد السماح لـ Rufus بالتحقق من تحديثات التطبيق عبر الإنترنت؟"
|
||||
msgstr "هل تريد السماح لـ Rufus بالتحقق من وجود تحديثات التطبيق عبر الإنترنت؟"
|
||||
|
||||
#. • MSG_007
|
||||
msgid "Cancel"
|
||||
|
@ -250,7 +248,7 @@ msgid ""
|
|||
"%s"
|
||||
msgstr ""
|
||||
"%s\n"
|
||||
"يمكن الإطلاع على تقرير مفصّل خلال:\n"
|
||||
"يمكن الإطلاع على تقرير مفصّل من خلال:\n"
|
||||
"%s"
|
||||
|
||||
#. • MSG_013
|
||||
|
@ -373,7 +371,7 @@ msgstr "إيقاف"
|
|||
|
||||
#. • MSG_039
|
||||
msgid "Launch"
|
||||
msgstr "إطلاق"
|
||||
msgstr "بدأ"
|
||||
|
||||
#. • MSG_041
|
||||
msgid "Operation cancelled by the user"
|
||||
|
@ -407,11 +405,11 @@ msgstr "أقسام متعددة"
|
|||
|
||||
#. • MSG_048
|
||||
msgid "Rufus - Flushing buffers"
|
||||
msgstr "روفوس - تفريغ الذاكرة"
|
||||
msgstr "Rufus - تفريغ الذاكرة"
|
||||
|
||||
#. • MSG_049
|
||||
msgid "Rufus - Cancellation"
|
||||
msgstr "روفوس - إلغاء"
|
||||
msgstr "Rufus - إلغاء"
|
||||
|
||||
#. • MSG_050
|
||||
msgid "Success."
|
||||
|
@ -451,7 +449,7 @@ msgstr "معالج الجهاز غير صالح."
|
|||
|
||||
#. • MSG_059
|
||||
msgid "The selected cluster size is not valid for this device."
|
||||
msgstr "حجم الكتلة المحدد غير صالح لهذا الجهاز."
|
||||
msgstr "حجم المجموعة المحدد غير صالح لهذا الجهاز."
|
||||
|
||||
#. • MSG_060
|
||||
msgid "The volume size is invalid."
|
||||
|
@ -509,7 +507,7 @@ msgstr "لم يكتمل فحص الأجزاء السيئة."
|
|||
|
||||
#. • MSG_073
|
||||
msgid "ISO image scan failure."
|
||||
msgstr "فشل مسح صورة قرص ISO."
|
||||
msgstr "فشل فحص صورة قرص ISO."
|
||||
|
||||
#. • MSG_074
|
||||
msgid "ISO image extraction failure."
|
||||
|
@ -525,7 +523,7 @@ msgstr "تعذر تصحيح/إعداد ملفات الاقلاع."
|
|||
|
||||
#. • MSG_077
|
||||
msgid "Unable to assign a drive letter."
|
||||
msgstr "تعذر تعيين حرف محرك أقراص."
|
||||
msgstr "تعذر تعيين حرف لمحرك أقراص."
|
||||
|
||||
#. • MSG_078
|
||||
msgid "Can't mount GUID volume."
|
||||
|
@ -574,14 +572,14 @@ msgid ""
|
|||
"Note: The new file will be downloaded in the current directory and once a '%s' exists there, it will be reused automatically."
|
||||
msgstr ""
|
||||
"صورة الـISO يبدو استخدامها لإصدار قديم من '%s'. \n"
|
||||
"قوائم التمهيد قد لا يتم عرضها بشكل صحيح بهذا السبب.\n"
|
||||
"قوائم الإقلاع قد لا يتم عرضها بشكل صحيح بهذا السبب.\n"
|
||||
"\n"
|
||||
"لإصلاح الخلل يمكنك تحميل إصدار جديد من قبل روفوس:\n"
|
||||
"لإصلاح الخلل يمكنك تحميل إصدار جديد من قبل Rufus:\n"
|
||||
"- إختر ‘نعم’ للإتصال بالإنترنت وتحميل الملف\n"
|
||||
"- إختر ‘لا’ لترك ملف الISO دون تعديل\n"
|
||||
"إذا كنت لا تعرف ما عليك فعله, عليك اختيار ‘نعم’.\n"
|
||||
"\n"
|
||||
"ملاحظة: سيتم تحميل ملف جديد في الدليل الحالي وبعد العثور على ‘%s’ هناك, سوف يتم إعادة إستخدامه تلقائياً."
|
||||
"ملاحظة: سيتم تحميل ملف جديد في المجلد الحالي للتطبيق وبعد العثور على ‘%s’ هناك, سوف يتم إعادة إستخدامه تلقائياً."
|
||||
|
||||
#. • MSG_085
|
||||
msgid "Downloading %s"
|
||||
|
@ -630,7 +628,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"هام: هذا المحرك يحتوي على أجزاء متعددة !!\n"
|
||||
"\n"
|
||||
"قد يشمل ذلك أقسامًا / وحدات تخزين غير مدرجة أو حتى مرئية من Windows. إذا كنت ترغب في المتابعة، فأنت مسؤول عن أي فقد للبيانات في هذه الأقسام."
|
||||
"قد يشمل ذلك أقسامًا أو وحدات تخزين غير مدرجة أو حتى مرئية من Windows. إذا كنت ترغب في المتابعة، فأنت مسؤول عن أي فقدان للبيانات في هذه الأقسام."
|
||||
|
||||
#. • MSG_094
|
||||
msgid "Multiple partitions detected"
|
||||
|
@ -656,11 +654,11 @@ msgid ""
|
|||
"\n"
|
||||
"Note: The 'FIXED/REMOVABLE' attribute is a hardware property that can only be changed using custom tools from the drive manufacturer. However those tools are ALMOST NEVER provided to the public..."
|
||||
msgstr ""
|
||||
"هام: أنت تحاول تثبيت 'Windows To Go'، لكن القرص المستهدف ليس لديه السمة 'FIXED'. على الأرجح سيتسبب هذا في تجمد ويندوز أثناء الإقلاع، لأن ميكروسوفت لم تصممه ليعمل مع الأقراص ذات السمة البديلة 'REMOVABLE'.\n"
|
||||
"هام: أنت تحاول تثبيت 'Windows To Go'، لكن القرص المستهدف ليس لديه السمة 'FIXED'. على الأرجح سيتسبب هذا في تجمد ويندوز أثناء الإقلاع، لأن ميكروسوفت لم تصممه ليعمل مع الأقراص ذات السمة 'REMOVABLE'.\n"
|
||||
"\n"
|
||||
"هل لا زلت تريد الإستمرار؟\n"
|
||||
"\n"
|
||||
"ملاحظة: السمات 'FIXED/REMOVABLE' هي خصائص للعتاد ينكم تغييرها فقط باستعمال أدوات خاصة من مُصنع الأقراص. لكن هذه الأدوات لا تُّوفر للعامة غالبا..."
|
||||
"ملاحظة: السمات 'FIXED/REMOVABLE' هي خصائص للعتاد يمكن تغييرها فقط باستعمال أدوات خاصة من مُصنع الأقراص. لكن هذه الأدوات لا تُّوفر للعامة غالبا..."
|
||||
|
||||
#. • MSG_099
|
||||
msgid "Filesystem limitation"
|
||||
|
@ -679,7 +677,7 @@ msgid ""
|
|||
"Your platform cannot extract files from WIM archives. WIM extraction is required to create EFI bootable Windows 7 and Windows Vista USB drives. You can fix that by installing a recent version of 7-Zip.\n"
|
||||
"Do you want to visit the 7-zip download page?"
|
||||
msgstr ""
|
||||
"لا يمكن للنظام الأساسي الخاص بك استخراج الملفات من أرشيفات WIM. يلزم استخراج WIM لإنشاء محركات أقراص USB قابلة للتمهيد من EFI لنظامي التشغيل Windows 7 و Windows Vista. يمكنك إصلاح ذلك عن طريق تثبيت إصدار حديث من 7-Zip.\n"
|
||||
"لا يمكن لنظامك الأساسي استخراج الملفات من أرشيفات WIM. يلزم استخراج WIM لإنشاء محركات أقراص USB قابلة للإقلاع من EFI لنظامي التشغيل Windows 7 و Windows Vista. يمكنك إصلاح ذلك عن طريق تثبيت إصدار حديث من 7-Zip.\n"
|
||||
"هل تريد زيارة صفحة التنزيل 7-zip؟"
|
||||
|
||||
#. • MSG_103
|
||||
|
@ -701,13 +699,13 @@ msgid ""
|
|||
"Note: The file will be downloaded in the current directory and once a '%s' exists there, it will be reused automatically."
|
||||
msgstr ""
|
||||
"%s أو أحدث تتطلّب ملف '%s' ليتم التثبيت.\n"
|
||||
"لأن هذا الملف هو أكثر من 100KB في الحجم، ومتوفّر دائماً في ملفات ISO %s, ليس متوفّر في روفوس. \n"
|
||||
"لأن هذا الملف هو أكثر من 100KB في الحجم، ومتوفّر دائماً في ملفات ISO %s, ليس متوفّرا في Rufus. \n"
|
||||
"\n"
|
||||
"روفوس يمكنه تحميل الملف المفقود لك: \n"
|
||||
"Rufus يمكنه تحميل الملف المفقود لك: \n"
|
||||
"- إختر ‘نعم’ للإتصال بالإنترنت وتحميل الملف\n"
|
||||
"- إختر ‘لا’ إذا كنت تريد نسخ هذا الملف على محرك الأقراص يدوياً في وقت لاحق\n"
|
||||
"\n"
|
||||
"ملاحظة: سيتم تحميل ملف جديد في الدليل الحالي وبعد العثور على ‘%s’ هناك, سوف يتم إعادة إستخدامه تلقائياً."
|
||||
"ملاحظة: سيتم تحميل ملف جديد في المجلد الحالي للتطبيق وبعد العثور على ‘%s’ هناك, سوف يتم إعادة إستخدامه تلقائياً."
|
||||
|
||||
#. • MSG_105
|
||||
msgid ""
|
||||
|
@ -715,11 +713,11 @@ msgid ""
|
|||
"If you are sure you want to cancel, click YES. Otherwise, click NO."
|
||||
msgstr ""
|
||||
"الإلغاء قد يترك الجهاز في حالة غير صالحة للاستعمال.\n"
|
||||
"إذا كنت متأكداً من أنك تريد الإلغاء، إضغط نعم، وإلا، إضغط لا."
|
||||
"إذا كنت متأكداً من أنك تريد الإلغاء، إضغط \"نعم\"، وإلا، إضغط \"لا\"."
|
||||
|
||||
#. • MSG_106
|
||||
msgid "Please select folder"
|
||||
msgstr "الرجاء إختيار المجلد"
|
||||
msgstr "الرجاء إختيار مجلد"
|
||||
|
||||
#. • MSG_107
|
||||
msgid "All files"
|
||||
|
@ -727,7 +725,7 @@ msgstr "جميع الملفات"
|
|||
|
||||
#. • MSG_108
|
||||
msgid "Rufus log"
|
||||
msgstr "سجلّ روفوس"
|
||||
msgstr "سجلّ Rufus"
|
||||
|
||||
#. • MSG_109
|
||||
msgid "0x%02X (Disk %d)"
|
||||
|
@ -741,7 +739,7 @@ msgid ""
|
|||
"MS-DOS cannot boot from a drive using a 64 kilobytes Cluster size.\n"
|
||||
"Please change the Cluster size or use FreeDOS."
|
||||
msgstr ""
|
||||
"لا يمكن لـ MS-DOS التمهيد من محرك أقراص يستخدم حجم الكتلة 64 كيلو بايت.\n"
|
||||
"لا يمكن لـ MS-DOS الإقلاع من محرك أقراص يستخدم حجم الكتلة 64 كيلو بايت.\n"
|
||||
"الرجاء تغيير حجم الكتلة أو استخدام FreeDOS."
|
||||
|
||||
#. • MSG_111
|
||||
|
@ -752,7 +750,7 @@ msgstr "حجم الكتلة غير متوافق"
|
|||
#.
|
||||
#. "%d:%02d" is a duration (mins:secs)
|
||||
msgid "Formatting a large UDF volumes can take a lot of time. At USB 2.0 speeds, the estimated formatting duration is %d:%02d, during which the progress bar will appear frozen. Please be patient!"
|
||||
msgstr "يمكن أن تستغرق تهيئة وحدات التخزين UDF الكبيرة الكثير من الوقت. عند سرعات USB 2.0، تكون مدة التهيئة المقدرة %d:%02d, حيث سيظهر شريط التقدم مجمداً. يرجى التحلي بالصبر!"
|
||||
msgstr "يمكن أن تستغرق تهيئة وحدات التخزين UDF الكبيرة الكثير من الوقت. عند سرعات USB 2.0، تكون مدة التهيئة المقدرة بـ %d:%02d, حيث سيظهر شريط التقدم مجمداً. يرجى التحلي بالصبر!"
|
||||
|
||||
#. • MSG_113
|
||||
msgid "Large UDF volume"
|
||||
|
@ -774,11 +772,11 @@ msgstr ""
|
|||
"- قم بتحديد 'نعم' للاتصال بالإنترنت وتنزيل هذه الملفات\n"
|
||||
"- قم بتحديد 'لا' لإلغاء العملية\n"
|
||||
"\n"
|
||||
"ملاحظة: سيتم تنزيل الملفات في دليل التطبيق الحالي وستتم إعادة استخدامها تلقائيًا إذا كانت موجودة."
|
||||
"ملاحظة: سيتم تنزيل الملفات في مجلد التطبيق الحالي وستتم إعادة استخدامها تلقائيًا إذا كانت موجودة."
|
||||
|
||||
#. • MSG_115
|
||||
msgid "Download required"
|
||||
msgstr "التنزيل مطلوب"
|
||||
msgstr "التنزيل من الانترنت مطلوب"
|
||||
|
||||
#. • MSG_116
|
||||
#.
|
||||
|
@ -794,11 +792,11 @@ msgid ""
|
|||
"\n"
|
||||
"Note: The file will be downloaded in the current application directory and will be reused automatically if present. If no match can be found online, then the default version will be used."
|
||||
msgstr ""
|
||||
"هذه الصورة (الإيميج) تستعمل Grub %s لكن التطبيق يحتوي فقط على ملفات تثبيت Grub %s.\n"
|
||||
"هذه الصورة (image) تستعمل Grub %s لكن التطبيق يحتوي فقط على ملفات تثبيت Grub %s.\n"
|
||||
"\n"
|
||||
"بما أن إصدارات Grub المختلفة قد لا تتوافق مع بعضهاالبعض، وبما أنه لا يمكن ضمها كلها، فسيحاول روفوس تحديد مكان إصدار من ملف تثبيت Grub ('core.img') يتوافق مع الموجود في صورتك:\n"
|
||||
"بما أن إصدارات Grub المختلفة قد لا تتوافق مع بعضهاالبعض، وبما أنه لا يمكن ضمها كلها، فسيحاول Rufus تحديد مكان إصدار من ملف تثبيت Grub ('core.img') يتوافق مع الموجود في صورتك:\n"
|
||||
"- إختر 'نعم' للاتصال بلالأنترنت ومحاولة تنزيله\n"
|
||||
"- إختر 'لا' لاستعمال الإصدار الافتراضي من روفوس\n"
|
||||
"- إختر 'لا' لاستعمال الإصدار الافتراضي من Rufus\n"
|
||||
"- إختر 'إلغاء' لوقف العملية\n"
|
||||
"\n"
|
||||
"ملاحظة: سيتم تنزيل الملف في المجلد الحالي للتطبيق و سيستعمل تلقائيا إذا كان موجداً. إذا لم يتم العثور على إصدار موافق، فسيُستعمل الإصدار الافتراضي كبديل."
|
||||
|
@ -813,7 +811,7 @@ msgstr "التثبيت القياسي لنظام التشغيل Windows"
|
|||
#. http://en.wikipedia.org/wiki/Windows_To_Go in your language.
|
||||
#. Otherwise, you may add a parenthesis eg. "Windows To Go (<hint at what it does>)"
|
||||
msgid "Windows To Go"
|
||||
msgstr ""
|
||||
msgstr "Windows To Go"
|
||||
|
||||
#. • MSG_119
|
||||
msgid "advanced drive properties"
|
||||
|
@ -846,7 +844,7 @@ msgstr "حجم التقسيم المستمر"
|
|||
#. It is okay to use "No partition" or "None" or "Deactivated" to indicate that a persistent partition will not be
|
||||
#. created if the width of the control is too small (since the 'Size' edit control is *not* adjusted for width).
|
||||
msgid "No persistence"
|
||||
msgstr "لا استمرار"
|
||||
msgstr "لا استمرارية"
|
||||
|
||||
#. • MSG_125
|
||||
#.
|
||||
|
@ -856,7 +854,7 @@ msgstr "حدد حجم التقسيم المستمر لجهاز ال USB الحي
|
|||
|
||||
#. • MSG_126
|
||||
msgid "Set the partition size units."
|
||||
msgstr "حدد وحدات حجم التقسيم."
|
||||
msgstr "حدد حجم وحدات التقسيم."
|
||||
|
||||
#. • MSG_127
|
||||
msgid "Do not show this message again"
|
||||
|
@ -871,7 +869,7 @@ msgid ""
|
|||
"You have just created a media that uses the UEFI:NTFS bootloader. Please remember that, to boot this media, YOU MUST DISABLE SECURE BOOT.\n"
|
||||
"For details on why this is necessary, see the 'More Information' button below."
|
||||
msgstr ""
|
||||
"لقد قمت بإنشاء وسائط تستخدم محمل الإقلاع UEFI:NTFS. يرجى التذكر أنه يجب تعطيل Secure Boot للتمكن من إقلاع الوسائط.\n"
|
||||
"لقد قمت لتوك بإنشاء وسائط تستخدم محمل الإقلاع UEFI:NTFS. يرجى التذكر أنه يجب تعطيل Secure Boot للتمكن من إقلاع الوسائط.\n"
|
||||
"للمزيد من التفاصيل عن ضرورة الإجراء المذكور, إضغط على زر 'مزيد من المعلومات' أدناه."
|
||||
|
||||
#. • MSG_130
|
||||
|
@ -888,7 +886,7 @@ msgstr ""
|
|||
|
||||
#. • MSG_132
|
||||
msgid "Another program or process is accessing this drive. Do you want to format it anyway?"
|
||||
msgstr "هذا القرص يستخدم من قبل برنامج / إجراء آخر. هل تود التهيئة على أية حال ؟"
|
||||
msgstr "هذا القرص يستخدم من قبل برنامج آخر. هل تود التهيئة على أية حال ؟"
|
||||
|
||||
#. • MSG_133
|
||||
msgid ""
|
||||
|
@ -898,11 +896,11 @@ msgid ""
|
|||
"\n"
|
||||
"Also note that the reason Rufus cannot automatically fix this for you is that 'WppRecorder.sys' is a Microsoft copyrighted file, so we cannot legally embed a copy of the file in the application..."
|
||||
msgstr ""
|
||||
"لقد قام روفوس بإكتشاف أنك تحاول إنشاء وسائط Windows To Go بناءً على ISO 1809\n"
|
||||
"لقد قام Rufus بإكتشاف أنك تحاول إنشاء وسائط Windows To Go بناءً على ISO 1809\n"
|
||||
"\n"
|
||||
"بسبب عيب في Microsoft, سوف تتوقف الوسائط خلال إقلاع Windows (شاشة الموت الزرقاء) ما لم تقم يدوياً بإستبدال ملف 'WppRecorder.sys' بإصدار 1803.\n"
|
||||
"\n"
|
||||
"يرجى العلم أن سبب عدم إمكانية روفوس من إصلاح المشكلة تلقائيا هو أن ملف 'WppRecorder.sys' محفوظ الحقوق ل Microsoft, لذلك لا يمكننا تضمين نسخة من الملف في التطبيق..."
|
||||
"يرجى العلم أن سبب عدم إمكانية Rufus من إصلاح المشكلة تلقائيا هو أن ملف 'WppRecorder.sys' محفوظ الحقوق ل Microsoft, لذلك لا يمكننا تضمين نسخة من الملف في التطبيق..."
|
||||
|
||||
#. • MSG_134
|
||||
msgid ""
|
||||
|
@ -910,7 +908,7 @@ msgid ""
|
|||
"\n"
|
||||
"Are you sure you want to continue?"
|
||||
msgstr ""
|
||||
"بسبب إختيار نظام التجزئة MBR, روفوس قادر فقط على إنشاء تجزئة لغاية 2 TB على هذه الوسائط, الذي سوف يؤدي إلى عدم توفر %s من مساحة القرص.\n"
|
||||
"بسبب إختيار نظام التجزئة MBR, Rufus(Rufus) قادر فقط على إنشاء تجزئة لغاية 2 TB على هذه الوسائط, الذي سوف يؤدي إلى عدم توفر %s من مساحة القرص.\n"
|
||||
"\n"
|
||||
"هل تريد المتابعة ؟"
|
||||
|
||||
|
@ -1035,7 +1033,7 @@ msgstr "الطريقة اللتي سيتم إستخدامها لإنشاء ال
|
|||
|
||||
#. • MSG_164
|
||||
msgid "Method that will be used to make the drive bootable"
|
||||
msgstr "الطريقة التي سيتّم إستخدامها لخلق محرك أقراص تمهيدي"
|
||||
msgstr "الطريقة التي سيتّم إستخدامها لخلق محرك أقراص إقلاعي"
|
||||
|
||||
#. • MSG_165
|
||||
msgid "Click to select or download an image..."
|
||||
|
@ -1046,16 +1044,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "حدّد هذا المربّع للسماح بعرض التسميات الدولية وتعيين أيقونة الجهاز (إنشاء autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "تثبيت MBR للسماح باختيار التمهيد ويمكن تنكّر الـ BIOS ID لقرص USB"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"محاولة تنكّر محرّك قرص USB (عادة 0x80) كقرص مختلف.\n"
|
||||
"Tهذا ضروري فقط إذا أردت تثبيت ويندوز إكس بي ولديك أكثر من قرص واحد."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "قم بتثبيت أداة تحميل تشغيل UEFI، و التي ستقوم بالتحقق من صحة الملف بإستخدام MD5"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1063,7 +1053,7 @@ msgid ""
|
|||
"This can improve boot detection for older BIOSes."
|
||||
msgstr ""
|
||||
"إنشاء قسم إضافي خفي ومحاذاة حدود الأقسام.\n"
|
||||
"هذا يمكنه تحسين إكتشاف التمهيد لـ BIOSes قديمة."
|
||||
"هذا يمكنه تحسين إكتشاف الإقلاع لـ BIOSes قديمة."
|
||||
|
||||
#. • MSG_170
|
||||
msgid "Enable the listing of USB Hard Drive enclosures. USE AT YOUR OWN RISKS!!!"
|
||||
|
@ -1098,7 +1088,7 @@ msgstr "إصدار %d.%d (بناء %d)"
|
|||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "الترجمة إلى العربية: أ. راس النعامة / عمر الصمد / فراس السيخ / عبدالمجيد"
|
||||
msgstr "الترجمة إلى العربية:\\line• أ. راس النعامة \\line• عمر الصمد \\line• فراس السيخ \\line• عبدالمجيد"
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1130,7 +1120,7 @@ msgstr "عنوان IP الخاص بك"
|
|||
|
||||
#. • MSG_184
|
||||
msgid "For the purpose of generating private usage statistics, we may keep the information collected, \\b for at most a year\\b0 . However, we will not willingly disclose any of this individual data to third parties."
|
||||
msgstr "لغرض إنشاء إحصاءات الاستخدام الخاصة، قد نحتفظ بالمعلومات التي تم جمعها, \\b لمدة عام على الأكثر\\b0 . ومع ذلك،، فإننا لن نكشف عن أي من هذه البيانات الفردية عن طيب خاطر لأطراف ثالثة."
|
||||
msgstr "لغرض إنشاء إحصاءات الاستخدام الخاصة، قد نحتفظ بالمعلومات التي تم جمعها, \\b لمدة عام على الأكثر\\b0 . ومع ذلك،، فإننا لن نكشف عن أي من هذه البيانات الفردية طوعًا لأطراف ثالثة."
|
||||
|
||||
#. • MSG_185
|
||||
msgid "Update Process:"
|
||||
|
@ -1141,20 +1131,20 @@ msgid ""
|
|||
"Rufus does not install or run background services, therefore update checks are performed only when the main application is running.\\line\n"
|
||||
"Internet access is of course required when checking for updates."
|
||||
msgstr ""
|
||||
"روفوس لا يقوم بتثبيت أو تشغيل خدمات خلفية, وبالتالي يتم التحقّق من تحديثات فقط عند تشغيل التطبيق الرئيسي. \\line\n"
|
||||
"Rufus لا يقوم بتثبيت أو تشغيل خدمات خلفية, وبالتالي يتم التحقّق من تحديثات فقط عند تشغيل التطبيق الرئيسي. \\line\n"
|
||||
"الإتصال بالإنترنت بالطبع مطلوب عند التحقّق من وجود تحديثات."
|
||||
|
||||
#. • MSG_187
|
||||
msgid "Invalid image for selected boot option"
|
||||
msgstr "صورة (إيميج) غير صالحة للخيار التمهيدي المحدّد"
|
||||
msgstr "صورة (image) غير صالحة للخيار الإقلاعي المحدّد"
|
||||
|
||||
#. • MSG_188
|
||||
msgid "The current image doesn't match the boot option selected. Please use a different image or choose a different boot option."
|
||||
msgstr "الصورة (الإيميج) الحالية لا تتطابق مع الخيار التمهيدي المحدّد. يُرجى إستخدام صورة مختلفة أو تحديد خيار تمهيدي آخر."
|
||||
msgstr "الصورة (image) الحالية لا تتطابق مع الخيار الإقلاعي المحدّد. يُرجى إستخدام صورة مختلفة أو تحديد خيار إقلاعي آخر."
|
||||
|
||||
#. • MSG_189
|
||||
msgid "This ISO image is not compatible with the selected filesystem"
|
||||
msgstr "صورة (إيميج) ISO هذه غير متوافقة مع نظام الملفات المحدّد"
|
||||
msgstr "صورة ISO هذه غير متوافقة مع نظام الملفات المحدّد"
|
||||
|
||||
#. • MSG_190
|
||||
msgid "Incompatible drive detected"
|
||||
|
@ -1196,7 +1186,7 @@ msgstr ""
|
|||
"هام: هذا القرص يستخدم حجم قطاع غير قياسي!\n"
|
||||
"\n"
|
||||
"الأقراص التقليدية تستعمل 512-بايت كحجن قطاع لكن هذا القراص يستعمل %d-بايت. في العديد من الحالات، هذا يعني أنك لن تستطيع الإقلاع من هذا القرص.\n"
|
||||
"يستطيع روفوس محاولة إنشاء قرص إقلاع، لكن من دون ضمان أنه سيعمل."
|
||||
"يستطيع Rufus محاولة إنشاء قرص إقلاع، لكن من دون ضمان أنه سيعمل."
|
||||
|
||||
#. • MSG_197
|
||||
msgid "Nonstandard sector size detected"
|
||||
|
@ -1204,7 +1194,7 @@ msgstr "إكتشاف حجم قطاع غير قياسي"
|
|||
|
||||
#. • MSG_198
|
||||
msgid "'Windows To Go' can only be installed on a GPT partitioned drive if it has the FIXED attribute set. The current drive was not detected as FIXED."
|
||||
msgstr "يمكن تثبيت 'Windows To Go' على قرص بتقسيمات GPT فقط إذا كان عندهالسمة FIXED مُحددة. لم يتم إكتشاف FIXED في القرص الحالي."
|
||||
msgstr "يمكن تثبيت 'Windows To Go' فقط على قرص بتقسيمات GPT إذا كان عنده السمة FIXED مُحددة. لم يتم إكتشاف FIXED في القرص الحالي."
|
||||
|
||||
#. • MSG_199
|
||||
msgid "This feature is not available on this platform."
|
||||
|
@ -1216,17 +1206,17 @@ msgstr "جاري الإلغاء – الرجاء الإنتظار..."
|
|||
|
||||
#. • MSG_202
|
||||
msgid "Scanning image..."
|
||||
msgstr "مسح الصورة..."
|
||||
msgstr "فحص الصورة (image)..."
|
||||
|
||||
#. • MSG_203
|
||||
msgid "Failed to scan image"
|
||||
msgstr "فشل لمسح الصورة"
|
||||
msgstr "فشل فحص الصورة"
|
||||
|
||||
#. • MSG_204
|
||||
#.
|
||||
#. %s is the name of an obsolete Syslinux .c32 module. Example: "Obsolete vesamenu.c32 detected"
|
||||
msgid "Obsolete %s detected"
|
||||
msgstr "إكتشاف %s قديمة مهملة"
|
||||
msgstr "إكتشاف %s قديمة"
|
||||
|
||||
#. • MSG_205
|
||||
#.
|
||||
|
@ -1285,13 +1275,13 @@ msgstr "فشل إطلاق تطبيق جديد"
|
|||
#.
|
||||
#. Example: "Opened some_file.txt"
|
||||
msgid "Opened %s"
|
||||
msgstr "فتح %s"
|
||||
msgstr "تم فتح %s"
|
||||
|
||||
#. • MSG_216
|
||||
#.
|
||||
#. Example: "Saved rufus.log"
|
||||
msgid "Saved %s"
|
||||
msgstr "حفظ %s"
|
||||
msgstr "تم حفظ %s"
|
||||
|
||||
#. • MSG_217
|
||||
#.
|
||||
|
@ -1301,11 +1291,11 @@ msgstr "التهيئة: %s"
|
|||
|
||||
#. • MSG_218
|
||||
msgid "Creating file system: Task %d/%d completed"
|
||||
msgstr "إنشاء نظام الملفات: تمت %d/%d عملية"
|
||||
msgstr "إنشاء نظام الملفات: عملية %d/%d تمت"
|
||||
|
||||
#. • MSG_219
|
||||
msgid "NTFS Fixup: %d%% completed"
|
||||
msgstr "إصلاح NTFS: تم %d%%"
|
||||
msgstr "إصلاح NTFS: تم إصلاح %d%%"
|
||||
|
||||
#. • MSG_220
|
||||
#.
|
||||
|
@ -1313,7 +1303,7 @@ msgstr "إصلاح NTFS: تم %d%%"
|
|||
#. Example: "Formatting (UDF) - Estimated duration 3:21..."
|
||||
#. If "estimated duration" is too long, just use "estimated" or an abbreviation
|
||||
msgid "Formatting (%s) - estimated duration %d:%02d..."
|
||||
msgstr "فرمتة (%s) – تقديرياً %d:%02d..."
|
||||
msgstr "فرمتة (%s) – المدة التقديرية %d:%02d..."
|
||||
|
||||
#. • MSG_221
|
||||
msgid "Setting label (%s)..."
|
||||
|
@ -1339,7 +1329,7 @@ msgstr "طلب الوصول إلى القرص..."
|
|||
|
||||
#. • MSG_226
|
||||
msgid "Analyzing existing boot records..."
|
||||
msgstr "تحليل سجلّات التمهيد الموجودة..."
|
||||
msgstr "تحليل سجلّات الإقلاع الموجودة..."
|
||||
|
||||
#. • MSG_227
|
||||
msgid "Closing existing volume..."
|
||||
|
@ -1347,11 +1337,11 @@ msgstr "غلق وحدة التخزين الموجودة..."
|
|||
|
||||
#. • MSG_228
|
||||
msgid "Writing Master Boot Record..."
|
||||
msgstr "كتابة سجلّ التمهيد الرئيسي (MBR) ..."
|
||||
msgstr "كتابة سجلّ الإقلاع الرئيسي (MBR) ..."
|
||||
|
||||
#. • MSG_229
|
||||
msgid "Writing Partition Boot Record..."
|
||||
msgstr "كتابة سجل تمهيد القسم ..."
|
||||
msgstr "كتابة سجل إقلاع القسم ..."
|
||||
|
||||
#. • MSG_230
|
||||
msgid "Copying DOS files..."
|
||||
|
@ -1363,7 +1353,7 @@ msgstr "نسخ ملفات الـISO: %s"
|
|||
|
||||
#. • MSG_232
|
||||
msgid "Win7 EFI boot setup (%s)..."
|
||||
msgstr "إعداد تمهيد EFI ل ويندوز7 (%s)..."
|
||||
msgstr "إعداد إقلاع EFI ل ويندوز7 (%s)..."
|
||||
|
||||
#. • MSG_233
|
||||
msgid "Finalizing, please wait..."
|
||||
|
@ -1423,7 +1413,7 @@ msgstr "فشل في تحميل الملف."
|
|||
|
||||
#. • MSG_243
|
||||
msgid "Checking for Rufus updates..."
|
||||
msgstr "التحقّق من تحديثات روفوس..."
|
||||
msgstr "التحقّق من تحديثات Rufus..."
|
||||
|
||||
#. • MSG_244
|
||||
msgid "Updates: Unable to connect to the internet"
|
||||
|
@ -1435,11 +1425,11 @@ msgstr "التحديثات: عدم القدرة على الوصول إلى بي
|
|||
|
||||
#. • MSG_246
|
||||
msgid "A new version of Rufus is available!"
|
||||
msgstr "إصدار جديد متاح من روفوس!"
|
||||
msgstr "إصدار جديد متاح من Rufus!"
|
||||
|
||||
#. • MSG_247
|
||||
msgid "No new version of Rufus was found"
|
||||
msgstr "لم يتم العثور على إصدار جديد من روفوس"
|
||||
msgstr "لم يتم العثور على إصدار جديد من Rufus"
|
||||
|
||||
#. • MSG_248
|
||||
msgid "Application registry keys successfully deleted"
|
||||
|
@ -1493,7 +1483,7 @@ msgstr "فرض التحديث"
|
|||
|
||||
#. • MSG_260
|
||||
msgid "NTFS compression"
|
||||
msgstr "إنضغاط NTFS"
|
||||
msgstr "ضغط NTFS"
|
||||
|
||||
#. • MSG_261
|
||||
msgid "Writing image: %s"
|
||||
|
@ -1509,11 +1499,11 @@ msgstr "دعم ISO"
|
|||
#.
|
||||
#. Cheat mode to force legacy size units, where 1 KB is 1024 bytes and NOT that fake 1000 bytes abomination!
|
||||
msgid "Use PROPER size units"
|
||||
msgstr "استعمل وحدات حجم مناسبة"
|
||||
msgstr "استعمل وحدات حجم مناسبة (PROPER)"
|
||||
|
||||
#. • MSG_264
|
||||
msgid "Deleting directory '%s'"
|
||||
msgstr "حذف الدليل '%s'"
|
||||
msgstr "حذف المجلد '%s'"
|
||||
|
||||
#. • MSG_265
|
||||
msgid "VMWare disk detection"
|
||||
|
@ -1529,7 +1519,7 @@ msgstr "تطبيق صورة (نسخة) ويندوز: %s"
|
|||
|
||||
#. • MSG_268
|
||||
msgid "Applying Windows image..."
|
||||
msgstr "تطبيق صورة (إيميج) ويندوز..."
|
||||
msgstr "تطبيق صورة (نسخة) ويندوز..."
|
||||
|
||||
#. • MSG_269
|
||||
msgid "Preserve timestamps"
|
||||
|
@ -1541,7 +1531,7 @@ msgstr "تنقيح الأخطاء عن طريق USB"
|
|||
|
||||
#. • MSG_271
|
||||
msgid "Computing image checksums: %s"
|
||||
msgstr "حساب مجاميع اختبار (Checksums) الصورة: %s"
|
||||
msgstr "حساب مجاميع الإختبار (Checksums) للصورة (Image): %s"
|
||||
|
||||
#. • MSG_272
|
||||
msgid "Compute the MD5, SHA1 and SHA256 checksums for the selected image"
|
||||
|
@ -1565,8 +1555,8 @@ msgid ""
|
|||
"\n"
|
||||
"Please select the mode that you want to use to write this image:"
|
||||
msgstr ""
|
||||
"الصورة التي اخترتها هي صورة 'ISOHybrid'. هذا يعني أنه يمكن كتابتها في نمط %s (نسخة ملف) أو نمط %s.\n"
|
||||
" (صورة قرص)روفوس يوصي باستعمال نمط %s، كي تتمكن دوما من الوصول الكامل إلى القرص بعد كتابته.\n"
|
||||
"الصورة التي اخترتها هي صورة 'ISOHybrid'. هذا يعني أنه يمكن كتابتها إما في نمط نسخة ملف %s وإما في نمط نسخة قرص %s.\n"
|
||||
" Rufus يوصي باستعمال نمط %s، كي تتمكن دوما من الوصول الكامل إلى القرص بعد كتابته.\n"
|
||||
"لكن، إذا واجهت مشاكلا خلال الإقلاع يمكنك محاولة كتابة هاته الصورة مرة أخرى في نمط %s.\n"
|
||||
"\n"
|
||||
"فضلا اختر النمط الذي تريده لكتابة هاته الصورة:"
|
||||
|
@ -1609,7 +1599,7 @@ msgstr "التوفيع الرقمي غير صالح"
|
|||
|
||||
#. • MSG_284
|
||||
msgid "The downloaded executable is missing a digital signature."
|
||||
msgstr "الملف التنفيذي المحمل ينقصه توقيع رقمي معين."
|
||||
msgstr "الملف التنفيذي المحمل ينقصه توقيع رقمي."
|
||||
|
||||
#. • MSG_285
|
||||
msgid ""
|
||||
|
@ -1627,11 +1617,11 @@ msgstr "تصفير القرص: %s"
|
|||
|
||||
#. • MSG_287
|
||||
msgid "Detection of non-USB removable drives"
|
||||
msgstr "الكشف عن أقراص الUSB القابلة للإزالة"
|
||||
msgstr "الكشف عن الأقراص غير USB القابلة للإزالة"
|
||||
|
||||
#. • MSG_288
|
||||
msgid "Missing elevated privileges"
|
||||
msgstr "صلاحيات رفيعة مفقوده"
|
||||
msgstr "عدم التوفر على صلاحيات رفيعة"
|
||||
|
||||
#. • MSG_289
|
||||
msgid "This application can only run with elevated privileges"
|
||||
|
@ -1671,7 +1661,7 @@ msgid ""
|
|||
"\n"
|
||||
"Are you sure you want to run it?"
|
||||
msgstr ""
|
||||
"هذا الإصدار من روفوس لم يتم إنتاجه من قبل المطورين الرسميين.\n"
|
||||
"هذا الإصدار من Rufus لم يتم إنتاجه من قبل المطورين الرسميين.\n"
|
||||
"\n"
|
||||
"؟هل أنت متأكد من الأستمرار?"
|
||||
|
||||
|
@ -1691,7 +1681,7 @@ msgstr ""
|
|||
"\n"
|
||||
"إذا قمت بالحصول على هذا الملف من الإنترنت, يجب عليك تحميل نسخة جديدة و التحقق من أن المجموع الإختباري لMD5 و SHA مطابق للنسخ(ة) الأصلية.\n"
|
||||
"\n"
|
||||
"علماُ بانه يمكنك مقارنة الMD5 و SHA في روفوس عن طريق الضغط على زر (✓)"
|
||||
"علماُ بانه يمكنك مقارنة الMD5 و SHA في Rufus عن طريق الضغط على زر (✓)"
|
||||
|
||||
#. • MSG_299
|
||||
msgid "Timestamp validation error"
|
||||
|
@ -1705,7 +1695,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Rufus لم يتمكن من التحقق أن الطابع الزمني للتحديث الذي تم تنزيله أحدث من ذلك الذي في البرنامج التنفيذي الحالي. \n"
|
||||
"\n"
|
||||
" من أجل منع سيناريوهات الهجوم المحتملة, تم إحباط عملية الاتحديث و سيتم حذف التحديث, الرجاء التحقق من السجل لمزيد من التفاصيل."
|
||||
" من أجل منع سيناريوهات الهجوم المحتملة, تم إحباط عملية التحديث و سيتم حذف التحديث, الرجاء التحقق من السجل لمزيد من التفاصيل."
|
||||
|
||||
#. • MSG_301
|
||||
msgid "Show application settings"
|
||||
|
@ -1752,7 +1742,7 @@ msgid ""
|
|||
"\n"
|
||||
"Please select the mode that you want to use to write this image:"
|
||||
msgstr ""
|
||||
"يستخدم ISO الذي حددته UEFI وهو صغير بما يكفي ليتم كتابته كقسم نظام EFI (ESP). يمكن أن تكون الكتابة إلى ESP ، بدلاً من الكتابة إلى قسم بيانات عام يشغل القرص بأكمله ، هي الأفضل لبعض أنواع التثبيتات.\n"
|
||||
"يستخدم ISO الذي حددته UEFI وهو صغير بما يكفي ليتم كتابته كقسم نظام EFI (ESP). يمكن أن تكون الكتابة إلى ESP ، بدلاً من الكتابة إلى قسم بيانات عام تشغل القرص بأكمله ، هي الأفضل لبعض أنواع التثبيتات.\n"
|
||||
"\n"
|
||||
"الرجاء تحديد الوضع الذي تريد استخدامه لكتابة هذه الصورة(Image):"
|
||||
|
||||
|
@ -1786,11 +1776,11 @@ msgstr "رقم تعريف القرص"
|
|||
|
||||
#. • MSG_318
|
||||
msgid "Default thread priority: %d"
|
||||
msgstr "الأفضلية الافتراضية لمؤشر الترابط: %d"
|
||||
msgstr "الأفضلية الافتراضية لـ thread : %d"
|
||||
|
||||
#. • MSG_319
|
||||
msgid "Ignore Boot Marker"
|
||||
msgstr "تجاهل علامة التمهيد"
|
||||
msgstr "تجاهل علامة الإقلاع"
|
||||
|
||||
#. • MSG_320
|
||||
msgid "Refreshing partition layout (%s)..."
|
||||
|
@ -1801,8 +1791,8 @@ msgid ""
|
|||
"The image you have selected is an ISOHybrid, but its creators have not made it compatible with ISO/File copy mode.\n"
|
||||
"As a result, DD image writing mode will be enforced."
|
||||
msgstr ""
|
||||
"الصورة التي حددتها هي ISO-Hybrid (هجينة) ، لكن منشئوها لم يجعلوها متوافقة مع وضع نسخ ملف ISO. \n"
|
||||
"نتيجة لذلك ، سيتم فرض وضع كتابة صورة DD."
|
||||
"الصورة التي حددتها هي ISO-Hybrid (هجينة) ، لكن منشئوها لم يجعلوها متوافقة مع وضع نسخ ملف ISO. \n"
|
||||
"نتيجة لذلك ، سيتم فرض وضع DD لكتابة الصورة."
|
||||
|
||||
#. • MSG_322
|
||||
msgid "Unable to open or read '%s'"
|
||||
|
@ -1810,7 +1800,7 @@ msgstr "غير قادر على فتح أو قراءة '%s'"
|
|||
|
||||
#. • MSG_325
|
||||
msgid "Applying Windows customization: %s"
|
||||
msgstr "تطبيق تخصيص ويندوز: %s"
|
||||
msgstr "جاري تطبيق تخصيصات ويندوز: %s"
|
||||
|
||||
#. • MSG_326
|
||||
msgid "Applying user options..."
|
||||
|
@ -1830,7 +1820,7 @@ msgstr "قم بإزالة متطلبات 4GB + RAM ، Secure Boot و TPM 2.0"
|
|||
|
||||
#. • MSG_330
|
||||
msgid "Remove requirement for an online Microsoft account"
|
||||
msgstr "إزالة متطلبات حساب مايكروسوفت عبر الإنترنت"
|
||||
msgstr "قم بإزالة متطلبات حساب مايكروسوفت عبر الإنترنت"
|
||||
|
||||
#. • MSG_331
|
||||
msgid "Disable data collection (Skip privacy questions)"
|
||||
|
@ -1856,11 +1846,87 @@ msgstr "تعطيل التشفير التلقائي BitLocker للجهاز"
|
|||
msgid "Persistent log"
|
||||
msgstr "سجل متواصل"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"يجب تنزيل ملف إضافي ('diskcopy.dll') من Microsoft لتثبيت MS-DOS:\n"
|
||||
"- حدد \"نعم\" للاتصال بالإنترنت وتنزيله\n"
|
||||
"- اختر \"لا\" لإلغاء العملية\n"
|
||||
"\n"
|
||||
"ملاحظة: سيتم تنزيل الملف في مجلد التطبيق وسيتم إعادة استخدامه تلقائيًا إذا كان موجودًا."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "تم اكتشاف أداة تحميل التشغيل UEFI التي تم إبطالها سابقا"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"اكتشف Rufus أن ملف ISO الذي حددته يحتوي على أداة تحميل التشغيل UEFI التي تم إبطالها سابقا والتي ستنتج %s، عند تمكين Secure Boot محدث بالكامل على نظام UEFI .\n"
|
||||
"\n"
|
||||
"- إذا حصلت على صورة ISO هذه من مصدر غير حسن السمعة، فيجب أن تفكر في احتمالية احتوائها على برامج UEFI ضارة وتجنب التشغيل منها.\n"
|
||||
"- إذا حصلت على صورة ISO هذه من مصدر موثوق به، فعليك محاولة العثور على إصدار أكثر حداثة، والذي لن ينتج عنه هذا التحذير."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "شاشة \"الانتهاكات الأمنية\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "شاشة استرداد ويندوز (BSOD) مع '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "صورة VHDX مضغوطة"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "صورة VHD غير مضغوطة"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "صورة (image) لتحديث فلاشة كاملة (FFU)"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"يجب تنزيل بعض البيانات الإضافية من Microsoft لاستخدام هذه الوظيفة:\n"
|
||||
"- اختر \"نعم\" للاتصال بالإنترنت وتنزيلها\n"
|
||||
"- اختر \"لا\" لإلغاء العملية"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "تقييد Windows على الوضع \"S\" (S-Mode، غير متوافق مع تجاوز الحساب عبر الإنترنت)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "وضع الخبير"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "استخراج ملفات الأرشيف: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "استخدم Refus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
msgid "Rufus is a utility that helps format and create bootable USB flash drives, such as USB keys/pendrives, memory sticks, etc."
|
||||
msgstr "برنامج Rufus هو أداة تساعد في تنسيق وإنشاء أقراص الإقلاع عن طريق USB، مثل مفاتيح USB، بطاقات الذاكرة، وغيرها."
|
||||
msgstr "برنامج Rufus هو أداة تساعد في تنسيق وإنشاء أقراص الإقلاع USB، مثل مفاتيح USB، بطاقات الذاكرة، وغيرها."
|
||||
|
||||
#. • MSG_901
|
||||
msgid "Official site: %s"
|
||||
|
@ -1889,7 +1955,7 @@ msgstr ""
|
|||
#.
|
||||
#. Keyword for "boot" will be used for search in the Windows Store
|
||||
msgid "Boot"
|
||||
msgstr "التمهيد (Boot)"
|
||||
msgstr "الإقلاع (Boot)"
|
||||
|
||||
#. • MSG_910
|
||||
#.
|
||||
|
@ -1899,19 +1965,19 @@ msgstr "تهيئة USB وبطاقة الفلاش ومحركات الأقراص
|
|||
|
||||
#. • MSG_911
|
||||
msgid "Create FreeDOS bootable USB drives"
|
||||
msgstr "إنشاء محركات أقراص USB قابلة للتشغيل من FreeDOS"
|
||||
msgstr "إنشاء محركات أقراص USB قابلة للإقلاع من FreeDOS"
|
||||
|
||||
#. • MSG_912
|
||||
msgid "Create bootable drives from bootable ISOs (Windows, Linux, etc.)"
|
||||
msgstr "إنشاء محركات أقراص قابلة للتمهيد من ملفات ISO القابلة للتمهيد (Windows و Linux وما إلى ذلك)"
|
||||
msgstr "إنشاء محركات أقراص قابلة للإقلاع من ملفات ISO القابلة للإقلاع (Windows و Linux وما إلى ذلك)"
|
||||
|
||||
#. • MSG_913
|
||||
msgid "Create bootable drives from bootable disk images, including compressed ones"
|
||||
msgstr "إنشاء محركات أقراص قابلة للتمهيد من صور الأقراص القابلة للتمهيد ، بما في ذلك الأقراص المضغوطة"
|
||||
msgstr "إنشاء محركات أقراص قابلة للإقلاع من صور الأقراص القابلة للإقلاع ، بما في ذلك الأقراص المضغوطة"
|
||||
|
||||
#. • MSG_914
|
||||
msgid "Create BIOS or UEFI bootable drives, including UEFI bootable NTFS"
|
||||
msgstr "إنشاء BIOS أو محركات أقراص UEFI قابلة للتمهيد ، بما في ذلك NTFS القابل للتشغيل من UEFI"
|
||||
msgstr "إنشاء BIOS أو محركات أقراص UEFI قابلة للإقلاع ، بما في ذلك UEFI NTFS القابل للتشغيل"
|
||||
|
||||
#. • MSG_915
|
||||
msgid "Create 'Windows To Go' drives"
|
||||
|
@ -1919,7 +1985,7 @@ msgstr "إنشاء محركات أقراص \"Windows To Go\""
|
|||
|
||||
#. • MSG_916
|
||||
msgid "Create Windows 11 installation drives for PCs that don't have TPM or Secure Boot"
|
||||
msgstr "قم بإنشاء محركات تثبيت ويندوز 11 لأجهزة الكمبيوتر التي لا تحتوي على TPM أو التمهيد الآمن"
|
||||
msgstr "قم بإنشاء محركات تثبيت ويندوز 11 لأجهزة الكمبيوتر التي لا تحتوي على TPM أو الإقلاع الآمن (Secure Boot)"
|
||||
|
||||
#. • MSG_917
|
||||
msgid "Create persistent Linux partitions"
|
||||
|
@ -1931,7 +1997,7 @@ msgstr "إنشاء صور VHD / DD لمحرك الأقراص المحدد"
|
|||
|
||||
#. • MSG_919
|
||||
msgid "Compute MD5, SHA-1, SHA-256 and SHA-512 checksums of the selected image"
|
||||
msgstr "حساب المجموع الاختباري MD5 و SHA-1 و SHA-256 و SHA-512 للصورة المحددة"
|
||||
msgstr "حساب المجاميع الإختبارية MD5 و SHA-1 و SHA-256 و SHA-512 للصورة المحددة"
|
||||
|
||||
#. • MSG_920
|
||||
msgid "Perform bad blocks checks, including detection of \"fake\" flash drives"
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-16 20:14+0100\n"
|
||||
"PO-Revision-Date: 2023-02-17 12:30+0000\n"
|
||||
"POT-Creation-Date: 2024-04-25 20:58+0200\n"
|
||||
"PO-Revision-Date: 2024-04-25 21:23+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: cs_CZ\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Czech (Čeština)\n"
|
||||
"X-Rufus-LCID: 0x0405\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Seznam USB disků"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Přidat opravu pro starší BIOSy (extra partition, align, etc.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Použijte Rufus MBR s ID BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Povolit ověřování médií UEFI za běhu"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -105,7 +103,7 @@ msgstr "Zavřít"
|
|||
|
||||
#. • IDD_DIALOG → IDC_START
|
||||
msgid "Start"
|
||||
msgstr ""
|
||||
msgstr "Spustit"
|
||||
|
||||
#. • IDD_ABOUTBOX → IDD_ABOUTBOX
|
||||
msgid "About Rufus"
|
||||
|
@ -397,7 +395,7 @@ msgstr "Zařízení USB (Obecné)"
|
|||
|
||||
#. • MSG_046
|
||||
msgid "%s (Disk %d) [%s]"
|
||||
msgstr ""
|
||||
msgstr "%s (Disk %d) [%s]"
|
||||
|
||||
#. • MSG_047
|
||||
#.
|
||||
|
@ -770,7 +768,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Tento obraz používá Syslinux %s%s, tato aplikace však obsahuje pouze instalační soubory pro Syslinux %s%s.\n"
|
||||
"\n"
|
||||
"Jelikož nové verze Syslinux nejsou vzájemně kompatibilní a není možné v programu Rufus zahrnout všechny verze, je nutné z Internetu stáhnout dodatečné dva soubory (ldlinux.sys a ldlinux.bss):\n"
|
||||
"Jelikož nové verze Syslinux nejsou vzájemně kompatibilní a není možné v programu Rufus zahrnout všechny verze, je nutné z Internetu stáhnout dodatečné dva soubory (ldlinux.sys a ldlinux.bss):\n"
|
||||
"- Zvolte 'Ano' pro stažení souborů z Internetu\n"
|
||||
"- Zvolte 'Ne' pro zrušení operace\n"
|
||||
"\n"
|
||||
|
@ -1047,16 +1045,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Povolíte v názvu disku zobrazení mezinárodních znaků a vytvoření ikony zařízení (vytvořením souboru autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instalovat MBR, který umožní výběr při zavádění systému a zamaskování BIOS ID disku USB"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Pokusit se o zamaskování boot USB jednotky (většinou 0x80) jako jiného disku.\n"
|
||||
"Obvykle nutné pouze pokud chcete instalovat Windows XP a máte více jak jeden disk."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Nainstalujte zavaděč UEFI, který provede ověření souboru MD5Sum na médiu"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1410,7 +1400,7 @@ msgid ""
|
|||
"\n"
|
||||
"The download will be deleted. Please check the log for more details."
|
||||
msgstr ""
|
||||
"Podpis stažené aktualizace nelze ověřit. To může znamenat, že systém je nesprávně nakonfigurován pro ověření podpisu nebo označil stažený soubor jako škodlivý.\n"
|
||||
"Podpis stažené aktualizace nelze ověřit. To může znamenat, že systém je nesprávně nakonfigurován pro ověření podpisu nebo označil stažený soubor jako škodlivý.\n"
|
||||
"\n"
|
||||
"Stahování bude smazáno. Zkontrolujte podrobnosti v protokolu."
|
||||
|
||||
|
@ -1857,6 +1847,82 @@ msgstr "Zakázání automatického šifrování zařízení nástrojem BitLocker
|
|||
msgid "Persistent log"
|
||||
msgstr "Trvalý protokol"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Pro instalaci systému MS-DOS je nutné stáhnout další soubor ('diskcopy.dll') od společnosti Microsoft:\n"
|
||||
"- Vyberte 'Ano' pro připojení k internetu a stažení\n"
|
||||
"- Výběrem možnosti \"Ne\" operaci zrušíte\n"
|
||||
"\n"
|
||||
"Poznámka: Soubor bude stažen do adresáře aplikace a bude automaticky znovu použit, pokud je přítomen."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Byl zjištěn odvolaný zavaděč UEFI"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus zjistil, že vámi vybraný ISO obsahuje zavaděč UEFI, který byl odvolán a který vytvoří %s, když je v plně aktuálním systému UEFI povoleno Secure Boot.\n"
|
||||
"\n"
|
||||
"- Pokud jste tento obraz ISO získali z nerenomovaného zdroje, měli byste zvážit možnost, že by mohl obsahovat malware UEFI a vyhnout se bootování z něj.\n"
|
||||
"- Pokud jste jej získali z důvěryhodného zdroje, měli byste se pokusit najít aktuálnější verzi, která toto varování nevyvolá."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "obrazovka \"Porušení zabezpečení\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "a Obrazovka zotavení systému Windows (BSOD) s '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimovaný obraz VHDX"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Nekomprimovaný obraz VHD"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Úplná aktualizace Flash Image"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"K použití této funkce je třeba stáhnout některá další data od společnosti Microsoft:\n"
|
||||
"- Vyberte 'Ano' pro připojení k internetu a stažení\n"
|
||||
"- Výběrem možnosti \"Ne\" operaci zrušíte"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Omezit Windows na S-Mode (NEKOMPATIBILNÍ s online vynecháním účtu)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Expertní režim"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Rozbalení archivních souborů: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Použijte Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-04-05 13.03+0200\n"
|
||||
"PO-Revision-Date: 2023-04-25 13:46+0100\n"
|
||||
"POT-Creation-Date: 2024-04-25 13:41-0700\n"
|
||||
"PO-Revision-Date: 2024-04-25 14:34-0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: da_DK\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Danish (Dansk)\n"
|
||||
"X-Rufus-LCID: 0x0406\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Vis USB-harddiske"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Tilføj rettelser for ældre BIOS'er"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Brug Rufus MBR med BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Slå runtime UEFI medie validering til"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1044,16 +1042,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Vælg denne mulighed for at tillade visning af internationale etiketter og skabe et enheds-ikon (opretter en autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Installer en MBR, der tillader boot valg og kan maskere et BIOS USB-drev ID"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Forsøg at maskere det først fundne USB boot-drev (normalt 0x80) som en anden disk.\n"
|
||||
"Dette burde kun være nødvendigt hvis du installerer Windows XP og ejer mere end én disk."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Installer en UEFI bootloader, der vil udføre en MD5Sum fil validering af mediet"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1856,6 +1846,82 @@ msgstr "Deaktiver Bitlockers automatiske apparat kryptering"
|
|||
msgid "Persistent log"
|
||||
msgstr "Vedvarende log"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"En ekstra fil ('diskcopy.dll') skal hentes fra Microsoft for at installere MS-DOS:\n"
|
||||
"- Vælg 'Ja' for at tilslutte til internettet og hente den\n"
|
||||
"- Vælg 'Nej' for at afbryde operationen\n"
|
||||
"\n"
|
||||
"Note: Filen vil blive hentet i programmets mappe og vil blive genbrugt automatisk hvis tilstede."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Tilbagekaldt UEFI Bootloader opdaget"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus har opdaget at ISO filen du har valgt indeholder en UEFI bootloader der er blevet tilbagekaldt og vil producere %s, når Secure Boot er slået til på et fuldt opdateret UEFI system.\n"
|
||||
"\n"
|
||||
"- Hvis du har hentet dette ISO billed fra en upålidelig kilde, bør du overveje muligheden for at den muligvis indeholder UEFI malware og undgå at boote fra den.\n"
|
||||
"- Hvis du har hentet den fra en pålidelig kilde, bør du kigge efter en nyere version, som ikke vil producere denne advarsel."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "en \"Sikkerhedsbrud\" skærm"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "en Windows Gendannelsesskærm (BSOD) med '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimeret VHDX Afbildning"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Ukomprimeret VHD Afbildning"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update Afbildning"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Noget ekstra data skal hentes fra Microsoft for at udnytte denne funktionalitet:\n"
|
||||
"- Vælg 'Ja' for at tilslutte til internettet og hente det\n"
|
||||
"- Vælg 'Nej' for at afbryde operationen"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Begræns Windows til S-Mode (Inkompatibel med Online bruger bypass)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Ekspert Tilstand"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Udpakker arkiv filer: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Brug Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-18 16:30+0100\n"
|
||||
"PO-Revision-Date: 2023-04-05 12:34+0200\n"
|
||||
"POT-Creation-Date: 2024-04-26 11:11+0200\n"
|
||||
"PO-Revision-Date: 2024-04-26 11:48+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: de_DE\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: German (Deutsch)\n"
|
||||
"X-Rufus-LCID: 0x0407, 0x0807, 0x0c07, 0x1007, 0x1407\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB-Festplatten anzeigen"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Fix für ältere BIOSe verwenden (zusätzliche Partition usw.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Rufus-MBR mit BIOS-ID benutzen"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "UEFI-Medienvalidierung zur Laufzeit aktivieren"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1044,16 +1042,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Wählen Sie diese Option, um die Anzeige internationaler Bezeichnungen zu ermöglichen und ein Gerätesymbol zu erzeugen (autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Erzeugt einen MBR, der ein Bootmenü erzeugt und die ID des BIOS-USB-Laufwerks maskieren kann"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Das erste startfähige USB-Laufwerk als andere Festplatte (normalerweise 0x80) maskieren.\n"
|
||||
"Das sollte nur notwendig sein, wenn Sie Windows XP installieren und mehr als eine Festplatte haben."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Ein UEFI Startprogramm installieren, das eine MD5Sum Dateiüberprüfung auf dem Datenträger durchführt"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1840,7 +1830,7 @@ msgstr "Verhindern, dass Windows To Go auf interne Laufwerke zugreifen kann"
|
|||
|
||||
#. • MSG_333
|
||||
msgid "Create a local account with username:"
|
||||
msgstr "Ein lokales Benutzerkonto erstellen: "
|
||||
msgstr "Ein lokales Benutzerkonto erstellen:"
|
||||
|
||||
#. • MSG_334
|
||||
msgid "Set regional options to the same values as this user's"
|
||||
|
@ -1854,6 +1844,82 @@ msgstr "Deaktivieren der automatischen BitLocker-Laufwerksverschlüsselung"
|
|||
msgid "Persistent log"
|
||||
msgstr "Dauerhaftes Protokoll"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Eine zusätzliche Datei ('diskcopy.dll') muss von Microsoft heruntergeladen werden um MS-DOS zu installieren:\n"
|
||||
"- 'Ja' um eine Verbindung mit dem Internet herzustellen und die Datei herunterzuladen\n"
|
||||
"- 'Nein' um den Vorgang abzubrechen\n"
|
||||
"\n"
|
||||
"Hinweis: Die Datei wird ins Programmverzeichnis heruntergeladen und bei Bedarf wiederverwendet."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Zurückgezogenes UEFI Startprogramm erkannt"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus hat erkannt, dass das gewählte ISO-Image ein UEFI-Startprogramm enthält, dass zurückgezogen wurde und das führt zu %s, wenn das UEFI-System aktuell ist und Secure Boot aktiv ist.\n"
|
||||
"\n"
|
||||
"- Wenn Sie das ISO-Image aus einer unzuverlässigen Quelle haben, sollten Sie in Betracht ziehen, dass es UEFI-Schadcode enthält und es deshalb nicht verwenden.\n"
|
||||
"- Wenn Sie es aus einer vertrauenswürdigen Quelle haben, sollten Sie versuchen eine aktuellere Version zu bekommen, die dieses problem nicht hat."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "ein Bildschirm \"Sicherheitsverletzung\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "ein Windows Wiederherstellung-Bildschirm (BSOD) mit '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimiertes VHDX Image"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Unkomprimiertes VHD Image"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update Image"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Einige weitere Daten müssen von Microsoft heruntergeladen werden, um diese Funktion zu verwenden:\n"
|
||||
"- 'Ja' um eine Verbindung mit dem Internet herzustellen und diese herunterzuladen\n"
|
||||
"- 'Nein' um den Vorgang abzubrechen"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Windows im S-Modus (nicht kompatibel mit Online Konto-Umgehung)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Experten-Modus"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Archiv-Datei extrahieren: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufus MBR verwenden"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-04 18:22+0000\n"
|
||||
"PO-Revision-Date: 2023-03-04 18:27+0000\n"
|
||||
"POT-Creation-Date: 2024-05-09 12:52+0300\n"
|
||||
"PO-Revision-Date: 2024-05-09 13:07+0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: el_GR\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Greek (Ελληνικά)\n"
|
||||
"X-Rufus-LCID: 0x0408\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Εμφάνιση συσκευων USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Προσθήκη διορθώσεων για παλαιότερα BIOS(επιπλέον διχοτόμηση, ευθυγράμμιση, κλπ.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Χρήση του Rufus MBR με BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Ενεργοποίηση επικύρωσης μέσων UEFI χρόνου εκτέλεσης"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -117,7 +115,7 @@ msgstr "Άδεια χρήσης"
|
|||
|
||||
#. • IDD_ABOUTBOX → IDOK
|
||||
msgid "OK"
|
||||
msgstr ""
|
||||
msgstr "OK"
|
||||
|
||||
#. • IDD_LICENSE → IDD_LICENSE
|
||||
msgid "Rufus License"
|
||||
|
@ -523,7 +521,7 @@ msgstr "Δεν είναι δυνατή η εγκατάσταση/τροποπο
|
|||
|
||||
#. • MSG_077
|
||||
msgid "Unable to assign a drive letter."
|
||||
msgstr "Αδυναμία αναθέτησης γράμματος στη μονάδα δίσκου."
|
||||
msgstr "Αδυναμία αναθέτησης γράμματος στη μονάδα δίσκου."
|
||||
|
||||
#. • MSG_078
|
||||
msgid "Can't mount GUID volume."
|
||||
|
@ -654,7 +652,7 @@ msgid ""
|
|||
"\n"
|
||||
"Note: The 'FIXED/REMOVABLE' attribute is a hardware property that can only be changed using custom tools from the drive manufacturer. However those tools are ALMOST NEVER provided to the public..."
|
||||
msgstr ""
|
||||
"ΣΗΜΑΝΤΙΚΟ: Προσπαθείτε να εγκαταστήσετε τα 'Windows To Go', αλλά ο επιλεγμένος δίσκος δεν διαθέτει το χαρακτηριστικό 'ΣΤΑΘΕΡΑ'. Λόγω αυτού, τα Windows πιθανότατα θα 'παγώνουν' κατά τη διάρκεια της εκκίνησης εφόσον η Microsoft δεν έχει σχεδιάσει τα 'Windows To Go' για λειτουργία με δίσκους που έχουν το χαρακτηριστικό 'ΑΦΑΙΡΟΥΜΕΝΟΣ'.\n"
|
||||
"ΣΗΜΑΝΤΙΚΟ: Προσπαθείτε να εγκαταστήσετε τα 'Windows To Go', αλλά ο επιλεγμένος δίσκος δεν διαθέτει το χαρακτηριστικό 'ΣΤΑΘΕΡΑ'. Λόγω αυτού, τα Windows πιθανότατα θα 'παγώνουν' κατά τη διάρκεια της εκκίνησης εφόσον η Microsoft δεν έχει σχεδιάσει τα 'Windows To Go' για λειτουργία με δίσκους που έχουν το χαρακτηριστικό 'ΑΦΑΙΡΟΥΜΕΝΟΣ'.\n"
|
||||
"\n"
|
||||
"Είστε σίγουροι ότι θέλετε να συνεχίσετε?\n"
|
||||
"\n"
|
||||
|
@ -766,7 +764,7 @@ msgid ""
|
|||
"\n"
|
||||
"Note: The files will be downloaded in the current application directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Αυτό το αρχείο χρησιμοποιεί το Syslinux %s%s παρόλα αυτά η εφαρμογή(Rufus) εμπεριέχει μόνο τα αρχεία εγκατάστασης του Syslinux %s%s.\n"
|
||||
"Αυτό το αρχείο χρησιμοποιεί το Syslinux %s%s παρόλα αυτά η εφαρμογή(Rufus) εμπεριέχει μόνο τα αρχεία εγκατάστασης του Syslinux %s%s.\n"
|
||||
"\n"
|
||||
" Εφόσον οι νέες εκδόσεις του Syslinux δεν είναι συμβατές μεταξύ τους, δεν είναι δυνατό για το Rufus να τις εμπεριέχει όλες. Επομένως, απαιτείται η λήψη δύο νέων αρχείων απο το διαδίκτυο ('ldlinux.sys' και 'ldlinux.bss'): \n"
|
||||
"- Επιλέξτε το 'Ναι' για να συνδεθείτε στο διαδίκτυο και να κάνετε λήψη των αρχείων\n"
|
||||
|
@ -1040,16 +1038,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Επιλέξτε αυτό το πλαίσιο για να επιτραπεί η εμφάνιση των διεθνών ετικετών και ο ορισμός ενός εικονιδίου συσκευής (δημιουργείτε ένα autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Εγκατάσταση ενός MBR που επιτρέπει την επιλογή εκκίνησης και μπορεί να υποδυθεί το ρόλο του ID του BIOS USB δίσκου"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Μετατροπή του πρώτου δίσκου USB με δυνατότητα εκκίνησης (συνήθως 0x80) ως ενός διαφορετικού δίσκου.\n"
|
||||
"Αυτό θα είναι απαραίτητο μόνο αν εγκαταστήσετε τα Windows XP και έχετε περισσότερους από ένα δίσκους."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Εγκαταστήστε UEFI bootloader, ο οποίος θα εκτελέσει την επικύρωση του αρχείου MD5Sum των μέσων"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1756,7 +1746,7 @@ msgstr "Χρησιμοποιήστε %s (στο κύριο παράθυρο τη
|
|||
|
||||
#. • MSG_312
|
||||
msgid "Extra hashes (SHA512)"
|
||||
msgstr "Επιπλέον hashes (SHA512)"
|
||||
msgstr "Επιπλέον hashes (SHA512)"
|
||||
|
||||
#. • MSG_313
|
||||
msgid "Save to VHD"
|
||||
|
@ -1780,7 +1770,7 @@ msgstr "ID δίσκου"
|
|||
|
||||
#. • MSG_318
|
||||
msgid "Default thread priority: %d"
|
||||
msgstr "Προεπιλεγμένη προτεραιότητα πυρήνα %d"
|
||||
msgstr "Προεπιλεγμένη προτεραιότητα πυρήνα %d"
|
||||
|
||||
#. • MSG_319
|
||||
msgid "Ignore Boot Marker"
|
||||
|
@ -1850,6 +1840,82 @@ msgstr "Απενεργοποιήστε την αυτόματη κρυπτογρ
|
|||
msgid "Persistent log"
|
||||
msgstr "Διατήρηση log"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Πρέπει να γίνει λήψη ενός πρόσθετου αρχείου ('diskcopy.dll') από τη Microsoft για να εγκαταστήσετε το MS-DOS:\n"
|
||||
"- Επιλέξτε 'Ναι' για να συνδεθείτε στο Internet και να το κατεβάσετε\n"
|
||||
"- Επιλέξτε 'Όχι' για να ακυρώσετε τη λειτουργία\n"
|
||||
"\n"
|
||||
"Σημείωση: Το αρχείο θα ληφθεί στον κατάλογο της εφαρμογής και θα επαναχρησιμοποιηθεί αυτόματα εάν υπάρχει."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Εντοπίστηκε ανακληθέν bootloader UEFI"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Ο Rufus εντόπισε ότι το ISO που επιλέξατε περιέχει έναν bootloader UEFI που έχει ανακληθεί και θα παράγει %s, όταν η Ασφαλής Εκκίνηση είναι ενεργοποιημένη σε ένα πλήρως ενημερωμένο σύστημα UEFI.\n"
|
||||
"\n"
|
||||
"- Εάν λάβατε αυτήν την εικόνα ISO από μη αξιόπιστη πηγή, θα πρέπει να εξετάσετε το ενδεχόμενο να περιέχει κακόβουλο λογισμικό UEFI και να αποφύγετε την εκκίνηση από αυτό.\n"
|
||||
"- Εάν το λάβατε από αξιόπιστη πηγή, θα πρέπει να προσπαθήσετε να εντοπίσετε μια πιο ενημερωμένη έκδοση, η οποία δεν θα παράγει αυτήν την προειδοποίηση."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "μια οθόνη \"Παραβίαση ασφαλείας\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "μια οθόνη αποκατάστασης των Windows (BSOD) με '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Συμπιεσμένη εικόνα VHDX"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Μη συμπιεσμένη εικόνα VHDX"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update Image"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Ορισμένα πρόσθετα δεδομένα πρέπει να ληφθούν από τη Microsoft για να χρησιμοποιήσετε αυτήν τη λειτουργία:\n"
|
||||
"- Επιλέξτε 'Ναι' για να συνδεθείτε στο Internet και να τα κατεβάσετε\n"
|
||||
"- Επιλέξτε 'Όχι' για να ακυρώσετε τη λειτουργία"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Περιορισμός των Windows σε S-Mode (ΑΣΥΜΒΑΤΟ με ηλεκτρονική παράκαμψη λογαριασμού)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Λειτουργία ειδικού"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Εξαγωγή αρχείων: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Χρησιμοποίηση του Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-15 23:07+0000\n"
|
||||
"PO-Revision-Date: 2023-03-15 23:15+0000\n"
|
||||
"POT-Creation-Date: 2024-05-09 12:54-0300\n"
|
||||
"PO-Revision-Date: 2024-05-09 12:58-0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: es_ES\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Spanish (Español)\n"
|
||||
"X-Rufus-LCID: 0x040a, 0x080a, 0x0c0a, 0x100a, 0x140a, 0x180a, 0x1c0a, 0x200a, 0x240a, 0x280a, 0x2c0a, 0x300a, 0x340a, 0x380a, 0x3c0a, 0x400a, 0x440a, 0x480a, 0x4c0a, 0x500a, 0x540a, 0x580a\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Listar los discos duros USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Agrega correcciones para BIOS viejos (partición extra, alineación, etc.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Usar MBR de Rufus con ID de BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Habilitar la validación de medios UEFI en tiempo de ejecución"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -911,7 +909,7 @@ msgid ""
|
|||
"\n"
|
||||
"Are you sure you want to continue?"
|
||||
msgstr ""
|
||||
"Debido a que has seleccionado MBR para el sistema de particiones, Rufus sólo puede crear una partición de hasta 2TB en este dispositivo, lo que dejará %s del disco no disponibles.\n"
|
||||
"Debido a que has seleccionado MBR para el sistema de particiones, Rufus sólo puede crear una partición de hasta 2TB en este dispositivo, lo que dejará %s del disco no disponibles.\n"
|
||||
"\n"
|
||||
"¿Estas seguro de que deseas continuar?"
|
||||
|
||||
|
@ -1046,16 +1044,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Seleccione esta opción para permitir que se muestren caracteres internacionales y establecer un icono para la unidad (crea un archivo autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instala un MBR que permite seleccionar el dispositivo de arranque y puede enmascarar el ID de identificación del dispositivo USB del BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Trata de enmascarar el primer dispositivo USB de arranque (normalmente 0x80) como un disco diferente.\n"
|
||||
"Sólo debiera ser necesario si instala Windows XP y tiene más de un disco duro."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Instale un gestor de arranque UEFI, que realizará la validación del archivo MD5Sum del medio"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1856,6 +1846,82 @@ msgstr "Deshabilitar el cifrado automático de dispositivos BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Registro persistente"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Se debe descargar un archivo adicional ('diskcopy.dll') de Microsoft para instalar MS-DOS:\n"
|
||||
"- Seleccione 'Sí' para conectarse a Internet y descargarlo\n"
|
||||
"- Seleccione 'No' para cancelar la operación.\n"
|
||||
"\n"
|
||||
"Nota: El archivo se descargará en el directorio de la aplicación y se reutilizará automáticamente si está presente."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Se detectó un gestor de arranque UEFI revocado"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus detectó que el ISO que seleccionó contiene un gestor de arranque UEFI que ha sido revocado y que producirá %s, cuando el arranque seguro esté habilitado en un sistema UEFI completamente actualizado.\n"
|
||||
"\n"
|
||||
"- Si obtuvo esta imagen ISO de una fuente no confiable, debe considerar la posibilidad de que contenga malware UEFI y evitar arrancar desde allí.\n"
|
||||
"- Si lo obtuvo de una fuente confiable, debe intentar localizar una versión más actualizada, que no producirá esta advertencia."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "una pantalla de \"violación de seguridad\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "una pantalla de recuperación de Windows (BSOD) con '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Imagen VHDX comprimida"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Imagen VHD sin comprimir"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Imagen de actualización completa de Flash"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Se deben descargar algunos datos adicionales de Microsoft para utilizar esta funcionalidad:\n"
|
||||
"- Seleccione 'Sí' para conectarse a Internet y descargarlo\n"
|
||||
"- Seleccione 'No' para cancelar la operación."
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Restringir Windows al Modo S (INCOMPATIBLE con la omisión de cuenta en línea)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Modo experto"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Extrayendo archivos comprimidos: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Utilice Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-13 17:25+0000\n"
|
||||
"PO-Revision-Date: 2023-03-13 17:25+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"POT-Creation-Date: 2024-04-29 19:24+0300\n"
|
||||
"PO-Revision-Date: 2024-04-29 20:25+0330\n"
|
||||
"Last-Translator: MasterVito <mv@mvaop.ir>\n"
|
||||
"Language-Team: \n"
|
||||
"Language: fa_IR\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Persian (پارسی)\n"
|
||||
"X-Rufus-LCID: 0x0429\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "نمایش هارد دیسکهای اکسترنال در فهرست
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "بهسازی و اصلاح تنظیمات برای شناسایی بهتر درایو در BIOSهای قدیمی"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "استفاده از Rufus MBR با BIOS ID برابر با"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "فغال سازی زمان اجرا UEFI media تایید"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -349,7 +347,7 @@ msgstr "BIOS (یا UEFI-CSM)"
|
|||
|
||||
#. • MSG_032
|
||||
msgid "UEFI (non CSM)"
|
||||
msgstr ""
|
||||
msgstr "UEFI (بجز CSM)"
|
||||
|
||||
#. • MSG_033
|
||||
msgid "BIOS or UEFI"
|
||||
|
@ -406,7 +404,7 @@ msgstr ""
|
|||
|
||||
#. • MSG_046
|
||||
msgid "%s (Disk %d) [%s]"
|
||||
msgstr ""
|
||||
msgstr "%s (هارد %d) [%s]"
|
||||
|
||||
#. • MSG_047
|
||||
#.
|
||||
|
@ -1054,16 +1052,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "اگر نامی که برای درایو موردنظر انتخاب کردهاید طولانی و یا دارای حروف غیر انگلیسی است و یا اگر میخواهید درایو موردنظر آیکون داشته باشد؛ این گزینه را انتخاب کنید."
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "نصبِ MBR سفارشیِ نرمافزارِ Rufus که با استفاده از آن میتوان نحوه راهاندازی را انتخاب و شناسه (ID) درایو USB بایوس را جعل کرد"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"با انتخاب یکی از این گزینهها میتوانید بهصورت ساختگی و جعلی، اولین درایو USB با قابلیت راهاندازی (معمولاً 0x80) را بهعنوان هارددیسک جداگانه معرفی کنید.\n"
|
||||
"انتخاب این گزینه فقط زمانی ضروری است که بیش از یک هارددیسک دارید و میخواهید ویندوز XP نصب کنید."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "نصب یک UEFI bootloader این کار باعث اعتبارسنجی نوع md5sUM برای رسانه میشود"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1252,7 +1242,7 @@ msgstr "فایل %s موجود نیست"
|
|||
#. The name proposed by Windows' Computer Management → Disk Management when you try to format
|
||||
#. a drive with an empty label. For an example, see https://rufus.ie/pics/default_name.png.
|
||||
msgid "New Volume"
|
||||
msgstr ""
|
||||
msgstr "بخش جدید"
|
||||
|
||||
#. • MSG_208
|
||||
#.
|
||||
|
@ -1856,7 +1846,81 @@ msgstr "رمزگذاری خودکار دستگاه BitLocker را غیرفعال
|
|||
|
||||
#. • MSG_336
|
||||
msgid "Persistent log"
|
||||
msgstr "لیست مداوم"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"فایل دیگری ('diskcopy.dll:) نیاز است دانلود شود از مایکروسافت برای نصب MS-DOS:\n"
|
||||
"- انتخاب :'بله' برای وصل شدن به اینترنت و دانلود آن\n"
|
||||
"- انتخاب 'نه' برای کنسل کردن این کار\n"
|
||||
"\n"
|
||||
"نکته: فایل در مکان نرم افزار دانلود میشود و دوباره استفاده میشود درصورت انجام مجدد این کار."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "بوت لودر UEFI کنسل شده شناسایی شد"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus متوجه شده که فایل ISO که انتخاب کردید دارای UEFI بوت لودری است که لفو شده و باعث %s, درصورتی که بوت امن فعال شده بر روی سیستم کاملا اپدیت شده UEFI\v\v- اگه شما این فایل ISO رو از یک جای غیر قابل اعتماد دریافت کردید ممکن است این فایل دارای ویروس UEFI باشد و نباید آنرا بوت کرد \n"
|
||||
"\v- اگه شما شما از جای مورد اغفماد دریافت کردیدش, میتونید تلاش کنید برای پیدا کردن نسخه جدیدتر, با اینکار دیگر این هشتار را دریافت نمیکنید."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "یک صفحه \"مشکلی امنیتی\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "یک صفخه ریکاوری ویندوز (BSOD) با '%S\""
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "فایل VHDX فشرده شده"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "فایل VHD فشرده نشده"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"دیتا های دیگری نیاز به دانلود از مایکروسافت برای انجام دادن این کار نیاز است:\n"
|
||||
"- انتخاب 'بله' برای وصل شدن به اینترنت و دانلود آنها\n"
|
||||
"- انتخاب 'نه' برای لغو کردن این کار"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "مجبور کردن ویندوز به S-Mode ( دارای مشکلات با حذفز استفاده اکانت آنلاین )"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "بخش حرفه ای"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "استراج کردن فایل های آرشیو: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "استفاده از Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-03 15:43+0200\n"
|
||||
"PO-Revision-Date: 2023-03-03 16:58+0200\n"
|
||||
"POT-Creation-Date: 2024-05-14 12:47+0300\n"
|
||||
"PO-Revision-Date: 2024-05-14 14:07+0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: fi_FI\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Finnish (Suomi)\n"
|
||||
"X-Rufus-LCID: 0x040B\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Näytä USB-kiintolevyt"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Lisää korjauksia vanhoja BIOS-versioita varten"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Käytä Rufus-MBR:ää, BIOS ID:llä"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Ota käyttöön ajonaikainen UEFI-tietovälineen tarkistus"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -579,7 +577,7 @@ msgstr ""
|
|||
"- Valitse 'Ei' jättääksesi ISO-levykuvan alkuperäiseen muotoonsa\n"
|
||||
"Jos et ole varma, sinun kannattaa valita 'Kyllä'.\n"
|
||||
"\n"
|
||||
"Huomio: Uusi tiedosto ladataan nykyiseen sijaintiin ja kun '%s' löytyy sijainnista, sitä käytetään automaattisesti."
|
||||
"Huomio: Uusi tiedosto ladataan nykyiseen sijaintiin ja kun '%s' löytyy sijainnista, sitä käytetään automaattisesti."
|
||||
|
||||
#. • MSG_085
|
||||
msgid "Downloading %s"
|
||||
|
@ -768,11 +766,11 @@ msgid ""
|
|||
msgstr ""
|
||||
"Tämä kuva käyttää Syslinuxia %s%s, mutta tämä sovellus sisältää asennustiedostot vain Syslinuxille %s%s.\n"
|
||||
"\n"
|
||||
"Koska Syslinuxin uudet versiot eivät ole keskenään yhteensopivia, eikä Rufus voisi sisältää niitä kaikkia, on kaksi lisätiedostoa ladattava internetistä ('ldlinux.sys' ja 'ldlinux.bss'):\n"
|
||||
"Koska Syslinuxin uudet versiot eivät ole keskenään yhteensopivia, eikä Rufus voisi sisältää niitä kaikkia, on kaksi lisätiedostoa ladattava internetistä ('ldlinux.sys' ja 'ldlinux.bss'):\n"
|
||||
"- Valitse 'Kyllä' yhdistääksesi internetiin ja ladataksesi nämä tiedostot\n"
|
||||
"- Valitse 'Ei' peruaksesi toiminnon\n"
|
||||
"\n"
|
||||
"Huomio: Tiedosto ladataan nykyiseen sovelluskansioon ja niitä käytetäänautomaattisesti uudelleen niiden löytyessä."
|
||||
"Huomio: Tiedostot ladataan nykyiseen sovelluskansioon ja niitä uudelleenkäytetään automaattisesti, jos se ovat jo olemassa."
|
||||
|
||||
#. • MSG_115
|
||||
msgid "Download required"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Valitse valintaruutu salliaksesi kansainvälisten merkkien näyttämisen ja asettaaksesi laitekuvakkeen (luo autorun.inf-tiedoston)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Asenna MBR, joka sallii käynnistysvalinnan ja voi naamioida USB-aseman BIOS ID:n"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Yritä naamioida ensimmäinen boottaava USB-asema (yleensä 0x80) eri asemaksi.\n"
|
||||
"Tämän tulisi olla tarpeellista vain asennettaessa Windows XP:tä, kun levyjä on useampia."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Asenna UEFI-käynnistyslataaja, joka tulee suorittamaan tietovälineelle MD5Sum-tiedostotarkistuksen"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1733,7 +1723,7 @@ msgstr "Pikanollataan asemaa: %s"
|
|||
|
||||
#. • MSG_307
|
||||
msgid "this may take a while"
|
||||
msgstr "Tämä voi viedä hetken"
|
||||
msgstr "tämä voi viedä hetken"
|
||||
|
||||
#. • MSG_308
|
||||
msgid "VHD detection"
|
||||
|
@ -1843,7 +1833,7 @@ msgstr "Luo paikallinen käyttäjätili käyttäjänimellä:"
|
|||
|
||||
#. • MSG_334
|
||||
msgid "Set regional options to the same values as this user's"
|
||||
msgstr "Aseta alueelliset vaihtoehdot samoihin asetuksiin kuin tällä käyttäjällä"
|
||||
msgstr "Aseta alueelliset vaihtoehdot samoihin asetuksiin kuin nykyisellä käyttäjällä"
|
||||
|
||||
#. • MSG_335
|
||||
msgid "Disable BitLocker automatic device encryption"
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Poista käytöstä automaattinen laitteen BitLocker-salaus"
|
|||
msgid "Persistent log"
|
||||
msgstr "Pysyvä lokitiedosto"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Uusi tiedosto ('diskcopy.dll') on ladattava Microsoftilta MS-DOSin asennusta varten:\n"
|
||||
"- Valitse 'Kyllä' yhdistääksesi internetiin ja ladataksesi sen\n"
|
||||
"- Valitse 'Ei' peruuttaaksesi toiminnon\n"
|
||||
"\n"
|
||||
"Huomio: Tiedosto ladataan sovelluksen kansioon ja sitä uudelleenkäytetään automaattisesti, jos se on jo olemassa."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Mitätöity UEFI-käynnistyslataaja havaittu"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus havaitsi, että käyttämäsi ISO-levykuva sisältää UEFI-käynnistyslataajan, joka on mitätöity ja tulee aiheuttamaan %s Secure Bootin ollessa päällä ajantasaisessa UEFI-kokoonpanossa.\n"
|
||||
"\n"
|
||||
"- Jos olet hankkinut tämän ISO-levykuvan ei-luotettavasta lähteestä, huomioi UEFI-haittaohjelmien mahdollisuus ja vältä siltä käynnistämistä.\n"
|
||||
"- Jos olet hankkinut sen luotettavasta lähteestä, sinun tulisi yrittää etsiä uudempi versio, joka ei aiheuta tätä varoitusta."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "\"Turvallisuusrikkomus\"-näkymän"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "Windowsin palautusnäkymän (BSOD) viestillä '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Pakattu VHDX-levykuva"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Pakkaamaton VHD-levykuva"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update -levykuva"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Tämän toiminnon käyttäminen vaatii lisätiedostojen lataamista Microsoftilta:\n"
|
||||
"- Valitse 'Kyllä' yhdistääksesi internetiin ja ladataksesi ne\n"
|
||||
"- Valitse 'Ei' peruuttaaksesi toiminnon"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Rajoita Windows S Mode-tilaan (EI YHTEENSOPIVA verkkotilin ohituksen kanssa)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Asiantuntijatila"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Puretaan tiedostoarkistoja: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufusin MBR:n käyttö"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -2,8 +2,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-08 17:07+0000\n"
|
||||
"PO-Revision-Date: 2023-02-15 21:54+0000\n"
|
||||
"POT-Creation-Date: 2024-04-25 12:25+0100\n"
|
||||
"PO-Revision-Date: 2024-04-25 12:46+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: fr_FR\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: French (Français)\n"
|
||||
"X-Rufus-LCID: 0x040c, 0x080c, 0x0c0c, 0x100c, 0x140c, 0x180c, 0x1c0c, 0x200c, 0x240c, 0x280c, 0x2c0c, 0x300c, 0x340c, 0x380c, 0xe40c\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Lister les disques durs USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Ajouter les options de compatibilité pour vieux BIOS"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Utiliser le MBR Rufus avec ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Activer la validation des média sous UEFI"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1041,16 +1039,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Cochez cette case pour permettre l’affichage des caractères étendus/internationaux et ajouter une icône (ceci crée un fichier autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Installe un MBR permettant la sélection du périphérique de démarrage. Peut aussi camoufler l’ID de disque pour le BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Camoufle le premier disque USB démarrable (généralement 0x80) sous une ID différente.\n"
|
||||
"Changez cette option si vous installez Windows XP avec plus d’un disque dur."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Installe un fichier de démarrage UEFI, qui effectue une validation MD5Sum du média"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1090,7 +1080,7 @@ msgid "Version %d.%d (Build %d)"
|
|||
msgstr ""
|
||||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgid "mailto:support@akeo.ie"
|
||||
msgstr "Traduction Française : Pete Batard <mailto:pete@akeo.ie>"
|
||||
|
||||
#. • MSG_177
|
||||
|
@ -1822,7 +1812,7 @@ msgstr "Supprimer la nécessité d'avoir 4Go+ de RAM, Secure Boot et TPM 2.0"
|
|||
|
||||
#. • MSG_330
|
||||
msgid "Remove requirement for an online Microsoft account"
|
||||
msgstr "Supprimer la nécessité d'utiliser un compte Microsoft en ligne"
|
||||
msgstr "Supprimer la nécessité d'utiliser un compte utilisateur Microsoft en ligne"
|
||||
|
||||
#. • MSG_331
|
||||
msgid "Disable data collection (Skip privacy questions)"
|
||||
|
@ -1848,6 +1838,82 @@ msgstr "Désactiver l'encryption automatique BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Log persistent"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Un fichier supplémentaire ('diskcopy.dll') doit être téléchargé depuis Microsoft pour installer MS-DOS :\n"
|
||||
"- Sélectionnez 'Oui' pour vous connecter à Internet et le télécharger\n"
|
||||
"- Sélectionnez 'Non' pour annuler l’opération\n"
|
||||
"\n"
|
||||
"Note : Ce fichier sera téléchargé dans le répertoire de l'application et réutilisé automatiquement s'il est présent."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Bootloader UEFI révoqué détecté"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus a détecté que l’ISO que vous avez sélectionnée contient un bootloader UEFI révoqué, qui devrait produire %s sur un système UEFI à jour, lorsque 'Secure Boot' est activé.\n"
|
||||
"\n"
|
||||
"- Si vous avez obtenu cette image ISO à partir d’une source douteuse, vous devriez envisager la possibilité qu’elle puisse contenir un logiciel malveillant, et éviter de démarrer à partir de celle-ci.\n"
|
||||
"- Si vous l’avez obtenu à partir d’une source fiable, vous devriez essayer de trouver une version plus récente, où cette notification ne se produit pas."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "un écran « Violation de sécurité »"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "un écran de récupération Windows (BSOD) avec '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Image VHDX compressée"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Image VHD non compressée"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Image 'Full Flash Update'"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Des données complémentaires doivent être téléchargées à partir du site Microsoft avant d'utiliser cette fonctionnalité :\n"
|
||||
"- Sélectionnez 'Oui' pour vous connecter à Internet et le télécharger ces données\n"
|
||||
"- Sélectionnez 'Non' pour annuler l’opération"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Restreint Windows au mode \"S\" (INCOMPATIBLE avec l'option de désactivation d'un compte utilisateur Microsoft en ligne)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Mode expert"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Extraction d'archive : %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Utilisation du MBR Rufus"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-16 22:57+0200\n"
|
||||
"PO-Revision-Date: 2023-02-24 13:13+0000\n"
|
||||
"POT-Creation-Date: 2024-04-25 21:07+0300\n"
|
||||
"PO-Revision-Date: 2024-04-26 01:31+0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: he_IL\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Hebrew (עברית)\n"
|
||||
"X-Rufus-LCID: 0x040d\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "הצגת רשימה של כונני USB קשיחים"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "הוספת תיקונים ל־BIOS־ים ישנים (מחיצה נוספת, יישור...)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "שימוש ב־MBR של Rufus עם מזהה BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "הפעלת אימות מדיה של UEFI בזמן ריצה"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -481,7 +479,7 @@ msgstr "שגיאת התקנה"
|
|||
|
||||
#. • MSG_067
|
||||
msgid "Could not open media. It may be in use by another process. Please re-plug the media and try again."
|
||||
msgstr "לא ניתן לפתוח את המדיה. יתכן שהיא בשימוש על־ידי תהליך אחר. נא לחבר מחדש את המדיה ולנסות שוב."
|
||||
msgstr "לא ניתן לפתוח את המדיה. ייתכן שהיא בשימוש על־ידי תהליך אחר. נא לחבר מחדש את המדיה ולנסות שוב."
|
||||
|
||||
#. • MSG_068
|
||||
msgid "Could not partition drive."
|
||||
|
@ -572,7 +570,7 @@ msgid ""
|
|||
"Note: The new file will be downloaded in the current directory and once a '%s' exists there, it will be reused automatically."
|
||||
msgstr ""
|
||||
"נראה שקובץ ה־ISO הזה משתמש בגרסה מיושנת של '%s'.\n"
|
||||
"לפיכך, יתכן שתפריטי האתחול לא יוצגו כראוי.\n"
|
||||
"לפיכך, ייתכן שתפריטי האתחול לא יוצגו כראוי.\n"
|
||||
"\n"
|
||||
"Rufus יכול להוריד גרסה חדשה יותר כדי לתקן בעיה זו:\n"
|
||||
"- יש לבחור 'כן' כדי להתחבר לאינטרנט ולהוריד את הקובץ\n"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "יש לסמן תיבה זו כדי לאפשר הצגה של תוויות שם בינלאומיות וכדי להגדיר סמל להתקן (יוצר קובץ autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "מתקין MBR שמאפשר בחירת אתחול ויכול לגרום למזהה כונן ה־USB ב־BIOS להזדהות כמזהה אחר"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"מנסה לגרום לכונן ה־USB בר־האתחול הראשון (בדרך כלל 0x80) להזדהות כדיסק אחר.\n"
|
||||
"זה אמור להיות נחוץ רק אם ברצונך להתקין Windows XP ויש לך יותר מדיסק אחד."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "מתקין מנהל אתחול UEFI שיבצע אימות קבצים שעל המדיה בשיטת MD5Sum"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1127,7 +1117,7 @@ msgstr "כתובת ה־IP שלך"
|
|||
|
||||
#. • MSG_184
|
||||
msgid "For the purpose of generating private usage statistics, we may keep the information collected, \\b for at most a year\\b0 . However, we will not willingly disclose any of this individual data to third parties."
|
||||
msgstr "לצורך יצירת סטטיסטיקת שימוש פרטית, יתכן שנשמור את המידע שייאסף \\b לשנה לכל היותר\\b0 . עם זאת, אנחנו לא נמסור מרצוננו החופשי את הנתונים האלה לשום גורם צד שלישי."
|
||||
msgstr "לצורך יצירת סטטיסטיקת שימוש פרטית, ייתכן שנשמור את המידע שייאסף \\b לשנה לכל היותר\\b0 . עם זאת, אנחנו לא נמסור מרצוננו החופשי את הנתונים האלה לשום גורם צד שלישי."
|
||||
|
||||
#. • MSG_185
|
||||
msgid "Update Process:"
|
||||
|
@ -1665,7 +1655,7 @@ msgid ""
|
|||
"The last version of Rufus compatible with this platform is v%d.%d."
|
||||
msgstr ""
|
||||
"גרסה זו של Windows אינה נתמכת יותר על־ידי Rufus.\n"
|
||||
"הגרסה האחרונה של Rufus הנתמכת בפלטפורמה זו היא %d.%d."
|
||||
"הגרסה האחרונה של Rufus הנתמכת בפלטפורמה זו היא v%d.%d."
|
||||
|
||||
#. • MSG_295
|
||||
msgid "Warning: Unofficial version"
|
||||
|
@ -1862,6 +1852,82 @@ msgstr "השבתת הצפנת מכשיר אוטומטית של BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "יומן קבוע"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"יש להוריד קובץ נוסף ('diskcopy.dll') מ־Microsoft על מנת להתקין MS-DOS:\n"
|
||||
"- יש לבחור 'כן' כדי להתחבר לאינטרנט ולהוריד אותו\n"
|
||||
"- יש לבחור 'לא' כדי לבטל את הפעולה\n"
|
||||
"\n"
|
||||
"הערה: הקובץ יירד לספרייה בה ממוקם היישום וכל עוד הקובץ יהיה שם, Rufus ישתמש בו באופן אוטומטי במידת הצורך."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "אותר מנהל אתחול UEFI שנאסר לשימוש"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus איתר שקובץ ה־ISO שבחרת מכיל מנהל אתחול UEFI שנאסר לשימוש ושיציג %s, כאשר Secure Boot מופעל על מערכת UEFI מעודכנת לחלוטין.\n"
|
||||
"\n"
|
||||
"- אם השגת את קובץ תמונת ISO זה ממקור מפוקפק, כדאי לשקול את האפשרות שייתכן שהוא מכיל נוזקת UEFI, ולהימנע מלאתחל ממנו.\n"
|
||||
"- אם השגת אותה ממקור מהימן, כדאי לנסות לאתר גרסה יותר עדכנית, שלא תציג אזהרה זו."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "מסך \"הפרת אבטחה\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "מסך שחזור של Windows (BSOD) עם '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "קובץ תמונה VHDX מכווץ"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "קובץ תמונה VHD שאינו מכווץ"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "קובץ תמונה של Full Flash Update"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"יש להוריד נתונים נוספים מ־Microsoft על מנת להשתמש באפשרות זו:\n"
|
||||
"- יש לבחור 'כן' כדי להתחבר לאינטרנט ולהוריד אותם\n"
|
||||
"- יש לבחור 'לא' כדי לבטל את הפעולה"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "הגבלת ההתקנה של Windows למצב S-Mode (אינו נתמך עם האפשרות לעקיפת חשבון מקוון)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "מצב מומחה"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "מחלץ קובצי ארכיון: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "שימוש ב־MBR של Rufus"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-04-25 13:11+0100\n"
|
||||
"PO-Revision-Date: 2023-04-25 13:14+0100\n"
|
||||
"POT-Creation-Date: 2024-05-09 18:57+0200\n"
|
||||
"PO-Revision-Date: 2024-05-09 19:30+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: hr_HR\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Croatian (Hrvatski)\n"
|
||||
"X-Rufus-LCID: 0x041a, 0x081a, 0x101a\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Prikaži USB čvrste diskove"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Dodavanje zakrpa za stari BIOS (dodatne particije, poravnanje, itd.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Koristi Rufus MBR za BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Omogućite provjeru valjanosti UEFI medija"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1041,16 +1039,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Potvrdite ovo da dozvolite prikaz internacionalnih oznaka i napravite ikonu (stvara autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instaliraj MBR koji omogućuje boot odabir i može pretvoriti BIOS USB drive ID"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Maskiraj prvi butabilni USB pogon (uobičajeno 0x80) kao drugačiji disk.\n"
|
||||
"Ovo je potrebno ako instalirate Windows XP i imate više diskova."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Instaliraj UEFI bootloader koji će izvršiti MD5 Sum provjeru valjanosti datoteke medije"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1851,6 +1841,82 @@ msgstr "Onemogući BitLocker automatsko šifriranje uređaja"
|
|||
msgid "Persistent log"
|
||||
msgstr "Stalni zapisnik"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Dodatnu datoteku ('diskcopy.dll') potrebno je preuzeti s Microsofta da biste instalirali MS-DOS:\n"
|
||||
"- Odaberite 'Da' za spajanje na Internet i preuzimanje\n"
|
||||
"- Odaberite 'Ne' za poništavanje operacije\n"
|
||||
"\n"
|
||||
"Napomena: Datoteka će se preuzeti u imenik aplikacije i automatski će se ponovno koristiti ako postoji."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Otkriven opozvani UEFI pokretački program"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus je otkrio da ISO koji ste odabrali sadrži UEFI bootloader koji je opozvan i koji će proizvesti %s, kada je Secure Boot omogućen na potpuno ažuriranom UEFI sustavu.\n"
|
||||
"\n"
|
||||
"- Ako ste nabavili ovu ISO sliku iz izvora koji nije renomiran, trebali biste razmotriti mogućnost da ona sadrži zlonamjerni softver UEFI i izbjegavati pokretanje ga.\n"
|
||||
"- Ako ste ga dobili od pouzdanog izvora, trebali biste pokušati locirati noviju verziju koja neće proizvesti ovo upozorenje."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "zaslon \"Sigurnosna povreda\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "zaslon za oporavak sustava Windows (BSOD) s '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimirana VHDX slika"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Nekomprimirana VHD slika"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Potpuna ažuriranje flash slike"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Za korištenje ove funkcije potrebno je preuzeti neke dodatne podatke od Microsofta:\n"
|
||||
"- Odaberite 'Da' za spajanje na Internet i preuzimanje\n"
|
||||
"- Odaberite 'Ne' za poništavanje operacije"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Ograniči Windows na S-Mode (NEKOMPATIBILNO s mrežnim zaobilaženjem računa)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Stručnog načina rada"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Izdvajanje arhivskih datoteka: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Koristiti Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-12 13:52+0000\n"
|
||||
"PO-Revision-Date: 2023-03-12 13:52+0000\n"
|
||||
"POT-Creation-Date: 2024-05-09 13:01+0200\n"
|
||||
"PO-Revision-Date: 2024-05-10 10:46+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: hu_HU\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Hungarian (Magyar)\n"
|
||||
"X-Rufus-LCID: 0x040e\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB merevlemezek listázása"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Javítások hozzáadása régi BIOS-okhoz (extra partíció, igazítás, stb.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Rufus MBR használata BIOS azonosítóval"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Futásidejű UEFI adathordozó érvényesítés"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1044,16 +1042,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Pipáld be a nemzetközi címkék megjelenítésének engedélyezéséhez, és az eszköz ikon beállításához (egy autorun.inf fájlt készít)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Olyan MBR telepítése, ami engedélyezi a boot meghajtó kiválasztását, és képes a BIOS USB eszköz azonosítóját maszkolni"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Próbáld meg az első bootolható USB eszközt (általában: 0x80) egy másik lemezként mutatni.\n"
|
||||
"Ez csak akkor lehet szükséges, ha Windows XP-t telepítesz, és egynél több lemezed van."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Olyan UEFI rendszerbetöltő telepítése, ami elvégzi az adathordozón található fájlok MD5Sum érvényesítését"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1855,6 +1845,82 @@ msgstr "BitLocker automatikus eszköz titkosítás letiltása"
|
|||
msgid "Persistent log"
|
||||
msgstr "Tartós naplózás"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Az MS-DOS telepítéséhez egy további fájlt ('diskcopy.dll') kell letölteni a Microsofttól:\n"
|
||||
"- Válaszd az 'Igen' gombot az internethez történő kapcsolódáshoz, és a fájl letöltéséhez\n"
|
||||
"- Válaszd a 'Nem' gombot a művelet megszakításához\n"
|
||||
"\n"
|
||||
"Megjegyzés: A fájl a program mappájába lesz letöltve, és automatikusan újra lesz használva, ha létezik."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Visszavont UEFI rendszerbetöltő detektálva"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"A Rufus észlelte, hogy a kiválasztott ISO egy olyan UEFI rendszerbetöltőt tartalmaz, amelyet visszavontak, és ha a Secure Boot engedélyezve van egy teljesen naprakész UEFI rendszeren, akkor ehhez vezet: %s.\n"
|
||||
"\n"
|
||||
"- Ha ezt az ISO képet nem megbízható forrásból szerezted be, akkor számolnod kell azzal a lehetőséggel, hogy UEFI kártevőt tartalmazhat, és elkerülendő az erről történő rendszerindítás.\n"
|
||||
"- Ha megbízható forrásból szerezted be, akkor próbálj meg egy naprakészebb verziót találni, amelyre ez a figyelmeztetés nem jelenik meg."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "\"Security Violation\" képernyő"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "Windows helyreállítási képernyő (BSOD / kék halál) ezzel: '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Tömörített VHDX képfájl"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Nem tömörített VHD képfájl"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update (FFU) képfájl"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"E funkcionalitás használatához néhány további adat letöltése szükséges a Microsofttól:\n"
|
||||
"- Válaszd az 'Igen' gombot az internethez történő csatlakozáshoz, és az adatok letöltéséhez\n"
|
||||
"- Válaszd a 'Nem' gombot a művelet megszakításához"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Windows korlátozása S módra (NEM KOMPATIBILIS az online Microsoft-fiók követelmény eltávolításával)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Szakértő mód"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Archív fájlok kibontása: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufus MBR használata"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-17 10:50+0100\n"
|
||||
"PO-Revision-Date: 2023-02-21 19:52+0000\n"
|
||||
"POT-Creation-Date: 2024-05-12 12:06+0100\n"
|
||||
"PO-Revision-Date: 2024-05-12 12:12+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: it_IT\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Italian (Italiano)\n"
|
||||
"X-Rufus-LCID: 0x0410, 0x0810\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -25,7 +25,7 @@ msgstr "Dispositivo/unità"
|
|||
|
||||
#. • IDD_DIALOG → IDS_BOOT_SELECTION_TXT
|
||||
msgid "Boot selection"
|
||||
msgstr "Selezione boot"
|
||||
msgstr "Tipo boot sistema"
|
||||
|
||||
#. • IDD_DIALOG → IDC_SELECT
|
||||
msgid "Select"
|
||||
|
@ -37,11 +37,11 @@ msgstr "Opzioni immagine"
|
|||
|
||||
#. • IDD_DIALOG → IDS_PARTITION_TYPE_TXT
|
||||
msgid "Partition scheme"
|
||||
msgstr "Schema partizione"
|
||||
msgstr "Tipo schema partizione"
|
||||
|
||||
#. • IDD_DIALOG → IDS_TARGET_SYSTEM_TXT
|
||||
msgid "Target system"
|
||||
msgstr "Sistema destinazione"
|
||||
msgstr "Tipo sistema destinazione"
|
||||
|
||||
#. • IDD_DIALOG → IDC_LIST_USB_HDD
|
||||
msgid "List USB Hard Drives"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Elenco unità disco USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Aggiungi correzioni per vecchi BIOS (partizioni extra, allineamento, etc)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Usa MBR Rufus con ID BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Abilita convalida multimediale UEFI in runtime"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -208,7 +206,7 @@ msgid ""
|
|||
"WARNING: ALL DATA ON DEVICE '%s' WILL BE DESTROYED.\n"
|
||||
"To continue with this operation, click OK. To quit click CANCEL."
|
||||
msgstr ""
|
||||
"ATTENZIONE: TUTTI I DATI SULL'UNITÀ '%s' SARANNO CANCELLATI.\n"
|
||||
"ATTENZIONE: TUTTI I DATI NELL'UNITÀ '%s' SARANNO CANCELLATI.\n"
|
||||
"Per continuare seleziona 'OK'. Per annullare seleziona 'ANNULLA'."
|
||||
|
||||
#. • MSG_004
|
||||
|
@ -677,7 +675,7 @@ msgid ""
|
|||
"Your platform cannot extract files from WIM archives. WIM extraction is required to create EFI bootable Windows 7 and Windows Vista USB drives. You can fix that by installing a recent version of 7-Zip.\n"
|
||||
"Do you want to visit the 7-zip download page?"
|
||||
msgstr ""
|
||||
"Il tuo sistema operativo non può estrarre file dall'archivio WIM. L'estrazione WIM è necessaria per creare una unità USB avviabile EFI Windows 7 e Windows Vista. Puoi correggere ciò installando una versione recente di 7-Zip.\n"
|
||||
"Il sistema operativo non può estrarre file dall'archivio WIM. L'estrazione WIM è necessaria per creare una unità USB avviabile EFI Windows 7 e Windows Vista. Puoi correggere ciò installando una versione recente di 7-Zip.\n"
|
||||
"Vuoi visitare la pagina web da cui scaricare 7-zip?"
|
||||
|
||||
#. • MSG_103
|
||||
|
@ -1048,17 +1046,9 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Abilita questa opzione per permettere la visualizzazione delle etichette internazionali e impostare una icona dispositivo (creerà un file autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Installa un MBR che permette la selezione all'avvio e maschera l'ID unità USB del BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Prova prima a mascherare l'unità avviabile USB (normalmente 0x80) come un disco differente.\n"
|
||||
"Questo potrebbe essere necessario solo se installi Windows XP e hai più di un disco."
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
"Create an extra hidden partition and try to align partitions boundaries.\n"
|
||||
|
@ -1100,7 +1090,7 @@ msgstr "Versione %d.%d (build %d)"
|
|||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "Traduzione italiana a cura di bovirus"
|
||||
msgstr "Traduzione italiana a cura di R.B."
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1116,11 +1106,11 @@ msgstr "Policy aggiornamenti:"
|
|||
|
||||
#. • MSG_180
|
||||
msgid "If you choose to allow this program to check for application updates, you agree that the following information may be collected on our server(s):"
|
||||
msgstr "Se scegli di permettere a questo programma di controllare automaticamente gli aggiornamenti, accetti che le seguenti informazioni saranno catalogate nei nostri server:"
|
||||
msgstr "Se permetti a questo programma di controllare automaticamente gli aggiornamenti, accetti che le seguenti informazioni saranno catalogate nei nostri server:"
|
||||
|
||||
#. • MSG_181
|
||||
msgid "Your operating system's architecture and version"
|
||||
msgstr "L'architettura del tuo sistema operativo e la versione"
|
||||
msgstr "L'architettura del sistema operativo e la versione"
|
||||
|
||||
#. • MSG_182
|
||||
msgid "The version of the application you use"
|
||||
|
@ -1128,7 +1118,7 @@ msgstr "La versione dell'applicazione in uso"
|
|||
|
||||
#. • MSG_183
|
||||
msgid "Your IP address"
|
||||
msgstr "Il tuo indirizzo IP"
|
||||
msgstr "Indirizzo IP"
|
||||
|
||||
#. • MSG_184
|
||||
msgid "For the purpose of generating private usage statistics, we may keep the information collected, \\b for at most a year\\b0 . However, we will not willingly disclose any of this individual data to third parties."
|
||||
|
@ -1595,7 +1585,7 @@ msgstr "Non avviabile"
|
|||
|
||||
#. • MSG_280
|
||||
msgid "Disk or ISO image"
|
||||
msgstr "Immagine disco o ISO"
|
||||
msgstr "File immagine disco o file ISO"
|
||||
|
||||
#. • MSG_281
|
||||
msgid "%s (Please select)"
|
||||
|
@ -1820,7 +1810,7 @@ msgstr "Applicando opzioni utente..."
|
|||
|
||||
#. • MSG_327
|
||||
msgid "Windows User Experience"
|
||||
msgstr "Windows User Experience"
|
||||
msgstr "Esperienza utente Windows"
|
||||
|
||||
#. • MSG_328
|
||||
msgid "Customize Windows installation?"
|
||||
|
@ -1858,6 +1848,82 @@ msgstr "Disabilita la crittografia automatica dei dispositivi BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Log persistente"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Per installare MS-DOS è necessario scaricare da Microsoft un file aggiuntivo (\"diskcopy.dll\"):\n"
|
||||
"- Seleziona 'Sì' per connettersi ad internet e scaricarlo\n"
|
||||
"- Seleziona 'No' per annullare l'operazione\n"
|
||||
"\n"
|
||||
"Nota: il file verrà scaricato nella cartella dell'applicazione e se presente verrà riutilizzato automaticamente."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Rilevato bootloader UEFI revocato"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus ha rilevato che l'ISO selezionata contiene un bootloader UEFI che è stato revocato e che quando Secure Boot è abilitato su un sistema UEFI completamente aggiornato produrrà %s. \n"
|
||||
"\n"
|
||||
"- Se hai ottenuto questa immagine ISO da una so0egente non affidabile, dovresti considerare la possibilità che possa contenere malware UEFI ed evitare di eseguire l'avvio da esso.\n"
|
||||
"- Se l'hai ottenuto da una sorgente attendibile, dovresti provare a cercare una versione più aggiornata, che non genererà questo avviso."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "una schermata \"Violazione sicurezza\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "una schermata di ripristino Windows (BSOD) con '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Immagine VHDX compressa"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Immagine VHD non compressa"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Immagine aggiornamento flash completa"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Per usare questa funzionalità è necessario scaricare da Microsoft alcuni dati aggiuntivi:\n"
|
||||
"- Seleziona 'Sì' per connettersi ad internet e scaricarli\n"
|
||||
"- Seleziona 'No' per annullare l'operazione"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Limita Windows alla modalità S (INCOMPATIBILE con il bypass dell'account online)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Modalità esperto"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Estrazione file archivio: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Usa MBR Rufus"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
@ -1874,7 +1940,7 @@ msgstr "Codice sorgente: %s"
|
|||
|
||||
#. • MSG_903
|
||||
msgid "ChangeLog: %s"
|
||||
msgstr "ChangeLog: %s"
|
||||
msgstr "Novità: %s"
|
||||
|
||||
#. • MSG_904
|
||||
#.
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-04-06 11:46+0900\n"
|
||||
"PO-Revision-Date: 2023-04-06 18:36+0200\n"
|
||||
"POT-Creation-Date: 2024-05-09 21:04+0900\n"
|
||||
"PO-Revision-Date: 2024-05-09 22:07+0900\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ja_JP\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Japanese (日本語)\n"
|
||||
"X-Rufus-LCID: 0x0411\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB 接続の HDD を一覧表示"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "古い BIOS のために修正を追加 (パーティションの拡張、並び替え、その他)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "BIOS ID で Rufus の MBR を作成"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "ランタイムUEFIメディア検証を有効化"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1046,16 +1044,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "機能拡張されたラベルの表示とデバイス アイコンの設定を有効するにはこのチェック ボックスをオンにします。“autorun.inf” を作成します。"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "ブート選択が可能で BIOS の USB ドライブ ID に見えるよう偽装された MBR をインストールします。"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"最優先でブートする USB ドライブ (通常は 0x80) を別のディスクとして偽装します。\n"
|
||||
"Windows XP をインストールして複数のディスクを使用する場合にのみ必要です。"
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "MD5チェックサム検証を行うUEFIブートローダーをインストールします。"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1857,6 +1847,82 @@ msgstr "BitLocker 自動デバイス暗号化を無効化します。"
|
|||
msgid "Persistent log"
|
||||
msgstr "永続ログ"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"MS-DOSをインストールするにはMicrosoftから追加のファイル(diskcopy.dll)をダウンロードする必要があります。\n"
|
||||
"- はいを選択すると、インターネットに接続しダウンロードします。\n"
|
||||
"- いいえを選択すると、キャンセルします\n"
|
||||
"\n"
|
||||
"注意:ファイルはアプリケーションのディレクトリへダウンロードされ、今後自動的に再利用されます。"
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "無効なUEFIブートローダーが検出されました。"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufusは選択されたISOイメージが無効なUEFIブートローダーを含み、最新のUEFIでセキュアブートが有効である場合%sを引き起こすことを検出しました。\n"
|
||||
"\n"
|
||||
"- このファイルが信頼できないソースから入手されたものであれば、マルウェア混入の可能性があるため起動しないことをお勧めします。\n"
|
||||
"- このファイルが信頼できるソースから取得したものであれば、警告が発生しない新しいバージョンを探すことをお勧めします。"
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "セキュリティ侵害表示"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "\"%s\"によるWindowsのブルースクリーン"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "圧縮されたVHDXイメージ"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "圧縮されていないVHDイメージ"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Updateイメージ"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"この機能を使用するにはMicrosoftから追加のファイルをいくつかダウンロードする必要があります。\n"
|
||||
"- はいを選択すると、インターネットに接続しダウンロードします。\n"
|
||||
"- いいえを選択すると、キャンセルします"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "WindowsのSモードを強制する(オンラインアカウント要件の削除と同時に使用できません)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "エキスパートモード"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "ファイルを展開中: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufus MBRを使用する"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-10 13:36+0000\n"
|
||||
"PO-Revision-Date: 2023-03-10 13:40+0000\n"
|
||||
"POT-Creation-Date: 2024-04-29 04:19+0900\n"
|
||||
"PO-Revision-Date: 2024-04-29 05:50+0900\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ko_KR\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Korean (한국어)\n"
|
||||
"X-Rufus-LCID: 0x0412\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB 하드 드라이브 목록"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "오래된 BIOS에 대한 수정 추가 (추가 파티션, 정렬 등)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "BIOS ID로 Rufus MBR 사용"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "런타임 UEFI 미디어 유효성 검증 사용"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -175,11 +173,11 @@ msgstr "업데이트 확인 - Rufus"
|
|||
|
||||
#. • IDD_NEW_VERSION → IDS_NEW_VERSION_AVAIL_TXT
|
||||
msgid "A newer version is available. Please download the latest version!"
|
||||
msgstr "새 버전을 사용할 수 있습니다. 최신 버전을 다운로드하십시오!"
|
||||
msgstr "최신 버전을 사용할 수 있습니다. 최신 버전을 다운로드하세요!"
|
||||
|
||||
#. • IDD_NEW_VERSION → IDC_WEBSITE
|
||||
msgid "Click here to go to the website"
|
||||
msgstr "웹 사이트로 이동하려면 여기를 클릭하십시오"
|
||||
msgstr "웹사이트로 이동하려면 여기를 클릭하세요"
|
||||
|
||||
#. • IDD_NEW_VERSION → IDS_NEW_VERSION_NOTES_GRP
|
||||
msgid "Release Notes"
|
||||
|
@ -201,7 +199,7 @@ msgid ""
|
|||
"Please close the first application before running another one."
|
||||
msgstr ""
|
||||
"다른 Rufus 응용 프로그램이 실행 중입니다.\n"
|
||||
"다른 응용 프로그램을 실행하기 전에 첫 번째 응용 프로그램을 닫으십시오."
|
||||
"다른 응용 프로그램을 실행하기 전에 첫 번째 응용 프로그램을 닫아주세요."
|
||||
|
||||
#. • MSG_003
|
||||
msgid ""
|
||||
|
@ -209,7 +207,7 @@ msgid ""
|
|||
"To continue with this operation, click OK. To quit click CANCEL."
|
||||
msgstr ""
|
||||
"경고: '%s' 장치의 모든 데이터가 삭제됩니다.\n"
|
||||
"이 작업을 계속하려면 확인을 클릭하십시오. 끝내려면 취소를 클릭하십시오."
|
||||
"이 작업을 계속하려면 확인을 클릭합니다. 종료하려면 취소를 클릭합니다."
|
||||
|
||||
#. • MSG_004
|
||||
msgid "Rufus update policy"
|
||||
|
@ -217,7 +215,7 @@ msgstr "Rufus 업데이트 정책"
|
|||
|
||||
#. • MSG_005
|
||||
msgid "Do you want to allow Rufus to check for application updates online?"
|
||||
msgstr "Rufus가 온라인으로 응용프로그램 업데이트를 확인할 수 있도록 허용하시겠습니까?"
|
||||
msgstr "Rufus가 온라인으로 응용 프로그램 업데이트를 확인할 수 있도록 허용하시겠습니까?"
|
||||
|
||||
#. • MSG_007
|
||||
msgid "Cancel"
|
||||
|
@ -237,7 +235,7 @@ msgstr ""
|
|||
"검사 완료: %d개의 불량 블록을 찾았습니다\n"
|
||||
" %d개 읽기 오류\n"
|
||||
" %d개 쓰기 오류\n"
|
||||
" %d개 손상 오류"
|
||||
" %d개 손상 오류"
|
||||
|
||||
#. • MSG_012
|
||||
#.
|
||||
|
@ -433,7 +431,7 @@ msgstr "미디어가 쓰기 금지되어 있습니다."
|
|||
|
||||
#. • MSG_055
|
||||
msgid "The device is in use by another process. Please close any other process that may be accessing the device."
|
||||
msgstr "장치가 다른 프로세스에서 사용 중입니다. 장치에 액세스할 수 있는 다른 프로세스를 닫으십시오."
|
||||
msgstr "다른 프로세스에서 장치를 사용 중입니다. 장치에 액세스할 수 있는 다른 프로세스를 모두 닫으세요."
|
||||
|
||||
#. • MSG_056
|
||||
msgid "Quick format is not available for this device."
|
||||
|
@ -457,7 +455,7 @@ msgstr "볼륨 크기가 유효하지 않습니다."
|
|||
|
||||
#. • MSG_061
|
||||
msgid "Please insert a removable media in drive."
|
||||
msgstr "드라이브에 이동식 미디어를 삽입하십시오."
|
||||
msgstr "드라이브에 이동식 미디어를 삽입하세요."
|
||||
|
||||
#. • MSG_062
|
||||
msgid "An unsupported command was received."
|
||||
|
@ -481,7 +479,7 @@ msgstr "설치 실패"
|
|||
|
||||
#. • MSG_067
|
||||
msgid "Could not open media. It may be in use by another process. Please re-plug the media and try again."
|
||||
msgstr "미디어를 열 수 없습니다. 다른 프로세스에서 사용 중일 수 있습니다. 미디어를 다시 연결하고 다시 시도하십시오."
|
||||
msgstr "미디어를 열 수 없습니다. 다른 프로세스에서 사용 중일 수 있습니다. 미디어를 다시 연결하고 다시 시도하세요."
|
||||
|
||||
#. • MSG_068
|
||||
msgid "Could not partition drive."
|
||||
|
@ -575,8 +573,8 @@ msgstr ""
|
|||
"이로 인해 부팅 메뉴가 제대로 표시되지 않을 수 있습니다.\n"
|
||||
"\n"
|
||||
"Rufus는 이 문제를 해결하기 위해 최신 버전을 다운로드할 수 있습니다:\n"
|
||||
"- 인터넷에 연결하고 파일을 다운로드하려면 '예'를 선택하십시오.\n"
|
||||
"- 기존 ISO 파일을 수정하지 않은 상태로 두려면 '아니오'를 선택하십시오.\n"
|
||||
"- 인터넷에 연결하고 파일을 다운로드하려면 '예'를 선택합니다\n"
|
||||
"- 기존 ISO 파일을 수정하지 않은 상태로 두려면 '아니오'를 선택합니다\n"
|
||||
"무엇을 해야 할지 모르면 '예'를 선택해야 합니다.\n"
|
||||
"\n"
|
||||
"참고: 새 파일이 현재 디렉터리에 다운로드되고 '%s'가 있으면 자동으로 재사용됩니다."
|
||||
|
@ -614,7 +612,7 @@ msgstr "지원되지 않는 ISO"
|
|||
|
||||
#. • MSG_091
|
||||
msgid "When using UEFI Target Type, only EFI bootable ISO images are supported. Please select an EFI bootable ISO or set the Target Type to BIOS."
|
||||
msgstr "UEFI 대상 유형을 사용하는 경우 EFI 부팅 ISO 이미지만 지원됩니다. EFI 부팅 ISO를 선택하거나 대상 유형을 BIOS로 설정하십시오."
|
||||
msgstr "UEFI 대상 유형을 사용하는 경우, EFI 부팅 가능한 ISO 이미지만 지원됩니다. EFI 부팅 가능한 ISO를 선택하거나 대상 유형을 BIOS로 설정하세요."
|
||||
|
||||
#. • MSG_092
|
||||
msgid "Unsupported filesystem"
|
||||
|
@ -640,7 +638,7 @@ msgstr "DD 이미지"
|
|||
|
||||
#. • MSG_096
|
||||
msgid "The file system currently selected can not be used with this type of ISO. Please select a different file system or use a different ISO."
|
||||
msgstr "현재 선택한 파일 시스템은 이 유형의 ISO에서 사용할 수 없습니다. 다른 파일 시스템을 선택하거나 다른 ISO를 사용하십시오."
|
||||
msgstr "현재 선택한 파일 시스템은 이 유형의 ISO와 함께 사용할 수 없습니다. 다른 파일 시스템을 선택하거나 다른 ISO를 사용하세요."
|
||||
|
||||
#. • MSG_097
|
||||
msgid "'%s' can only be applied if the file system is NTFS."
|
||||
|
@ -702,8 +700,8 @@ msgstr ""
|
|||
"이 파일은 크기가 100KB 이상이고 항상 %s ISO 이미지에 존재하기 때문에 Rufus에 포함되어 있지 않습니다.\n"
|
||||
"\n"
|
||||
"Rufus가 누락된 파일을 다운로드할 수 있습니다:\n"
|
||||
"- 인터넷에 연결하고 파일을 다운로드하려면 '예'를 선택하십시오\n"
|
||||
"- 나중에 드라이브에 이 파일을 수동으로 복사하려면 '아니오'를 선택하십시오\n"
|
||||
"- 인터넷에 연결하고 파일을 다운로드하려면 '예'를 선택합니다\n"
|
||||
"- 나중에 드라이브에 이 파일을 수동으로 복사하려면 '아니오'를 선택합니다\n"
|
||||
"\n"
|
||||
"참고: 파일이 현재 디렉터리에 다운로드되고 '%s'가 있으면 자동으로 재사용됩니다."
|
||||
|
||||
|
@ -713,11 +711,11 @@ msgid ""
|
|||
"If you are sure you want to cancel, click YES. Otherwise, click NO."
|
||||
msgstr ""
|
||||
"취소하면 장치를 사용할 수 없는 상태가 될 수 있습니다.\n"
|
||||
"취소하려면 예를 클릭하십시오. 그렇지 않으면 아니요를 클릭합니다."
|
||||
"취소하려면 예를 클릭합니다. 그렇지 않으면 아니오를 클릭합니다."
|
||||
|
||||
#. • MSG_106
|
||||
msgid "Please select folder"
|
||||
msgstr "폴더를 선택하십시오"
|
||||
msgstr "폴더를 선택하세요"
|
||||
|
||||
#. • MSG_107
|
||||
msgid "All files"
|
||||
|
@ -740,7 +738,7 @@ msgid ""
|
|||
"Please change the Cluster size or use FreeDOS."
|
||||
msgstr ""
|
||||
"MS-DOS는 64KB 클러스터 크기를 사용하는 드라이브에서 부팅할 수 없습니다.\n"
|
||||
"클러스터 크기를 변경하거나 FreeDOS를 사용하십시오."
|
||||
"클러스터 크기를 변경하거나 FreeDOS를 사용하세요."
|
||||
|
||||
#. • MSG_111
|
||||
msgid "Incompatible Cluster size"
|
||||
|
@ -769,8 +767,8 @@ msgstr ""
|
|||
"이 이미지에서는 Syslinux %s%s를 사용하지만 이 응용 프로그램에는 Syslinux %s%s에 대한 설치 파일만 포함됩니다.\n"
|
||||
"\n"
|
||||
"새 버전의 Syslinux는 서로 호환되지 않으므로 Rufus가 모두 포함할 수 없으므로 인터넷에서 두 개의 추가 파일 ('ldlinux.sys' 및 'ldlinux.bss')을 다운로드해야 합니다:\n"
|
||||
"- 인터넷에 연결하고 이러한 파일을 다운로드하려면 '예'를 선택하십시오\n"
|
||||
"- 작업을 취소하려면 '아니오'를 선택하십시오\n"
|
||||
"- 인터넷에 연결하고 이러한 파일을 다운로드하려면 '예'를 선택합니다\n"
|
||||
"- 작업을 취소하려면 '아니오'를 선택합니다\n"
|
||||
"\n"
|
||||
"참고: 파일은 현재 응용 프로그램 디렉터리에 다운로드되며 있는 경우 자동으로 재사용됩니다."
|
||||
|
||||
|
@ -795,9 +793,9 @@ msgstr ""
|
|||
"이 이미지는 Grub %s을(를) 사용하지만 응용 프로그램에는 Grub %s에 대한 설치 파일만 포함합니다.\n"
|
||||
"\n"
|
||||
"다른 버전의 Grub은 서로 호환되지 않을 수 있으며, 모두 포함할 수 없기 때문에 Rufus는 이미지에서 일치하는 Grub 설치 파일 ('core.img')의 버전을 찾으려고 시도합니다:\n"
|
||||
"- 인터넷에 연결하고 다운로드하려면 '예'를 선택하십시오\n"
|
||||
"- Rufus의 기본 버전을 사용하려면 '아니요'를 선택하십시오\n"
|
||||
"- 작업을 중단하려면 '취소'를 선택하십시오\n"
|
||||
"- 인터넷에 연결하고 다운로드하려면 '예'를 선택합니다\n"
|
||||
"- Rufus의 기본 버전을 사용하려면 '아니오'를 선택합니다\n"
|
||||
"- 작업을 중단하려면 '취소'를 선택합니다\n"
|
||||
"\n"
|
||||
"참고: 파일은 현재 응용 프로그램 디렉터리에 다운로드되며 있는 경우 자동으로 재사용됩니다. 일치하는 항목을 온라인으로 찾을 수 없는 경우 기본 버전이 사용됩니다."
|
||||
|
||||
|
@ -870,7 +868,7 @@ msgid ""
|
|||
"For details on why this is necessary, see the 'More Information' button below."
|
||||
msgstr ""
|
||||
"UEFI:NTFS 부트 로더를 사용하는 미디어를 방금 만들었습니다. 이 미디어를 부팅하려면 보안 부팅을 비활성화해야 합니다.\n"
|
||||
"이 작업이 필요한 이유에 대한 자세한 내용은 아래의 '추가 정보' 버튼을 참조하십시오."
|
||||
"이 기능이 필요한 이유에 대한 자세한 내용은 아래의 '추가 정보' 버튼을 참조하세요."
|
||||
|
||||
#. • MSG_130
|
||||
msgid "Windows image selection"
|
||||
|
@ -882,7 +880,7 @@ msgid ""
|
|||
"Please select the image you wish to use for this installation:"
|
||||
msgstr ""
|
||||
"이 ISO에는 여러 개의 Windows 이미지가 포함되어 있습니다.\n"
|
||||
"이 설치에 사용할 이미지를 선택하십시오:"
|
||||
"이 설치에 사용할 이미지를 선택하세요:"
|
||||
|
||||
#. • MSG_132
|
||||
msgid "Another program or process is accessing this drive. Do you want to format it anyway?"
|
||||
|
@ -950,7 +948,7 @@ msgstr "브라우저를 사용하여 다운로드"
|
|||
|
||||
#. • MSG_144
|
||||
msgid "Download of Windows ISOs is unavailable due to Microsoft having altered their website to prevent it."
|
||||
msgstr "너무 많은 다운로드를 요청하여 Microsoft에서 일시적으로 금지했습니다. 나중에 다시 시도하십시오."
|
||||
msgstr "Microsoft가 이를 방지하기 위해 웹사이트를 변경했기 때문에 Windows ISO를 다운로드할 수 없습니다."
|
||||
|
||||
#. • MSG_145
|
||||
msgid "PowerShell 3.0 or later is required to run this script."
|
||||
|
@ -970,7 +968,7 @@ msgstr "ISO 이미지 다운로드"
|
|||
|
||||
#. • MSG_150
|
||||
msgid "Type of computer you plan to use this bootable drive with. It is your responsibility to determine whether your target is of BIOS or UEFI type before you start creating the drive, as it may fail to boot otherwise."
|
||||
msgstr "이 부팅 드라이브를 사용할 컴퓨터 유형입니다. 드라이브 생성을 시작하기 전에 대상이 BIOS인지 UEFI 유형인지 확인하는 것은 사용자의 책임입니다. 그렇지 않으면 부팅에 실패할 수 있습니다."
|
||||
msgstr "이 부팅 가능한 드라이브를 사용하려는 컴퓨터 유형입니다. 드라이브를 만들기 전에 대상이 BIOS인지 UEFI 유형인지 확인해야 합니다. 그렇지 않으면 부팅에 실패할 수도 있기 때문입니다."
|
||||
|
||||
#. • MSG_151
|
||||
#.
|
||||
|
@ -1012,7 +1010,7 @@ msgid ""
|
|||
"International characters are accepted."
|
||||
msgstr ""
|
||||
"이 필드를 사용하여 드라이브 레이블을 설정합니다.\n"
|
||||
"국제 문자는 사용할 수 있습니다."
|
||||
"국제 문자를 사용할 수 있습니다."
|
||||
|
||||
#. • MSG_160
|
||||
msgid "Toggle advanced options"
|
||||
|
@ -1028,31 +1026,23 @@ msgstr "\"느린\" 포맷 방법을 사용하려면 이 상자의 선택을 취
|
|||
|
||||
#. • MSG_163
|
||||
msgid "Method that will be used to create partitions"
|
||||
msgstr "파티션을 만드는 데 사용할 방식입니다"
|
||||
msgstr "파티션을 만드는 데 사용할 방법"
|
||||
|
||||
#. • MSG_164
|
||||
msgid "Method that will be used to make the drive bootable"
|
||||
msgstr "드라이브를 부팅 가능한 상태로 만드는 데 사용되는 방식입니다"
|
||||
msgstr "드라이브를 부팅 가능하게 만드는 데 사용되는 방법"
|
||||
|
||||
#. • MSG_165
|
||||
msgid "Click to select or download an image..."
|
||||
msgstr "이미지를 선택하거나 다운로드하려면 클릭하십시오..."
|
||||
msgstr "이미지를 선택하거나 다운로드하려면 클릭..."
|
||||
|
||||
#. • MSG_166
|
||||
msgid "Check this box to allow the display of international labels and set a device icon (creates an autorun.inf)"
|
||||
msgstr "국제 레이블을 표시하고 장치 아이콘을 설정하려면 이 확인란을 선택합니다 (autorun.inf 생성)."
|
||||
msgstr "이 확인란을 선택하면 국제 레이블 표시를 허용하고 장치 아이콘을 설정할 수 있습니다 (autorun.inf 생성)."
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "부팅 선택을 허용하고 BIOS USB 드라이브 ID를 위장할 수 있는 MBR 설치"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"부팅 가능한 첫 번째 USB 드라이브 (일반적으로 0x80)를 다른 디스크로 위장해 보십시오.\n"
|
||||
"Windows XP를 설치하고 디스크가 두 개 이상인 경우에만 필요합니다."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "미디어의 MD5Sum 파일 유효성 검사를 수행할 UEFI 부트로더 설치"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1095,7 +1085,7 @@ msgstr "버전 %d.%d (빌드 %d)"
|
|||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "한국어 번역:\\line• Uk-Jin Jang <mailto:doublestat@gmail.com>\\line• 비너스걸-VᴇɴᴜsGɪʀʟ♥ <mailto:venusgirl@outlook.com>"
|
||||
msgstr "한국어 번역:\\line• 비너스걸 (VᴇɴᴜsGɪʀʟ♥) <mailto:venusgirl@outlook.com>"
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1111,7 +1101,7 @@ msgstr "업데이트 정책:"
|
|||
|
||||
#. • MSG_180
|
||||
msgid "If you choose to allow this program to check for application updates, you agree that the following information may be collected on our server(s):"
|
||||
msgstr "이 프로그램에서 응용프로그램 업데이트를 확인하도록 선택한 경우, 다음 정보가 서버에서 수집될 수 있다는 데 동의하는 것입니다:"
|
||||
msgstr "이 프로그램에서 응용 프로그램 업데이트를 확인하도록 선택한 경우, 다음 정보가 서버에서 수집될 수 있다는 데 동의하는 것입니다:"
|
||||
|
||||
#. • MSG_181
|
||||
msgid "Your operating system's architecture and version"
|
||||
|
@ -1147,7 +1137,7 @@ msgstr "선택한 부팅 옵션에 대한 잘못된 이미지"
|
|||
|
||||
#. • MSG_188
|
||||
msgid "The current image doesn't match the boot option selected. Please use a different image or choose a different boot option."
|
||||
msgstr "현재 이미지가 선택한 부팅 옵션과 일치하지 않습니다. 다른 이미지를 사용하거나 다른 부팅 옵션을 선택하십시오."
|
||||
msgstr "현재 이미지가 선택한 부팅 옵션과 일치하지 않습니다. 다른 이미지를 사용하거나 다른 부팅 옵션을 선택하세요."
|
||||
|
||||
#. • MSG_189
|
||||
msgid "This ISO image is not compatible with the selected filesystem"
|
||||
|
@ -1378,7 +1368,7 @@ msgstr "Syslinux %s 설치 중..."
|
|||
#. Bad blocks status. Example: "Bad Blocks: Write pass 1/2 - 12.34% (0/0/1 errors)"
|
||||
#. See MSG_191 & MSG_192 for "Write pass"/"Read pass" translation.
|
||||
msgid "Bad Blocks: %s %d/%d - %0.2f%% (%d/%d/%d errors)"
|
||||
msgstr "불량 블록: 통과 %d/%d - %0.2f%% (%d/%d/%d 오류)"
|
||||
msgstr "불량 블록: %s %d/%d - %0.2f%% (%d/%d/%d 오류)"
|
||||
|
||||
#. • MSG_236
|
||||
msgid "Bad Blocks: Testing with random pattern"
|
||||
|
@ -1406,9 +1396,9 @@ msgid ""
|
|||
"\n"
|
||||
"The download will be deleted. Please check the log for more details."
|
||||
msgstr ""
|
||||
"다운로드한 업데이트의 서명을 확인할 수 없습니다. 이는 시스템이 서명 유효성 검사를 위해 잘못 구성되었거나 악의적인 다운로드를 나타냈음을 의미할 수 있습니다.\n"
|
||||
"다운로드한 업데이트의 서명을 확인할 수 없습니다. 이는 시스템이 서명 유효성 검사를 위해 잘못 구성되었거나 악의적인 다운로드를 의미할 수 있습니다.\n"
|
||||
"\n"
|
||||
"다운로드가 삭제됩니다. 자세한 내용은 로그를 확인하십시오."
|
||||
"다운로드가 삭제됩니다. 자세한 내용은 로그에서 확인하세요."
|
||||
|
||||
#. • MSG_241
|
||||
msgid "Downloading: %s"
|
||||
|
@ -1462,7 +1452,7 @@ msgstr "크기 확인"
|
|||
|
||||
#. • MSG_253
|
||||
msgid "Hard disk detection"
|
||||
msgstr "하드디스크 감지"
|
||||
msgstr "하드 디스크 감지"
|
||||
|
||||
#. • MSG_254
|
||||
msgid "Force large FAT32 formatting"
|
||||
|
@ -1564,9 +1554,9 @@ msgid ""
|
|||
msgstr ""
|
||||
"선택한 이미지는 'ISO 하이브리드' 이미지입니다. 즉, %s (파일 복사) 모드 또는 %s (디스크 이미지) 모드로 쓸 수 있습니다.\n"
|
||||
"Rufus는 %s 모드를 사용하는 것이 좋습니다. 따라서 드라이브를 작성한 후에는 항상 드라이브에 대한 전체 액세스 권한을 가질 수 있습니다.\n"
|
||||
"그러나 부팅하는 동안 문제가 발생하면 %s 모드에서 이 이미지를 다시 쓰십시오.\n"
|
||||
"그러나 부팅하는 동안 문제가 발생하면 %s 모드에서 이 이미지를 다시 작성해 볼 수 있습니다.\n"
|
||||
"\n"
|
||||
"이 이미지를 쓰는 데 사용할 모드를 선택하십시오:"
|
||||
"이 이미지를 작성하는 데 사용할 모드를 선택하세요:"
|
||||
|
||||
#. • MSG_276
|
||||
#.
|
||||
|
@ -1594,7 +1584,7 @@ msgstr "디스크 또는 ISO 이미지"
|
|||
|
||||
#. • MSG_281
|
||||
msgid "%s (Please select)"
|
||||
msgstr "%s (선택하십시오)"
|
||||
msgstr "%s (선택해 주세요)"
|
||||
|
||||
#. • MSG_282
|
||||
msgid "Exclusive USB drive locking"
|
||||
|
@ -1620,11 +1610,11 @@ msgstr ""
|
|||
|
||||
#. • MSG_286
|
||||
msgid "Zeroing drive: %s"
|
||||
msgstr "드라이브 0 채우기: %s"
|
||||
msgstr "드라이브 제로화 중: %s"
|
||||
|
||||
#. • MSG_287
|
||||
msgid "Detection of non-USB removable drives"
|
||||
msgstr "USB가 아닌 이동식 드라이브가 감지됩니다"
|
||||
msgstr "비 USB 이동식 드라이브 감지"
|
||||
|
||||
#. • MSG_288
|
||||
msgid "Missing elevated privileges"
|
||||
|
@ -1644,7 +1634,7 @@ msgstr "버전 선택"
|
|||
|
||||
#. • MSG_292
|
||||
msgid "Please select the version of Windows you want to install:"
|
||||
msgstr "설치할 Windows 버전을 선택하십시오:"
|
||||
msgstr "설치하려는 Windows 버전을 선택하세요:"
|
||||
|
||||
#. • MSG_293
|
||||
msgid "Unsupported Windows version"
|
||||
|
@ -1702,7 +1692,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Rufus가 다운로드한 업데이트의 타임스탬프가 현재 실행 파일의 타임스탬프보다 최신인지 확인할 수 없습니다.\n"
|
||||
"\n"
|
||||
"잠재적인 공격 시나리오를 방지하기 위해 업데이트 프로세스가 중단되었으며 다운로드가 삭제됩니다. 자세한 내용은 로그를 확인하십시오."
|
||||
"잠재적인 공격 시나리오를 방지하기 위해 업데이트 프로세스가 중단되었으며 다운로드가 삭제됩니다. 자세한 내용은 로그를 확인하시기 바랍니다."
|
||||
|
||||
#. • MSG_301
|
||||
msgid "Show application settings"
|
||||
|
@ -1751,7 +1741,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"선택한 ISO는 UEFI를 사용하며 EFI 시스템 파티션 (ESP)으로 작성할 수 있을 정도로 작습니다. 일부 유형의 설치에서는 전체 디스크를 차지하는 일반 데이터 파티션에 쓰는 대신 ESP에 쓰는 것이 바람직할 수 있습니다.\n"
|
||||
"\n"
|
||||
"이 이미지를 쓰는 데 사용할 모드를 선택하십시오:"
|
||||
"이 이미지를 작성하는 데 사용할 모드를 선택하세요:"
|
||||
|
||||
#. • MSG_311
|
||||
msgid "Use %s (in the main application window) to enable."
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "BitLocker 자동 장치 암호화 사용 안 함"
|
|||
msgid "Persistent log"
|
||||
msgstr "영구 로그"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"MS-DOS를 설치하려면 Microsoft에서 추가 파일 ('diskcopy.dll')을 다운로드해야 합니다:\n"
|
||||
"- 인터넷에 연결하여 다운로드하려면 '예'를 선택합니다\n"
|
||||
"- 작업을 취소하려면 '아니오'를 선택합니다\n"
|
||||
"\n"
|
||||
"참고: 해당 파일은 응용 프로그램의 디렉터리에 다운로드되며 존재하는 경우 자동으로 재사용됩니다."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "취소된 UEFI 부트로더가 탐지됨"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus는 사용자가 선택한 ISO에 취소된 UEFI 부트로더가 포함되어 있으며, 이는 완전히 최신 UEFI 시스템에서 보안 부팅이 활성화된 경우에 %s을(를) 생성한다는 것을 감지했습니다.\n"
|
||||
"\n"
|
||||
"- 평판이 좋지 않은 소스에서 이 ISO 이미지를 가져온 경우 UEFI 멀웨어가 포함되어 있을 가능성을 고려하고 부팅을 피해야 합니다.\n"
|
||||
"- 신뢰할 수 있는 소스에서 가져온 경우에는 보다 최신 버전을 찾아야 합니다. 그러면 이 경고가 발생하지 않습니다.."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "\"보안 위반\" 화면"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "%s이(가) 있는 Windows 복구 화면 (BSOD)"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "압축된 VHDX 이미지"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "압축되지 않은 VHD 이미지"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "전체 플래시 업데이트 이미지"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"이 기능을 사용하려면 Microsoft에서 몇 가지 추가 데이터를 다운로드해야 합니다:\n"
|
||||
"- 인터넷에 연결하여 다운로드하려면 '예'를 선택합니다\n"
|
||||
"- 작업을 취소하려면 '아니오'를 선택합니다"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Windows를 S-Mode로 제한 (온라인 계정 우회와 호환되지 않음)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "전문가 모드"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "압축 파일 추출 중: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufus MBR 사용"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-24 15:38+0200\n"
|
||||
"PO-Revision-Date: 2023-02-26 22:12+0000\n"
|
||||
"POT-Creation-Date: 2024-05-14 16:22+0100\n"
|
||||
"PO-Revision-Date: 2024-05-14 16:22+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: lv_LV\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Latvian (Latviešu)\n"
|
||||
"X-Rufus-LCID: 0x0426\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB disku saraksts"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Pievienot vecāku BIOSu labojumus (partīcijām, dalījumam, u.c.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Izmantot MBR ar BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Ieslēgt UEFI nesēja pārbaudi izpildīšanas laikā"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -117,7 +115,7 @@ msgstr "Licence"
|
|||
|
||||
#. • IDD_ABOUTBOX → IDOK
|
||||
msgid "OK"
|
||||
msgstr "Aprstiprināt"
|
||||
msgstr "Apstiprināt"
|
||||
|
||||
#. • IDD_LICENSE → IDD_LICENSE
|
||||
msgid "Rufus License"
|
||||
|
@ -273,11 +271,11 @@ msgstr "Citādi"
|
|||
|
||||
#. • MSG_018
|
||||
msgid "Your version: %d.%d (Build %d)"
|
||||
msgstr "Jūsu versija: %d.%d (Build %d)"
|
||||
msgstr "Jūsu versija: %d.%d (Būvējums %d)"
|
||||
|
||||
#. • MSG_019
|
||||
msgid "Latest version: %d.%d (Build %d)"
|
||||
msgstr "Pēdējā versija: %d.%d (Build %d)"
|
||||
msgstr "Pēdējā versija: %d.%d (Būvējums %d)"
|
||||
|
||||
#. • MSG_020
|
||||
#. • MSG_026
|
||||
|
@ -768,7 +766,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Šis virtuālais attēls izmanto Syslinux %s%s, bet programma satur instalācijas failus Syslinux %s%s.\n"
|
||||
"\n"
|
||||
"Tā kā jaunās Syslinux versijas nav savstarpēji atbalstāmas, nepieciešams ielādēt no interneta vajadzīgos failus ('ldlinux.sys' un 'ldlinux.bss'):\n"
|
||||
"Tā kā jaunās Syslinux versijas nav savstarpēji atbalstāmas, nepieciešams ielādēt no interneta vajadzīgos failus ('ldlinux.sys' un 'ldlinux.bss'):\n"
|
||||
"- Izvēlieties 'Jā' lai pieslēgtos pie interneta un mēģināt ielādētu šos failus\n"
|
||||
"- Izvēlieties 'Nē' lai atceltu šo darbību\n"
|
||||
"\n"
|
||||
|
@ -914,7 +912,7 @@ msgstr ""
|
|||
|
||||
#. • MSG_135
|
||||
msgid "Version"
|
||||
msgstr "Vesija"
|
||||
msgstr "Versija"
|
||||
|
||||
#. • MSG_136
|
||||
msgid "Release"
|
||||
|
@ -1043,23 +1041,15 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Atzīmējiet starptautisko simbolu atbalstam un ierīces ikonas izveidei (tiek izveidots fails autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Instalēt MBR, kur var izvēlēties ielādi un kurš var maskēties BIOS'ā ar ierīces identifikatoru"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Mēģināt maskēt pirmo USB ielādes ierīci (parasti 0x80) kā citu disku.\n"
|
||||
"Tas nepieciešams, kad instalējat Windows XP un izmantojat vairāk nekā vienu dieskus."
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
"Create an extra hidden partition and try to align partitions boundaries.\n"
|
||||
"This can improve boot detection for older BIOSes."
|
||||
msgstr ""
|
||||
"IZveidot papildus slēpto partīciju un izlīdzināt partīciju robežas.\n"
|
||||
"Izveidot papildus slēpto partīciju un izlīdzināt partīciju robežas.\n"
|
||||
"Šī opcija var atvieglot ielādes noteikšanu vecākās BIOS versijās."
|
||||
|
||||
#. • MSG_170
|
||||
|
@ -1734,7 +1724,7 @@ msgstr "Ātrā diska nullēšana: %s"
|
|||
|
||||
#. • MSG_307
|
||||
msgid "this may take a while"
|
||||
msgstr "Šī darbība var aizņemt laiku"
|
||||
msgstr "šī darbība var aizņemt laiku"
|
||||
|
||||
#. • MSG_308
|
||||
msgid "VHD detection"
|
||||
|
@ -1750,7 +1740,7 @@ msgid ""
|
|||
"\n"
|
||||
"Please select the mode that you want to use to write this image:"
|
||||
msgstr ""
|
||||
"Izvēlētais ISO-fails izmanto UEFI un ir pietiekoši mazs, lai varētu tikt ierakstīts, kā EFI (ESP) sistēmas sadaļa. Ieraksts iekš ESP, nevis kopējā datu sadaļā, kas aizņem visu disku, var būt ieteicamāks dažu ielāžu tipiem.\n"
|
||||
"Izvēlētais ISO-fails izmanto UEFI un ir pietiekoši mazs, lai varētu tikt ierakstīts, kā EFI (ESP) sistēmas sadaļa. Ieraksts iekš ESP, nevis kopējā datu sadaļā, kas aizņem visu disku, var būt ieteicamāks dažu ielāžu tipiem.\n"
|
||||
"\n"
|
||||
"Izvēlieties to režīmu, kuru nepieciešams izmantot lai ierakstīt šo virtuālo attēlu:"
|
||||
|
||||
|
@ -1816,7 +1806,7 @@ msgstr "Lietotāja opciju pielietošana..."
|
|||
|
||||
#. • MSG_327
|
||||
msgid "Windows User Experience"
|
||||
msgstr "Windows User Experience"
|
||||
msgstr "Windows lietotāju pieredze"
|
||||
|
||||
#. • MSG_328
|
||||
msgid "Customize Windows installation?"
|
||||
|
@ -1854,6 +1844,82 @@ msgstr "Atslēgt automātisko šifrēšanu ar BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Pastāvīgs žurnāls"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Lai instalēt MS-DOS no Microsoft vietnes nepieciešams lejuplādēt papildus failu («diskcopy.dll»):\n"
|
||||
"- Izvēlieties «Jā», lai pieslēgties pie Interneta un failu lejuplādēt.\n"
|
||||
"- Izvēlieties «Nē», lai atcelt darbību.\n"
|
||||
"\n"
|
||||
"Piezīme. Fails tiks lejuplādēts programmas mapē, ja tas jau eksistē, tiks izmantots atkārtoti."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Pamanīts atceltais UEFI ielādes ieraksts"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus konstatēja Jūsu izvēlētais ISO-fails satur atceltu UEFI ielādes ierakstu, kurš izdos %s, ja būs ieslēgta drošā ielāde pilnīgi jauninātajā UEFI sistēmā.\n"
|
||||
"\n"
|
||||
"- Ja šis ISO fails ir iegūts no nedrošiem avotiem, vajag ņemt vērā, ka tas var saturēt UEFI ļaunatūru un censties no tā nestartēt.\n"
|
||||
"- Ja fails iegūts no droša avota, būtu jāatrod jaunāka versija, kurai nerādīs šādu brīdinājumu."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "a \"Drošības pārkāpuma\" ekrāns"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "a Windows atkopšanas ekrāns (BSOD) ar '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Saspiests VHDX attēls"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Nesaspiests VHDX attēls"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash atjauninājuma attēls"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Lai izmantotu šo funkcionalitāti, no Microsoft ir jālejupielādē daži papildus dati:\n"
|
||||
"- Izvēlieties 'Jā', lai izveidotu savienojumu ar Internetu un lejupielādētu tos\n"
|
||||
"- Izvēlieties \"Nē\", lai atceltu darbību"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Ierobežot Windows tikai S režīmā (NESADERĪGS ar tiešsaistes konta apiešanu)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Eksperta režīms"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Atpakot arhīva failus: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Izmantot Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
@ -1887,7 +1953,7 @@ msgstr ""
|
|||
#.
|
||||
#. Keyword for "boot" will be used for search in the Windows Store
|
||||
msgid "Boot"
|
||||
msgstr ""
|
||||
msgstr "Ielāde"
|
||||
|
||||
#. • MSG_910
|
||||
#.
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-04-17 13:44+0100\n"
|
||||
"PO-Revision-Date: 2023-04-17 13:46+0100\n"
|
||||
"POT-Creation-Date: 2024-05-09 19:38+0100\n"
|
||||
"PO-Revision-Date: 2024-05-09 19:44+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: nb_NO\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Norwegian (Norsk)\n"
|
||||
"X-Rufus-LCID: 0x0414\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Før opp USB harddisker"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Legger til fiks for gamle BIOSer (ekstra partisjon, etc.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Bruk Rufus MBR med BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Aktiver runtime UEFI-medievalidering"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -803,7 +801,7 @@ msgstr ""
|
|||
|
||||
#. • MSG_117
|
||||
msgid "Standard Windows installation"
|
||||
msgstr "Standard Windows instalasjon"
|
||||
msgstr "Standard Windows installasjon"
|
||||
|
||||
#. • MSG_118
|
||||
#.
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Merk denne boksen for å tillate visning av internasjonal merkelapp og lage et stasjonsikon (lager en autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Installerer en MBR som tillater oppstartsvalg og kan maskere BIOS USB-stasjons ID"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Forsøk å maskere første oppstartbare USB-stasjon (vanligvis 0x80) som en annen stasjon.\n"
|
||||
"Dette er kun nødvendig hvis du installerer Windows XP og har mer enn en stasjon."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Installer en UEFI bootloader, som vil utføre MD5Sum-filvalidering av media"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1095,7 +1085,7 @@ msgstr "Versjon %d.%d (Utgave %d)"
|
|||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "Norsk oversettelse:\\line• JED <mailto:translator744@outlook.com>\\line• Thorbjørn Bruarøy <mailto:problemkontroll@gmail.com>\\line• Jakub Zieciak <mailto:jakub.zieciak@gmail.com>"
|
||||
msgstr "Norsk oversettelse:\\line• JED <mailto:translator744@outlook.com>\\line• Thorbjørn Bruarøy <mailto:problemkontroll@gmail.com>\\line• Jakub Zieciak"
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1839,11 +1829,11 @@ msgstr "Ikke gi Windows To Go tilgang til interne harddisker"
|
|||
|
||||
#. • MSG_333
|
||||
msgid "Create a local account with username:"
|
||||
msgstr "Lag en lokal brukerkongot med med brukernavnet:"
|
||||
msgstr "Lag en lokal brukerkonto med brukernavnet:"
|
||||
|
||||
#. • MSG_334
|
||||
msgid "Set regional options to the same values as this user's"
|
||||
msgstr "Sett regionale instillinger til det samme som den aktive brukerkontoen"
|
||||
msgstr "Sett regionale innstillinger til det samme som den aktive brukerkontoen"
|
||||
|
||||
#. • MSG_335
|
||||
msgid "Disable BitLocker automatic device encryption"
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Deaktiver BitLocker kryptering av enheten"
|
|||
msgid "Persistent log"
|
||||
msgstr "Behold log"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"En ekstra fil ('diskcopy.dll') må lastes ned fra Microsoft for å installere MS-DOS:\n"
|
||||
"- Velg \"Ja\" for å koble til Internett og laste den ned\n"
|
||||
"- Velg 'Nei' for å avbryte operasjonen\n"
|
||||
"\n"
|
||||
"Merk: Filen vil bli lastet ned i programmets katalog og vil automatisk bli gjenbrukt hvis den er tilstede."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Opphevet UEFI bootloader oppdaget"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus oppdaget at ISO-en du har valgt inneholder en UEFI-oppstartslaster som har blitt tilbakekalt og som vil produsere %s, når sikker oppstart er aktivert på et fullstendig oppdatert UEFI-system.\n"
|
||||
"\n"
|
||||
"- Hvis du har fått dette ISO-bildet fra en ikke-anerkjent kilde, bør du vurdere muligheten for at det kan inneholde UEFI-malware og unngå å starte opp fra det.\n"
|
||||
"- Hvis du har fått det fra en pålitelig kilde, bør du prøve å finne en mer oppdatert versjon, som ikke vil gi denne advarselen."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "en \"Sikkerhetsbrudd\"-skjerm"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "en Windows-gjenopprettingsskjerm (BSOD) med '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimert VHDX-imaget"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Ukomprimert VHD-imaget"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update Image"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Noen tilleggsdata må lastes ned fra Microsoft for å bruke denne funksjonaliteten:\n"
|
||||
"- Velg \"Ja\" for å koble til Internett og laste den ned\n"
|
||||
"- Velg 'Nei' for å avbryte operasjonen"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Begrens Windows til S-modus (INKOMPATIBEL med online kontoomgåelse)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Ekspert modus"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Pakker ut arkivfiler: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Bruk Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-17 09:03+0100\n"
|
||||
"PO-Revision-Date: 2023-02-17 17:02+0000\n"
|
||||
"POT-Creation-Date: 2024-04-26 11:15+0200\n"
|
||||
"PO-Revision-Date: 2024-04-26 11:44+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: nl_NL\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Dutch (Nederlands)\n"
|
||||
"X-Rufus-LCID: 0x0413, 0x0813\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB-harde schijven weergeven"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Oplossingen voor oude BIOS'en toevoegen (extra partitie, uitlijnen, etc.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Rufus MBR met BIOS ID gebruiken"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Media-validatie via UEFI inschakelen"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -92,7 +90,7 @@ msgstr "Uitgebreid label en pictogrambestanden aanmaken"
|
|||
|
||||
#. • IDD_DIALOG → IDS_STATUS_TXT
|
||||
msgid "Status"
|
||||
msgstr "Status"
|
||||
msgstr ""
|
||||
|
||||
#. • IDD_DIALOG → IDCANCEL
|
||||
#. • IDD_LICENSE → IDCANCEL
|
||||
|
@ -139,7 +137,7 @@ msgstr "Nee"
|
|||
|
||||
#. • IDD_LOG → IDD_LOG
|
||||
msgid "Log"
|
||||
msgstr "Log"
|
||||
msgstr ""
|
||||
|
||||
#. • IDD_LOG → IDC_LOG_CLEAR
|
||||
msgid "Clear"
|
||||
|
@ -282,7 +280,7 @@ msgstr "Laatste versie: %d.%d (Build %d)"
|
|||
#. • MSG_020
|
||||
#. • MSG_026
|
||||
msgid "bytes"
|
||||
msgstr "bytes"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_021
|
||||
#.
|
||||
|
@ -294,19 +292,19 @@ msgstr "kB"
|
|||
#.
|
||||
#. *Short* version of the megabyte size suffix
|
||||
msgid "MB"
|
||||
msgstr "MB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_023
|
||||
#.
|
||||
#. *Short* version of the gigabyte size suffix
|
||||
msgid "GB"
|
||||
msgstr "GB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_024
|
||||
#.
|
||||
#. *Short* version of the terabyte size suffix
|
||||
msgid "TB"
|
||||
msgstr "TB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_025
|
||||
#.
|
||||
|
@ -811,7 +809,7 @@ msgstr "Standaard Windows-installatie"
|
|||
#. http://en.wikipedia.org/wiki/Windows_To_Go in your language.
|
||||
#. Otherwise, you may add a parenthesis eg. "Windows To Go (<hint at what it does>)"
|
||||
msgid "Windows To Go"
|
||||
msgstr "Windows To Go"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_119
|
||||
msgid "advanced drive properties"
|
||||
|
@ -918,7 +916,7 @@ msgstr "Versie"
|
|||
|
||||
#. • MSG_136
|
||||
msgid "Release"
|
||||
msgstr "Release"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_137
|
||||
msgid "Edition"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Aanvinken om weergave van internationale labels toe te laten en een apparaat-pictogram in te stellen (maakt een autorun.inf aan)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Installeert een MBR die een opstartselectie toestaat en de BIOS USB-drive ID kan verbergen"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Probeert de eerste opstartbare USB drive (gewoonlijk 0x80) voor te laten doen als een andere schijf.\n"
|
||||
"Dit is alleen nodig als u Windows XP installeert en meer dan één schijf heeft."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Installeert een UEFI-bootloader die bij elke opstart vanaf het medium een MD5Sum-bestandsvalidatie uitvoert op het medium zelf"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1759,7 +1749,7 @@ msgstr "Gebruik %s (in het hoofdvenster) om in te schakelen."
|
|||
|
||||
#. • MSG_312
|
||||
msgid "Extra hashes (SHA512)"
|
||||
msgstr "Extra hashes (SHA512)"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_313
|
||||
msgid "Save to VHD"
|
||||
|
@ -1851,7 +1841,83 @@ msgstr "Automatische Bitlocker-apparaatversleuteling uitschakelen"
|
|||
|
||||
#. • MSG_336
|
||||
msgid "Persistent log"
|
||||
msgstr "Persistent log"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Er moet een extra bestand ('diskcopy.dll') worden gedownload van Microsoft om MS-DOS te installeren:\n"
|
||||
"- Selecteer 'Ja' om verbinding te maken met internet en het bestand te downloaden\n"
|
||||
"- Selecteer 'Nee' om de bewerking te annuleren\n"
|
||||
"\n"
|
||||
"Opmerking: het bestand wordt gedownload in de map van de toepassing en wordt automatisch opnieuw gebruikt als het aanwezig is."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Ingetrokken UEFI-bootloader gedetecteerd"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus heeft gedetecteerd dat de ISO die u hebt geselecteerd een UEFI-bootloader bevat die is ingetrokken en %s zal produceren wanneer Secure Boot is ingeschakeld op een volledig bijgewerkt UEFI-systeem.\n"
|
||||
"\n"
|
||||
"- Als u deze ISO-image hebt verkregen van een niet-vertrouwde bron, houdt u best rekening met de mogelijkheid dat het UEFI-malware bevat en vermijdt u om ervan op te starten.\n"
|
||||
"- Als u het van een betrouwbare bron hebt verkregen, moet u proberen een meer up-to-date versie te vinden die deze waarschuwing niet produceert."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "een \"Security Violation\"-scherm"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "een Windows-herstelscherm (BSOD) met '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Gecomprimeerde VHDX-image"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Niet-gecomprimeerde VHD-image"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update image"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Om deze functionaliteit te kunnen gebruiken, moeten enkele extra gegevens worden gedownload van Microsoft:\n"
|
||||
"- Selecteer 'Ja' om verbinding te maken met internet en ze te downloaden\n"
|
||||
"- Selecteer 'Nee' om de bewerking te annuleren"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Windows beperken tot S-Modus (NIET COMPATIBEL met omzeiling voor online account)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Expert-modus"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Archiefbestanden uitpakken: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufus MBR gebruiken"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
|
@ -1886,7 +1952,7 @@ msgstr ""
|
|||
#.
|
||||
#. Keyword for "boot" will be used for search in the Windows Store
|
||||
msgid "Boot"
|
||||
msgstr "Boot"
|
||||
msgstr "Opstarten"
|
||||
|
||||
#. • MSG_910
|
||||
#.
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-16 00:35+0000\n"
|
||||
"PO-Revision-Date: 2023-04-05 12:41+0200\n"
|
||||
"POT-Creation-Date: 2024-05-09 19:08+0100\n"
|
||||
"PO-Revision-Date: 2024-05-09 19:38+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: pl_PL\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Polish (Polski)\n"
|
||||
"X-Rufus-LCID: 0x0415\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Pokaż dyski twarde USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Dodaj łatkę dla starych BIOSów (dodatkowa partycja, itp.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Użyj MBR Rufusa z ID BIOSu"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Włącz weryfikację nośnika UEFI w czasie wykonywania"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Zaznacz to pole, aby zezwolić na wyświetlanie etykiet międzynarodowych i ustawić ikonę urządzenia (tworzy plik autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instaluje MBR, który pozwala wybrać uruchamianie i może zmienić ID dysku USB w BIOSie"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Próbuje przedstawić pierwszy bootowalny dysk USB (zazwyczaj 0x80) jako inny dysk.\n"
|
||||
"Będzie to konieczne tylko przy instalowaniu Windowsa XP i posiadaniu więcej niż jednego dysku."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Zainstaluj bootloader UEFI, który przeprowadzi weryfikację typu MD5SUM na nośniku"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1095,7 +1085,7 @@ msgstr "Wersja %d.%d (Build %d)"
|
|||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "Polskie tłumaczenie:\\line• Piotr Halama <http://halamix2.pl>\\line• Krzysztof J. Szklarski\\line• Jakub Zieciak <mailto:jakub.zieciak@gmail.com>\\line• Jakub Mierzejewski <mailto:jakmierzejewski@gmail.com>"
|
||||
msgstr "Polskie tłumaczenie:\\line• Piotr Halama <http://halamix2.pl>\\line• Krzysztof J. Szklarski\\line• Jakub Zieciak\\line• Jakub Mierzejewski <mailto:jakmierzejewski@gmail.com>"
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Dezaktywuj automatyczne szyfrowanie BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Stały dziennik (log)"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Dodatkowy plik (\"diskcopy.dll\") musi zostać pobrany od Microsoft, żeby zainstalować MS-DOS:\n"
|
||||
"- Wybierz opcję \"Tak\", aby pobrać pliku z internetu\n"
|
||||
"- Wybierz opcję \"Nie\", aby anulować operajcę\n"
|
||||
"\n"
|
||||
"Uwaga: Plik zostanie pobrany do folderu aplikacji i będzie użyty pownownie, gdy będzie dostępny."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Wykryto unieważniony bootloader UEFI"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus wykrył, że wybrany plik ISO zawiera bootloader UEFI, który został unieważniony, i który wygenereuje %s. gdy włączony zostanie \"Secure Boot\" w pełni zaktualizowanym systemie UEFI.\n"
|
||||
"\n"
|
||||
"- Jeśli uzyskałeś ten obraz ISO z niezaufanego źródła, powinienneś rozważyć możliwość, że może on zawierać złośliwe oprogramowanie dla UEFI i unikać jego uruchamiania.\n"
|
||||
"- Jeśli uzyskałeś go z zaufanego źródła, powinieneś spróbować znaleźć nowszą wersję, która nie wygeneruje tego ostrzeżenia."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "ekran \"Naruszenie Bezpieczeństwa\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "\"Ekran odzyskiwania systemu Windows\" (BSOD) z '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Zkompresowany obraz VHDX"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Zdekompresowany obraz VHD"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Obraz typu \"aktualizacja full flush\""
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Aby móc korzystać z tej funkcji, należy pobrać pewne dodatkowe dane od firmy Microsoft:\n"
|
||||
"- Wybierz opcję „Tak”, aby połączyć się z Internetem i pobrać plik\n"
|
||||
"- Wybierz opcję „Nie”, aby anulować operację"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Ogranicz system Windows do trybu S (NIEZGODNY z obejściem konta online)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Tryb eksperta"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Wypakowywanie plików z archiwum: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Użyj Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2022-06-07 16:25+0100\n"
|
||||
"PO-Revision-Date: 2023-03-17 14:32+0000\n"
|
||||
"POT-Creation-Date: 2024-05-01 14:24-0300\n"
|
||||
"PO-Revision-Date: 2024-05-04 12:06+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: pt_BR\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Portuguese Brazilian (Português do Brasil)\n"
|
||||
"X-Rufus-LCID: 0x0416\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Listar Discos Rígidos USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Opções de compatibilidade para BIOSs antigos"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Usar MBR do Rufus com ID de BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Habilitar validação de mídia UEFI"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -655,7 +653,7 @@ msgid ""
|
|||
"\n"
|
||||
"Note: The 'FIXED/REMOVABLE' attribute is a hardware property that can only be changed using custom tools from the drive manufacturer. However those tools are ALMOST NEVER provided to the public..."
|
||||
msgstr ""
|
||||
"IMPORTANTE: Você está tentando instalar 'Windows Para Levar', porém o drive de destino não tem o atributo 'FIXED'. Portanto, é possível que o Windows trave durante a inicialização, pois a Microsoft não o desenvolveu para funcionar em drives que, em lugar daquele, tenham o atributo 'REMOVABLE'. \n"
|
||||
"IMPORTANTE: Você está tentando instalar 'Windows To Go', porém o drive de destino não tem o atributo 'FIXED'. Portanto, é possível que o Windows trave durante a inicialização, pois a Microsoft não o desenvolveu para funcionar em drives que, em lugar daquele, tenham o atributo 'REMOVABLE'. \n"
|
||||
"\n"
|
||||
"Você ainda deseja continuar?\n"
|
||||
"\n"
|
||||
|
@ -1044,16 +1042,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Selecione esta opção para permitir a exibição de caracteres acentuados e atribuir um ícone para a unidade (cria um arquivo autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instalar um MBR que permita a seleção de inicialização e possa mascarar o ID de identificação do drive USB do BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Tenta mascarar o primeiro drive USB inicializável (geralmente 0x80) como um disco diferente.\n"
|
||||
"Isso só deve ser necessário se você instalar o Windows XP e tiver mais de um disco."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Instalar um carregador de inicialização que realizará validação da mídia usando MD5Sum"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1202,7 +1192,7 @@ msgstr "Detectado tamanho de setor fora do padrão"
|
|||
|
||||
#. • MSG_198
|
||||
msgid "'Windows To Go' can only be installed on a GPT partitioned drive if it has the FIXED attribute set. The current drive was not detected as FIXED."
|
||||
msgstr "'Windows Para Levar' só pode ser instalado em um drive particionado como GPT se ele tiver o atributo FIXO ativo. O drive atual não apresenta o atributo FIXO."
|
||||
msgstr "'Windows To Go' só pode ser instalado em um drive particionado como GPT se ele tiver o atributo FIXO ativo. O drive atual não apresenta o atributo FIXO."
|
||||
|
||||
#. • MSG_199
|
||||
msgid "This feature is not available on this platform."
|
||||
|
@ -1722,9 +1712,7 @@ msgid "Create a disk image of the selected device"
|
|||
msgstr "Criar uma imagem do dispositivo selecionado"
|
||||
|
||||
#. • MSG_305
|
||||
msgid ""
|
||||
"Use this option to indicate if you plan to install Windows to a different disk, or if you want to run Windows directly from this drive (Windows To Go).\r\n"
|
||||
"In 'Extended Windows 11 Installation' mode, Rufus will patch the media so that Windows 11 can be installed on platforms that don't meet the TPM 2.0 or Secure Boot requirements."
|
||||
msgid "Use this option to indicate if you plan to install Windows to a different disk, or if you want to run Windows directly from this drive (Windows To Go)."
|
||||
msgstr "Use esta opção caso queira instalar o Windows neste dispositivo ou em outro, ou se deseja rodar o Windows direto deste dispositivo (Windows To Go)."
|
||||
|
||||
#. • MSG_306
|
||||
|
@ -1856,6 +1844,82 @@ msgstr "Desativar a encriptação automática BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Registo persistente"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Um arquivo adicional ('diskcopy.dll') precisa ser baixado da Microsoft para instalar o MS-DOS:\n"
|
||||
"- Selecione 'Sim' para se conectar à Internet e baixá-lo\n"
|
||||
"- Selecione 'Não' para cancelar a operação\n"
|
||||
"\n"
|
||||
"Nota: O arquivo será baixado no diretório da aplicação e será reutilizado automaticamente caso presente."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Detectado carregador de inicialização UEFI revogado"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus detectou que o ISO selecionado contém um carregador de inicialização UEFI que foi revogado e produzirá %s quando Secure Boot estiver habilitado em um sistema UEFI atualizado.\n"
|
||||
"\n"
|
||||
"- Se você obteve essa imagem ISO de uma fonte não confiável, você deve considerar a possibilidade da mesma conter malware UEFI e evitar inicializar através dela.\n"
|
||||
"- Se você a obteve de uma fonte confiável, você deve tentar achar uma versão mais recente, que não produza este aviso."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "uma tela \"Security Violation\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "uma tela de Reparo do Windows (BSOD) com '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Imagem VHDX comprimida"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Imagem VHD não comprimida"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Imagem Full Flash Update"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Alguns dados adicionais precisam ser baixados da Microsoft para usar essa funcionalidade:\n"
|
||||
"- Selecione 'Sim' para se conectar à Internet e baixá-los\n"
|
||||
"- Selecione 'Não' para cancelar a operação"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Restringir Windows ao modo S (INCOMPATÍVEL com remoção de exigência de conta online)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Modo Especialista"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Extraindo arquivos: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Usar MBR do Rufus"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-20 12:57+0000\n"
|
||||
"PO-Revision-Date: 2023-03-20 12:57+0000\n"
|
||||
"POT-Creation-Date: 2024-04-25 21:23+0300\n"
|
||||
"PO-Revision-Date: 2024-04-25 22:00+0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: ro_RO\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Romanian (Română)\n"
|
||||
"X-Rufus-LCID: 0x0418, 0x0818\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Afișare unități conectate prin USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Adăugare remedieri pentru BIOS-uri vechi (partiție extra, aliniere, etc.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Utilizare MBR Rufus cu ID BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Activați validarea mediilor UEFI în timpul execuției"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -338,7 +336,7 @@ msgstr "BIOS (sau UEFI-CSM)"
|
|||
|
||||
#. • MSG_032
|
||||
msgid "UEFI (non CSM)"
|
||||
msgstr ""
|
||||
msgstr "UEFI (fără CSM)"
|
||||
|
||||
#. • MSG_033
|
||||
msgid "BIOS or UEFI"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Bifați această casetă pentru a permite afișarea etichetelor internaționale și pentru a seta o pictogramă pentru dispozitiv (se va crea un fișier autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instalează un MBR care permite pornirea și selecția dispozitivului USB din BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Se va încerca mascarea primei unități USB (de obicei 0x80) ca fiind un alt disc.\n"
|
||||
"Acest lucru este necesar numai dacă instalați Windows XP și aveți mai mult decât un singur disc."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Instalează un bootloader UEFI care poate performa validări MD5sum a fișierelor media"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Blochează BitLocker de la encriptarea automată a dispozitivului"
|
|||
msgid "Persistent log"
|
||||
msgstr "Logare persistentă"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Un fișier adițional ('diskcopy.dll') trebuie să fie descărcat de la Microsoft pentru a instala MS-DOS:\n"
|
||||
"- Selectează 'Da' ca să te conectezi la Internet și să le descarci\n"
|
||||
"- Selectează 'Nu' pentru a anula operațiunea\n"
|
||||
"\n"
|
||||
"Notiță: Acest fișier va fi descărcat in aceeași locație cu aplicația și va fi reutilizat automat dacă este prezent."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Bootloader UEFI nepermis detectat"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus a detectat că fișierul ISO care lai selectat conține un bootloader UEFI care nu este permis si ar produce %s, cand Secure Boot este activat pe un system UEFI actualizat.\n"
|
||||
"\n"
|
||||
"- Dacă ai făcut rost de aceasta imagine ISO de la o sursă de neîncredere, este recomandat să consideri posibilitatea că ar putea conține malware UEFI ce nu ar permite pornirea de la aceasta.\n"
|
||||
"- Dacă ai făcut rost de aceasta de la o sursă de încredere, ar putea fi necesară căutarea unei versiuni mai noi, care nu ar produce acest avertisment."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "un ecran de \"Încălcare de Securitate\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "un ecran de Recuperare Windows (BSOD) cu '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Imagine VHDX comprimată"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Imagine VHD necomprimată"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Flash complet de imagine de actualizare"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Niște date adiționale trebuie descărcate de la Microsoft pentru a folosii această funție:\n"
|
||||
"- Selectează 'Da' ca să te conectezi la Internet și să le descarci\n"
|
||||
"- Selectează 'Nu' pentru a anula operațiunea"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Restricționează Windows la S-Mode (INCOMPATIBIL cu bypass-ul pentru un cont online)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Mod expert"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Extractând fișiere arhivate: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Folosește Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-26 22:16+0000\n"
|
||||
"PO-Revision-Date: 2023-02-26 22:16+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"POT-Creation-Date: 2024-05-12 10:18+0200\n"
|
||||
"PO-Revision-Date: 2024-05-12 10:38+0200\n"
|
||||
"Last-Translator: martinco78\n"
|
||||
"Language-Team: \n"
|
||||
"Language: sk_SK\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Slovak (Slovensky)\n"
|
||||
"X-Rufus-LCID: 0x041B\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Zobraziť zoznam USB pevných diskov (USB HDD)"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Pridať úpravy pre staré BIOSy (extra partície, ...)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Použiť Rufus MBR s BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Povoliť overenie médií UEFI v runtime režime"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -117,7 +115,7 @@ msgstr "Licencia"
|
|||
|
||||
#. • IDD_ABOUTBOX → IDOK
|
||||
msgid "OK"
|
||||
msgstr ""
|
||||
msgstr "OK"
|
||||
|
||||
#. • IDD_LICENSE → IDD_LICENSE
|
||||
msgid "Rufus License"
|
||||
|
@ -290,31 +288,31 @@ msgstr "bajtov"
|
|||
#.
|
||||
#. *Short* version of the kilobyte size suffix
|
||||
msgid "KB"
|
||||
msgstr ""
|
||||
msgstr "KB"
|
||||
|
||||
#. • MSG_022
|
||||
#.
|
||||
#. *Short* version of the megabyte size suffix
|
||||
msgid "MB"
|
||||
msgstr ""
|
||||
msgstr "MB"
|
||||
|
||||
#. • MSG_023
|
||||
#.
|
||||
#. *Short* version of the gigabyte size suffix
|
||||
msgid "GB"
|
||||
msgstr ""
|
||||
msgstr "GB"
|
||||
|
||||
#. • MSG_024
|
||||
#.
|
||||
#. *Short* version of the terabyte size suffix
|
||||
msgid "TB"
|
||||
msgstr ""
|
||||
msgstr "TB"
|
||||
|
||||
#. • MSG_025
|
||||
#.
|
||||
#. *Short* version of the pentabyte size suffix
|
||||
msgid "PB"
|
||||
msgstr ""
|
||||
msgstr "PB"
|
||||
|
||||
#. • MSG_027
|
||||
msgid "kilobytes"
|
||||
|
@ -397,7 +395,7 @@ msgstr "Úložné zariadenie USB (všeobecné)"
|
|||
|
||||
#. • MSG_046
|
||||
msgid "%s (Disk %d) [%s]"
|
||||
msgstr ""
|
||||
msgstr "%s (Disk %d) [%s]"
|
||||
|
||||
#. • MSG_047
|
||||
#.
|
||||
|
@ -491,7 +489,7 @@ msgstr "Nie je možné vytvoriť oddiely."
|
|||
|
||||
#. • MSG_069
|
||||
msgid "Could not copy files to target drive."
|
||||
msgstr "Nie je možné kopírovať súbory do cieľovej jednotky."
|
||||
msgstr "Nie je možné kopírovať súbory do cieľovej jednotky."
|
||||
|
||||
#. • MSG_070
|
||||
msgid "Cancelled by user."
|
||||
|
@ -735,7 +733,7 @@ msgstr "Záznam programu Rufus"
|
|||
|
||||
#. • MSG_109
|
||||
msgid "0x%02X (Disk %d)"
|
||||
msgstr ""
|
||||
msgstr "0x%02X (Disk %d)"
|
||||
|
||||
#. • MSG_110
|
||||
#.
|
||||
|
@ -745,7 +743,7 @@ msgid ""
|
|||
"MS-DOS cannot boot from a drive using a 64 kilobytes Cluster size.\n"
|
||||
"Please change the Cluster size or use FreeDOS."
|
||||
msgstr ""
|
||||
"MS-DOS nemôže byť bootovaný z jednotky používajúcich klastre s veľkosťou 64kb.\n"
|
||||
"Systém MS-DOS nemôže byť spustený z jednotky používajúcej klastre s veľkosťou 64kb.\n"
|
||||
"Zmeňte veľkosť klastra alebo použite FreeDOS."
|
||||
|
||||
#. • MSG_111
|
||||
|
@ -774,7 +772,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Tento obraz používa Syslinux %s%s ale tento program obsahuje inštaláciu pre Syslinux %s%s.\n"
|
||||
"\n"
|
||||
"Ak nová verzia Syslinuxu nie je kompaktibilná s ďalším obrazom, je možné, že program Rufus neobsahuje dva doplnkové súbory, ktoré budú musieť byť stiahnuté z internetu (ldlinux.sys a ldlinux.bss):\n"
|
||||
"Ak nová verzia Syslinuxu nie je kompaktibilná s ďalším obrazom, je možné, že program Rufus neobsahuje dva doplnkové súbory, ktoré budú musieť byť stiahnuté z internetu (ldlinux.sys a ldlinux.bss):\n"
|
||||
"- Stlačte „Áno\" pre stiahnutie týchto súborov z internetu\n"
|
||||
"- Stlačte „Nie\" pre zrušenie operácie\n"
|
||||
"\n"
|
||||
|
@ -1051,16 +1049,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Označením tohto políčka povolíte v názve disku zobrazenie medzinárodných znakov a vytvorenie ikony zariadenia (vytvorením súboru autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Inštalovaním MBR programu povolíte výber pri bootovaní a možnosť maskovania použitím BIOS USB drive ID"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Vyskúšajte maskovanie prvej bootovacej USB jednotky (zvyčajne 0x80) ako odlišného disku.\n"
|
||||
"Toto je nevyhnutné, ak chcete inštalovať Windows XP a máte viac ako jeden disk."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Nainštalovať zavádzač UEFI, ktorý vykoná overenie média prostredníctvom MD5Sum súboru"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1861,6 +1851,82 @@ msgstr "Vypnutie automatického šifrovania zariadenia BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Trvalý záznam činností"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Pre inštaláciu systému MS-DOS je potrebné prevziať od spoločnosti Microsoft ďalší súbor („diskcopy.dll\"):\n"
|
||||
"- Výberom možnosti „Áno\" ho stiahnete z internetu\n"
|
||||
"- Výberom možnosti „Nie\" zrušíte operáciu\n"
|
||||
"\n"
|
||||
"Poznámka: Súbor sa stiahne do adresára aplikácie a automaticky sa znova použije, ak je k dispozícii."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Bol zistený zrušený zavádzač UEFI"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Program Rufus zistil, že ISO, ktoré ste vybrali, obsahuje zavádzač UEFI, ktorý bol zrušený a ktorý bude produkovať %s, keď je povolené zabezpečené spustenie na plne aktuálnom systéme UEFI.\n"
|
||||
"\n"
|
||||
"- Ak ste tento obraz ISO získali z neseriózneho zdroja, mali by ste zvážiť možnosť, že by mohol obsahovať malvér UEFI a vyhnúť sa bootovaniu z neho.\n"
|
||||
"- Ak ste ho získali z dôveryhodného zdroja, mali by ste sa pokúsiť nájsť aktuálnejšiu verziu, ktorá toto upozornenie nespustí."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "obrazovka „Narušenie bezpečnosti\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "a Obrazovka obnovenia systému Windows (BSOD) s %s"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimovaný obraz VHDX"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Nekomprimovaný obraz VHD"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Obraz úplnej flash aktualizácie"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Ak chcete používať túto funkciu, musíte si od spoločnosti Microsoft stiahnuť niektoré ďalšie dáta:\n"
|
||||
"- Výberom možnosti „Áno\" ich stiahnete z internetu\n"
|
||||
"- Výberom možnosti „Nie\" zrušíte túto operáciu"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Obmedziť systém Windows s režimom S (NEKOMPATIBILNÝ s obídením konta online)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Expertný režim"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Extrahovanie archívnych súborov: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Použiť Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
@ -1894,7 +1960,7 @@ msgstr ""
|
|||
#.
|
||||
#. Keyword for "boot" will be used for search in the Windows Store
|
||||
msgid "Boot"
|
||||
msgstr ""
|
||||
msgstr "boot"
|
||||
|
||||
#. • MSG_910
|
||||
#.
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-17 17:21+0000\n"
|
||||
"PO-Revision-Date: 2023-02-17 17:22+0000\n"
|
||||
"POT-Creation-Date: 2024-05-10 22:14+0200\n"
|
||||
"PO-Revision-Date: 2024-05-10 22:25+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: sr_RS\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Serbian (Srpski)\n"
|
||||
"X-Rufus-LCID: 0x241a, 0x081a, 0x181a, 0x2c1a, 0x701a, 0x7c1a\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Pokaži USB čvrste diskove"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Dodaj ispravke za stare BIOS-e (dodatne particije, svrstanje, itd.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Koristi Rufus MBR sa BIOS ID-em"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Омогућите проверу UEFI медија током извршавања"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -545,7 +543,7 @@ msgstr ""
|
|||
"\n"
|
||||
"Zavsino od brzine vašeg USB uređaja, ova operacija može potrajati dugo, naročito za velike datoteke.\n"
|
||||
"\n"
|
||||
"Preporučujemo da dozvolite Windows-u da završi, kako bi izbjegli korupciju. Ukoliko ne želite čekati, samo izvadite USB uređaj..."
|
||||
"Preporučujemo da dozvolite Windows-u da završi, kako bi izbjegli korupciju. Ukoliko ne želite čekati, samo izvadite USB uređaj..."
|
||||
|
||||
#. • MSG_081
|
||||
msgid "Unsupported image"
|
||||
|
@ -850,7 +848,7 @@ msgstr "Bez stalne veličine"
|
|||
#.
|
||||
#. Tooltips used for the peristence size slider and edit control
|
||||
msgid "Set the size of the persistent partition for live USB media. Setting the size to 0 disables the persistent partition."
|
||||
msgstr "Izaberite veličinu stalne particije za live USB datoteku. Podešavanjem na 0 onemogućava stalnu particiju."
|
||||
msgstr "Izaberite veličinu stalne particije za live USB datoteku. Podešavanjem na 0 onemogućava stalnu particiju."
|
||||
|
||||
#. • MSG_126
|
||||
msgid "Set the partition size units."
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Označite ovo polje kako biste dozvolili prikaz internacionalnih oznaka i napravite ikonicu uređaja (izrađuje autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Instaliraj MBR koji omogućava odabir pri podizanju sistema i može pretvoriti ID BIOS-a USB uređaja"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Pokušaj maskirati prvi USB uređaj za podizanje sistema (uobičajeno 0x80) kao drugačiji disk.\n"
|
||||
"Ovo je samo potrebno ako instalirate Windows XP i imate više od jednog diska."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Инсталирајте UEFI боотлоадер, који ће извршити проверу МД5Сум-y датотеке медија"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Onemogući BitLocker automatsku enkripciju uređaja"
|
|||
msgid "Persistent log"
|
||||
msgstr "Trajna evidencija"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Додатна датотека ('diskcopy.dll') мора да се преузме са Microsoft-a да би се инсталирао MS-DOS:\n"
|
||||
"- Изаберите „Да“ да бисте се повезали на Интернет и преузели га\n"
|
||||
"- Изаберите „Не“ да бисте отказали операцију\n"
|
||||
"\n"
|
||||
"Напомена: Датотека ће бити преузета у директоријум апликације и аутоматски ће се поново користити ако постоји."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Откривен је опозвани UEFI покретач"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Руфус је открио да ISO који сте изабрали садржи UEFI покретач који је опозван и који ће произвести %s када је безбедно покретање омогућено на потпуно ажурираном UEFI систему.\n"
|
||||
"\n"
|
||||
"- Ако сте ову ISO слику добили од неугледног извора, требало би да размотрите могућност да садржи UEIFI малвер и избегавајте покретање са њега.\n"
|
||||
"- Ако сте га добили од поузданог извора, покушајте да пронађете новију верзију, која неће произвести ово упозорење."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "екран „Нарушавање безбедности“"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "Windows Рековери Екран (BSOD) са „%s“"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Компресована VHDX слика"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Некомпримована VHD слика"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Фулл Фласх Упдате Имаге"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Неки додатни подаци морају се преузети од Microsoft-a да бисте користили ову функцију:\n"
|
||||
"- Изаберите „Да“ да бисте се повезали на Интернет и преузели га\n"
|
||||
"- Изаберите „Не“ да бисте отказали операцију"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Ограничите Виндовс на С-Моде (НИЈЕ КОМПАТИБИЛАН са заобилажењем налога на мрежи)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Ekspertni Rezim"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Распакивање архивских датотека: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Koritsti Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-16 22:33+0100\n"
|
||||
"PO-Revision-Date: 2023-02-16 23:43+0100\n"
|
||||
"Last-Translator: Sopor <sopor@hotmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"POT-Creation-Date: 2024-04-26 00:51+0200\n"
|
||||
"PO-Revision-Date: 2024-04-26 14:23+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Sopor <sopor@users.noreply.github.com>\n"
|
||||
"Language: sv_SE\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Swedish (Svenska)\n"
|
||||
"X-Rufus-LCID: 0x041d, 0x081d\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -52,15 +52,13 @@ msgstr "Lista USB-hårddiskar"
|
|||
#. It is acceptable to drop the parenthesis () if you are running out of space
|
||||
#. as there is a tooltip (MSG_169) providing these details.
|
||||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Lägg till korrigeringar för äldre BIOS:ar"
|
||||
msgstr "Lägg till korrigeringar för äldre BIOS:ar (extra partition, etc)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Använd Rufus MBR med BIOS-ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Aktivera runtime UEFI-mediavalidering"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -92,7 +90,7 @@ msgstr "Skapa utökat namn och ikonfiler"
|
|||
|
||||
#. • IDD_DIALOG → IDS_STATUS_TXT
|
||||
msgid "Status"
|
||||
msgstr "Status"
|
||||
msgstr ""
|
||||
|
||||
#. • IDD_DIALOG → IDCANCEL
|
||||
#. • IDD_LICENSE → IDCANCEL
|
||||
|
@ -117,7 +115,7 @@ msgstr "Licens"
|
|||
|
||||
#. • IDD_ABOUTBOX → IDOK
|
||||
msgid "OK"
|
||||
msgstr "OK"
|
||||
msgstr ""
|
||||
|
||||
#. • IDD_LICENSE → IDD_LICENSE
|
||||
msgid "Rufus License"
|
||||
|
@ -171,7 +169,7 @@ msgstr "Uppdatera nu"
|
|||
|
||||
#. • IDD_NEW_VERSION → IDD_NEW_VERSION
|
||||
msgid "Check For Updates - Rufus"
|
||||
msgstr "Kontrollera efter uppdateringar - Rufus"
|
||||
msgstr "Sök efter uppdateringar - Rufus"
|
||||
|
||||
#. • IDD_NEW_VERSION → IDS_NEW_VERSION_AVAIL_TXT
|
||||
msgid "A newer version is available. Please download the latest version!"
|
||||
|
@ -193,7 +191,7 @@ msgstr "Nerladdning"
|
|||
|
||||
#. • MSG_001
|
||||
msgid "Other instance detected"
|
||||
msgstr "Program redan i gång"
|
||||
msgstr "Programmet körs redan"
|
||||
|
||||
#. • MSG_002
|
||||
msgid ""
|
||||
|
@ -201,7 +199,7 @@ msgid ""
|
|||
"Please close the first application before running another one."
|
||||
msgstr ""
|
||||
"Rufus körs redan.\n"
|
||||
"Stäng det andra programmet innan du startar ännu ett."
|
||||
"Stäng det första programmet innan du startar ett nytt."
|
||||
|
||||
#. • MSG_003
|
||||
msgid ""
|
||||
|
@ -209,8 +207,8 @@ msgid ""
|
|||
"To continue with this operation, click OK. To quit click CANCEL."
|
||||
msgstr ""
|
||||
"VARNING: ALL DATA PÅ ENHETEN '%s'\n"
|
||||
"KOMMER ATT FÖRSVINNA.\n"
|
||||
"För att fortsätta, tryck OK. För att avbryta tryck AVBRYT."
|
||||
"KOMMER ATT TAS BORT.\n"
|
||||
"För att fortsätta tryck OK. För att avbryta tryck AVBRYT."
|
||||
|
||||
#. • MSG_004
|
||||
msgid "Rufus update policy"
|
||||
|
@ -283,37 +281,37 @@ msgstr "Senaste version: %d.%d (Build %d)"
|
|||
#. • MSG_020
|
||||
#. • MSG_026
|
||||
msgid "bytes"
|
||||
msgstr "bytes"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_021
|
||||
#.
|
||||
#. *Short* version of the kilobyte size suffix
|
||||
msgid "KB"
|
||||
msgstr "KB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_022
|
||||
#.
|
||||
#. *Short* version of the megabyte size suffix
|
||||
msgid "MB"
|
||||
msgstr "MB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_023
|
||||
#.
|
||||
#. *Short* version of the gigabyte size suffix
|
||||
msgid "GB"
|
||||
msgstr "GB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_024
|
||||
#.
|
||||
#. *Short* version of the terabyte size suffix
|
||||
msgid "TB"
|
||||
msgstr "TB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_025
|
||||
#.
|
||||
#. *Short* version of the pentabyte size suffix
|
||||
msgid "PB"
|
||||
msgstr "PB"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_027
|
||||
msgid "kilobytes"
|
||||
|
@ -396,7 +394,7 @@ msgstr "USB-lagringsenhet (Allmänt)"
|
|||
|
||||
#. • MSG_046
|
||||
msgid "%s (Disk %d) [%s]"
|
||||
msgstr "%s (Disk %d) [%s]"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_047
|
||||
#.
|
||||
|
@ -728,7 +726,7 @@ msgstr "Rufus logg"
|
|||
|
||||
#. • MSG_109
|
||||
msgid "0x%02X (Disk %d)"
|
||||
msgstr "0x%02X (Disk %d)"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_110
|
||||
#.
|
||||
|
@ -810,7 +808,7 @@ msgstr "Standard Windowsinstallation"
|
|||
#. http://en.wikipedia.org/wiki/Windows_To_Go in your language.
|
||||
#. Otherwise, you may add a parenthesis eg. "Windows To Go (<hint at what it does>)"
|
||||
msgid "Windows To Go"
|
||||
msgstr "Windows To Go"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_119
|
||||
msgid "advanced drive properties"
|
||||
|
@ -913,11 +911,11 @@ msgstr ""
|
|||
|
||||
#. • MSG_135
|
||||
msgid "Version"
|
||||
msgstr "Version"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_136
|
||||
msgid "Release"
|
||||
msgstr "Release"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_137
|
||||
msgid "Edition"
|
||||
|
@ -975,11 +973,11 @@ msgstr "Typ av dator du planerar att använda den här startbara enheten på. De
|
|||
#.
|
||||
#. You shouldn't translate 'Legacy Mode' as this is an option that usually appears in English in the UEFI settings.
|
||||
msgid "'UEFI-CSM' means that the device will only boot in BIOS emulation mode (also known as 'Legacy Mode') under UEFI, and not in native UEFI mode."
|
||||
msgstr "'UEFI-CSM' innebär att enheten startar i BIOS-emuleringsläge (kallas också för 'Legacy Mode') under UEFI och inte i nativ UEFI-läge."
|
||||
msgstr "\"UEFI-CSM\" innebär att enheten startar i BIOS-emuleringsläge (kallas också för 'Legacy Mode') under UEFI och inte i nativ UEFI-läge."
|
||||
|
||||
#. • MSG_152
|
||||
msgid "'non CSM' means that the device will only boot in native UEFI mode, and not in BIOS emulation mode (also known as 'Legacy Mode')."
|
||||
msgstr "'icke CSM' innebär att enheten startar i nativ UEFI-läge och inte i BIOS-emuleringsläge (kallas också för 'Legacy Mode')."
|
||||
msgstr "\"icke CSM\" innebär att enheten startar i nativ UEFI-läge och inte i BIOS-emuleringsläge (kallas också för 'Legacy Mode')."
|
||||
|
||||
#. • MSG_153
|
||||
msgid "Test pattern: 0x%02X"
|
||||
|
@ -1015,7 +1013,7 @@ msgstr ""
|
|||
|
||||
#. • MSG_160
|
||||
msgid "Toggle advanced options"
|
||||
msgstr "Visa/Dölj avancerat"
|
||||
msgstr "Visa/dölj avancerat"
|
||||
|
||||
#. • MSG_161
|
||||
msgid "Check the device for bad blocks using a test pattern"
|
||||
|
@ -1042,16 +1040,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Markera för att tillåta visa internationella namn och sätta en enhetsikon (en autorun.inf skapas)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Installera en MBR som tillåter flera uppstartsmöjligheter och som kan maskera bort BIOS USB enhets-ID"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Prova att maskera bort den första startbara USB-enheten (vanligtvis 0x80) som en annan disk.\n"
|
||||
"Detta är endast nödvändigt om du installerar Windows XP och du har mer än en disk."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Installera en UEFI-starthanterare som kommer att utföra MD5Sum-filvalidering av media"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1092,11 +1082,11 @@ msgstr "Rufus - Det pålitliga verktyget för USB-formatering"
|
|||
|
||||
#. • MSG_175
|
||||
msgid "Version %d.%d (Build %d)"
|
||||
msgstr "Version %d.%d (Build %d)"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "Svensk översättning: Sopor <mailto:sopor@hotmail.com>"
|
||||
msgstr "Svensk översättning: Sopor"
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1202,7 +1192,7 @@ msgstr "En icke standard sektorstorlek upptäckt"
|
|||
|
||||
#. • MSG_198
|
||||
msgid "'Windows To Go' can only be installed on a GPT partitioned drive if it has the FIXED attribute set. The current drive was not detected as FIXED."
|
||||
msgstr "'Windows To Go' kan endast installeras på en enhet med GPT-partition om det är en FIXERAD enhet. Nuvarande enhet är inte FIXERAD."
|
||||
msgstr "\"Windows To Go\" kan endast installeras på en enhet med GPT-partition om det är en FIXERAD enhet. Nuvarande enhet är inte FIXERAD."
|
||||
|
||||
#. • MSG_199
|
||||
msgid "This feature is not available on this platform."
|
||||
|
@ -1563,7 +1553,7 @@ msgid ""
|
|||
"\n"
|
||||
"Please select the mode that you want to use to write this image:"
|
||||
msgstr ""
|
||||
"Avbilden du har valt är en 'ISOHybrid-avbild'. Detta innebär att den kan skrivas i både läge %s (filkopiering) eller i läge %s (disk-avbild).\n"
|
||||
"Avbilden du har valt är en \"ISOHybrid-avbild\". Detta innebär att den kan skrivas i både läge %s (filkopiering) eller i läge %s (disk-avbild).\n"
|
||||
"Rufus rekommenderar att läge %s används, så att du alltid har full tillgång till enheten efter att du skrivit till den.\n"
|
||||
"Skulle du få problem vid uppstarten, kan du i stället prova skriva avbilden i läge %s.\n"
|
||||
"\n"
|
||||
|
@ -1824,7 +1814,7 @@ msgstr "Anpassa Windows-installationen?"
|
|||
|
||||
#. • MSG_329
|
||||
msgid "Remove requirement for 4GB+ RAM, Secure Boot and TPM 2.0"
|
||||
msgstr "Ta bort kravet på 4 GB+ RAM, Secure Boot och TPM 2.0"
|
||||
msgstr "Ta bort kravet på 4GB+ RAM, Secure Boot och TPM 2.0"
|
||||
|
||||
#. • MSG_330
|
||||
msgid "Remove requirement for an online Microsoft account"
|
||||
|
@ -1836,7 +1826,7 @@ msgstr "Inaktivera datainsamling (Hoppa över sekretessfrågor)"
|
|||
|
||||
#. • MSG_332
|
||||
msgid "Prevent Windows To Go from accessing internal disks"
|
||||
msgstr "Förhindra Windows To Go från att komma åt interna diskar"
|
||||
msgstr "Förhindra \"Windows To Go\" från att komma åt interna diskar"
|
||||
|
||||
#. • MSG_333
|
||||
msgid "Create a local account with username:"
|
||||
|
@ -1854,6 +1844,82 @@ msgstr "Inaktivera BitLockers automatiska enhetskryptering"
|
|||
msgid "Persistent log"
|
||||
msgstr "Bestående logg"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"En fil (diskcopy.dll) måste laddas ner från Microsoft för att installera MS-DOS:\n"
|
||||
"- Välj \"Ja\" för att ansluta till Internet och ladda ner den\n"
|
||||
"- Välj \"Nej\" för att avbryta operationen\n"
|
||||
"\n"
|
||||
"Obs: Filen kommer att laddas ner i programmets katalog och kommer att återanvändas automatiskt om den finns."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Återkallad UEFI-starthanterare upptäcktes"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus upptäckte att den ISO-filen du har valt innehåller en UEFI-starthanterare som har återkallats och som kommer att producera %s, när \"Secure Boot\" är aktiverat på ett helt uppdaterat UEFI-system.\n"
|
||||
"\n"
|
||||
"- Om du skaffade den här ISO-avbilden från en icke ansedd källa bör du överväga möjligheten att den kan innehålla UEFI-skadlig programvara och undvika att starta från den.\n"
|
||||
"- Om du har fått det från en pålitlig källa bör du försöka hitta en mer uppdaterad version som inte ger den här varningen."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "en \"Säkerhetsöverträdelseskärm\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "en Windows-återställningsskärm (BSOD) med '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Komprimerad VHDX-avbild"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Okomprimerad VHD-avbild"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full flash uppdateringsavbild"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Ytterligare data måste laddas ner från Microsoft för att kunna använda den här funktionen:\n"
|
||||
"- Välj \"Ja\" för att ansluta till Internet och ladda ner den\n"
|
||||
"- Välj \"Nej\" för att avbryta operationen"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Begränsa Windows till S-läge (INKOMPATIBEL med förbikoppling av onlinekonto)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Expertläge"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Extraherar arkivfiler: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Använd Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
@ -1913,7 +1979,7 @@ msgstr "Skapa BIOS- eller UEFI-startbara enheter, inklusive UEFI-startbar NTFS"
|
|||
|
||||
#. • MSG_915
|
||||
msgid "Create 'Windows To Go' drives"
|
||||
msgstr "Skapa 'Windows To Go'-enheter"
|
||||
msgstr "Skapa \"Windows To Go\"-enheter"
|
||||
|
||||
#. • MSG_916
|
||||
msgid "Create Windows 11 installation drives for PCs that don't have TPM or Secure Boot"
|
||||
|
@ -1941,4 +2007,4 @@ msgstr "Ladda ner officiella Microsoft Windows ISO-filer"
|
|||
|
||||
#. • MSG_922
|
||||
msgid "Download UEFI Shell ISOs"
|
||||
msgstr "Ladda ner UEFI-shell ISO-filer"
|
||||
msgstr "Ladda ner UEFI-skal ISO-filer"
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-23 15:14+0300\n"
|
||||
"PO-Revision-Date: 2023-04-05 12:42+0200\n"
|
||||
"POT-Creation-Date: 2024-04-28 09:05+0300\n"
|
||||
"PO-Revision-Date: 2024-04-28 09:32+0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: tr_TR\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Turkish (Türkçe)\n"
|
||||
"X-Rufus-LCID: 0x041F\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "USB Sabit Sürücüleri Listele"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Eski BIOSlar için düzeltme ekle (ekstra bölüm, hizalama vs.)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Rufus MBR kullan. BIOS Kimliği Seçin"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Çalışma zamanı UEFI ortam doğrulamasını etkinleştir"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Uluslararası etiketleri görüntülemek için bu onay kutusunu seçin ve aygıt simgesini belirleyin (autorun.inf oluşturur)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Açılış seçimine izin veren ve BIOS USB Sürücü kimliğini taklit edebilen bir MBR yükler"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"İlk açılabilir USB sürücüsünü farklı bir disk olarak taklit etmeye çalış (genellikle 0x80).\n"
|
||||
"Bu sadece Windows XP yüklemesinde ve birden fazla diske varsa gerekebilir."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Medyanın MD5Sum dosya doğrulamasını gerçekleştirecek bir UEFI önyükleyici yükleyin"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1798,7 +1788,7 @@ msgid ""
|
|||
"The image you have selected is an ISOHybrid, but its creators have not made it compatible with ISO/File copy mode.\n"
|
||||
"As a result, DD image writing mode will be enforced."
|
||||
msgstr ""
|
||||
"Seçtiğiniz yansı bir ISOHybrid, ancak yansı ISO/Dosya kopyalama modu ile uyumlu hale olrak oluşturulmamış.\n"
|
||||
"Seçtiğiniz yansı bir ISOHybrid, ancak yansı ISO/Dosya kopyalama modu ile uyumlu hale olrak oluşturulmamış.\n"
|
||||
"Sonuç olarak, DD yansısı yazma modu uygulanacaktır."
|
||||
|
||||
#. • MSG_322
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "BitLocker otomatik cihaz şifrelemesini devre dışı bırakın"
|
|||
msgid "Persistent log"
|
||||
msgstr "Kalıcı günlük"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"MS-DOS'u yüklemek için Microsoft'tan ek bir dosyanın ('diskcopy.dll') indirilmesi gerekir:\n"
|
||||
"- İnternete bağlanıp indirmek için 'Evet'i seçin\n"
|
||||
"- İşlemden vazgeçmek için 'Hayır'ı seçin\n"
|
||||
"\n"
|
||||
"Not: Dosya uygulamanın dizinine indirilecek ve varsa otomatik olarak yeniden kullanılacaktır."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "İptal edilen UEFI önyükleyici algılandı"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus, seçtiğiniz ISO'nun iptal edilmiş bir UEFI önyükleyici içerdiğini ve tamamen güncel bir UEFI sisteminde Güvenli Önyükleme etkinleştirildiğinde %s oluşturacağını algıladı.\n"
|
||||
"\n"
|
||||
"- Bu ISO görüntüsünü saygın olmayan bir kaynaktan aldıysanız, bunun UEFI kötü amaçlı yazılım içerme olasılığını göz önünde bulundurmalı ve bu görüntüden önyükleme yapmaktan kaçınmalısınız.\n"
|
||||
"- Eğer güvenilir bir kaynaktan aldıysanız bu uyarıyı vermeyecek daha güncel bir versiyon bulmaya çalışmalısınız."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "\"Güvenlik İhlali\" ekranı"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "'%s' içeren bir Windows Kurtarma Ekranı (BSOD)"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Sıkıştırılmış VHDX Yansısı"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Sıkıştırılmamış VHD Yansısı"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Full Flash Update Yansısı"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Bu işlevselliği kullanmak için Microsoft'tan bazı ek verilerin indirilmesi gerekir:\n"
|
||||
"- İnternete bağlanıp indirmek için 'Evet'i seçin\n"
|
||||
"- İşlemden vazgeçmek için 'Hayır'ı seçin"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Windows'u S-Mode ile Kısıtlayın (çevrimiçi hesap atlamayla UYUMSUZ)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Uzman Modu"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Arşiv dosyaları çıkarılıyor: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Rufus MBR'yi kullanın"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-03-09 10:21+0200\n"
|
||||
"PO-Revision-Date: 2023-03-12 14:09+0000\n"
|
||||
"POT-Creation-Date: 2024-05-14 13:59+0300\n"
|
||||
"PO-Revision-Date: 2024-05-15 21:15+0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: uk_UA\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Ukrainian (Українська)\n"
|
||||
"X-Rufus-LCID: 0x0422\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Список USB накопичувачів"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Додати виправлення для старих BIOS (додатковий розділ, вирівнювання, тощо)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Використовувати Rufus MBR з BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Увімкнути перевірку носія UEFI під час виконання"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -92,7 +90,7 @@ msgstr "Створити розширену мітку та значок при
|
|||
|
||||
#. • IDD_DIALOG → IDS_STATUS_TXT
|
||||
msgid "Status"
|
||||
msgstr "Статус"
|
||||
msgstr "Стан"
|
||||
|
||||
#. • IDD_DIALOG → IDCANCEL
|
||||
#. • IDD_LICENSE → IDCANCEL
|
||||
|
@ -433,7 +431,7 @@ msgstr "Вибраний пристрій захищений від запису
|
|||
|
||||
#. • MSG_055
|
||||
msgid "The device is in use by another process. Please close any other process that may be accessing the device."
|
||||
msgstr "Вибраний пристрій використовується іншим процесом. Будь ласка, закінчіть процес перед використанням вибраного пристрою."
|
||||
msgstr "Вибраний пристрій використовується іншим процесом. Будь ласка, завершіть процес перед використанням вибраного пристрою."
|
||||
|
||||
#. • MSG_056
|
||||
msgid "Quick format is not available for this device."
|
||||
|
@ -575,9 +573,9 @@ msgstr ""
|
|||
"Через це завантажувальне меню може відображатися неправильно.\n"
|
||||
"\n"
|
||||
"Нову версію можна завантажити за допомогою Rufus:\n"
|
||||
"- Оберіть 'Так', щоб завантажити файл з інтернету\n"
|
||||
"- Оберіть 'Ні', щоб не модифікувати ISO-образ\n"
|
||||
"Якщо ви не знаєте що робити, то оберіть 'Так'.\n"
|
||||
"- Виберіть 'Так', щоб завантажити файл з інтернету\n"
|
||||
"- Виберіть 'Ні', щоб не модифікувати ISO-образ\n"
|
||||
"Якщо ви не знаєте що робити, то виберіть 'Так'.\n"
|
||||
"\n"
|
||||
"Файл буде завантажений в поточну директорію, а в разі наявності '%s' - замінений автоматично."
|
||||
|
||||
|
@ -614,7 +612,7 @@ msgstr "Непідтримуваний ISO-образ"
|
|||
|
||||
#. • MSG_091
|
||||
msgid "When using UEFI Target Type, only EFI bootable ISO images are supported. Please select an EFI bootable ISO or set the Target Type to BIOS."
|
||||
msgstr "При використанні системного інтерфейсу UEFI підтримуються тільки завантажувальні EFI ISO-образи. Будь ласка, оберіть завантажувальний EFI ISO-образ чи змініть системний інтерфейс на BIOS."
|
||||
msgstr "При використанні системного інтерфейсу UEFI підтримуються тільки завантажувальні EFI ISO-образи. Будь ласка, виберіть завантажувальний EFI ISO-образ чи змініть системний інтерфейс на BIOS."
|
||||
|
||||
#. • MSG_092
|
||||
msgid "Unsupported filesystem"
|
||||
|
@ -702,8 +700,8 @@ msgstr ""
|
|||
"Оскільки цей файл більший за 100 Кб, і завжди присутній в %s ISO-образах, він не був вбудований в Rufus.\n"
|
||||
"\n"
|
||||
"Rufus може завантажити відсутній файл:\n"
|
||||
"- Оберіть 'Так', якщо хочете завантажити даний файл\n"
|
||||
"- Оберіть 'Ні', якщо хочете завантажити його вручну пізніше\n"
|
||||
"- Виберіть 'Так', якщо хочете завантажити даний файл\n"
|
||||
"- Виберіть 'Ні', якщо хочете завантажити його вручну пізніше\n"
|
||||
"\n"
|
||||
"Примітка: Файл буде завантажений в поточну директорію. За наявності '%s', він буде перезаписаний автоматично."
|
||||
|
||||
|
@ -717,7 +715,7 @@ msgstr ""
|
|||
|
||||
#. • MSG_106
|
||||
msgid "Please select folder"
|
||||
msgstr "Будь ласка, оберіть теку"
|
||||
msgstr "Будь ласка, виберіть теку"
|
||||
|
||||
#. • MSG_107
|
||||
msgid "All files"
|
||||
|
@ -769,8 +767,8 @@ msgstr ""
|
|||
"Даний образ використовує Syslinux %s%s, проте даний додаток включає в себе тільки настановні файли для Syslinux %s%s.\n"
|
||||
"\n"
|
||||
"Так як нові версії Syslinux несумісні одна з одною, необхідно, щоб додаткові файли ('ldlinux.sys' та 'ldlinux.bss') були завантажені з інтернету:\n"
|
||||
"- Оберіть 'Так', щоб завантажити файли з інтернету\n"
|
||||
"- Оберіть 'Ні', щоб відмінити операцію\n"
|
||||
"- Виберіть 'Так', щоб завантажити файли з інтернету\n"
|
||||
"- Виберіть 'Ні', щоб відмінити операцію\n"
|
||||
"\n"
|
||||
"Примітка: Файли будуть завантажені в поточний каталог додатку і будуть використовуватися повторно за необхідності."
|
||||
|
||||
|
@ -795,9 +793,9 @@ msgstr ""
|
|||
"Даний образ використовує завантажувач Grub %s, але додаток включає тільки настановні файли для завантажувача Grub %s.\n"
|
||||
"\n"
|
||||
"Різні версії завантажувача Grub можуть бути несумісними одна з одною та увімкнення їх усіх не являється можливим. Rufus намагатиметься знайти потрібну версію настановного файла завантажувача Grub ('core.img'), що відповідає версії завантажувача вашого образу:\n"
|
||||
"- Оберіть 'Так', щоб скачати завантажувальний файл з Інтернета\n"
|
||||
"- Оберіть 'Ні', щоб використовувати версію за замовчуванням із Rufus\n"
|
||||
"- Оберіть 'Відмінити', щоб відмінити операцію\n"
|
||||
"- Виберіть 'Так', щоб скачати завантажувальний файл з інтернету\n"
|
||||
"- Виберіть 'Ні', щоб використовувати версію за замовчуванням із Rufus\n"
|
||||
"- Виберіть 'Відмінити', щоб відмінити операцію\n"
|
||||
"\n"
|
||||
"Примітка: Файл буде завантажено в поточний каталог додатку та буде використаний повторно наступного разу. Якщо потрібна версія настановного файла не буде знайдена в інтернеті, то буде використовуватися версія за замовчуванням."
|
||||
|
||||
|
@ -811,7 +809,7 @@ msgstr "Стандартне встановлення Windows"
|
|||
#. http://en.wikipedia.org/wiki/Windows_To_Go in your language.
|
||||
#. Otherwise, you may add a parenthesis eg. "Windows To Go (<hint at what it does>)"
|
||||
msgid "Windows To Go"
|
||||
msgstr "Windows To Go"
|
||||
msgstr ""
|
||||
|
||||
#. • MSG_119
|
||||
msgid "advanced drive properties"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Дозволити відображення міток з міжнародними символами та задати значок пристрою (створюється autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Використовувати MBR, що дозволяє вибрати завантажувач та може замаскувати ідентифікатор пристрою в BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Спробуйте замаскувати перший завантажувальний USB-накопичувач (зазвичай 0x80) як інший диск.\n"
|
||||
"Це необхідно тільки якщо ви встановлюєте Windows XP та маєте більше ніж один диск."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Встановити завантажувач UEFI, який буде виконувати перевірку MD5Sum"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1095,7 +1085,7 @@ msgstr "Версія %d.%d (Збірка %d)"
|
|||
|
||||
#. • MSG_176
|
||||
msgid "English translation: Pete Batard <mailto:pete@akeo.ie>"
|
||||
msgstr "Українською переклав:\\line• Великожон Костянтин <mailto:mind.converter@gmail.com>"
|
||||
msgstr "Українською переклав: Великожон Костянтин <mailto:mind.converter@gmail.com>"
|
||||
|
||||
#. • MSG_177
|
||||
msgid "Report bugs or request enhancements at:"
|
||||
|
@ -1566,7 +1556,7 @@ msgstr ""
|
|||
"Rufus рекомендує використовувати %s режим для повного доступу до диска після запису.\n"
|
||||
"Однак, якщо ви зіштовхнетесь з проблемами під час завантаження ви можете ще раз спробувати записати образ в %s режимі.\n"
|
||||
"\n"
|
||||
"Будь ласка, оберіть режим, який ви хочете використовувати для запису обраного образа:"
|
||||
"Будь ласка, виберіть режим, який ви хочете використовувати для запису обраного образа:"
|
||||
|
||||
#. • MSG_276
|
||||
#.
|
||||
|
@ -1594,7 +1584,7 @@ msgstr "Диск чи ISO-образ"
|
|||
|
||||
#. • MSG_281
|
||||
msgid "%s (Please select)"
|
||||
msgstr "%s (Будь ласка, оберіть)"
|
||||
msgstr "%s (Будь ласка, виберіть)"
|
||||
|
||||
#. • MSG_282
|
||||
msgid "Exclusive USB drive locking"
|
||||
|
@ -1686,7 +1676,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Розмір вибраного файла ISO не співпадає з оголошеним розміром: %s даних відсутні!\n"
|
||||
"\n"
|
||||
"Якщо ви завантажили цей файл з Інтернету, вам слід завантажити нову копію файла або перевірити співпадіння контрольних сум MD5 чи SHA з офіційним файлом.\n"
|
||||
"Якщо ви завантажили цей файл з інтернету, вам слід завантажити нову копію файла або перевірити співпадіння контрольних сум MD5 чи SHA з офіційним файлом.\n"
|
||||
"\n"
|
||||
"Пам'ятайте, що ви можете порівняти MD5 чи SHA в Rufus, натиснувши кнопку (✓)."
|
||||
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Вимкнути автоматичне шифрування прист
|
|||
msgid "Persistent log"
|
||||
msgstr "Постійний журнал"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Необхідно завантажити додатковий файл ('diskcopy.dll') з сайту Microsoft для встановлення MS-DOS:\n"
|
||||
"- Виберіть 'Так' для з'єднання з інтернетом та його завантаження\n"
|
||||
"- Виберіть 'Ні' для скасування операції\n"
|
||||
"\n"
|
||||
"Примітка: файл буде завантажено в каталог додатку та повторно використано за наявності."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Виявлено відкликаний завантажувач UEFI"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus виявив, що вибраний ISO містить відкликаний завантажувач UEFI, що буде створювати %s, коли в оновленій системі UEFI буде ввімкнено безпечне завантаження.\n"
|
||||
"\n"
|
||||
"- Якщо ви отримали цей образ з неперевіреного джерела, Вам слід розглянути можливість того, що він може містити зловмисне ПЗ і уникнути завантаження з нього.\n"
|
||||
"- Якщо ви отримали цей образ з довіреного джерела, Вам слід спробувати знайти більш актуальну версію, що не буде провокувати це попередження."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "вікно \"Security Violation\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "вікно Windows Recovery Screen (BSOD) з '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Образ VHDX зі стисненням"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Образ VHD без стиснення"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Образ Full Flash Update"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Для використання даного функціоналу необхідно завантажити деякі додаткові дані з сайту Microsoft:\n"
|
||||
"- Виберіть 'Так' для з'єднання з інтернетом та завантаження даних\n"
|
||||
"- Виберіть 'Ні' для скасування операції"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Обмежити Windows до S-Mode (НЕСУМІСНО з обходом облікового запису)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Просунутий режим"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Видобування архівованих файлів: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Використовувати Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-04-16 06:07+0700\n"
|
||||
"PO-Revision-Date: 2023-04-17 13:37+0100\n"
|
||||
"POT-Creation-Date: 2024-04-26 02:45+0900\n"
|
||||
"PO-Revision-Date: 2024-04-26 03:13+0900\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: vi_VN\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Vietnamese (Tiếng Việt)\n"
|
||||
"X-Rufus-LCID: 0x042A\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "Danh sách ổ cứng USB"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "Thêm khắc phục cho BIOS cũ (phân vùng, sắp xếp...khác)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "Dùng MBR của Rufus với ID BIOS"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "Bật xác thực phương tiện UEFI tại thời điểm chạy"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1043,16 +1041,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "Chọn mục này để cho phép hiện tên ổ đĩa toàn hệ thống và đặt biểu tượng thiết bị (khởi tạo autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "Cài đặt một MBR cho phép lựa chọn khởi động và có thể giả ID ổ đĩa USB BIOS"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"Thử giả ổ đĩa USB khởi động đầu tiên (thường là 0x80) như một đĩa khác.\n"
|
||||
"Điều này chỉ cần thiết nếu bạn cài đặt Windows XP và có nhiều hơn một đĩa."
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "Cài đặt bộ khởi động UEFI, cùng với việc tiến trình xác thực MD5Sum của phương tiện"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1853,6 +1843,82 @@ msgstr "Vô hiệu tự động mã hoá thiết bị BitLocker"
|
|||
msgid "Persistent log"
|
||||
msgstr "Nhật ký"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"Một tệp tin bổ sung ('diskcopy.dll') phải được tải về từ Microsoft để cài đặt MS-DOS:\n"
|
||||
"- Chọn 'Có' để kết nối tới Internet và tải nó xuống\n"
|
||||
"- Chọn 'Không' để huỷ tiến trình\n"
|
||||
"\n"
|
||||
"Ghi chú: Tệp tin sẽ được tải xuống tại đường dẫn của phần mềm và sẽ được tự động tái sử dụng nếu có sẵn."
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "Đã phát hiện bộ khởi động UEFI bị thu hồi"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus đã phát hiện ra rằng tệp ISO bạn đã chọn có chứa một bộ khởi động UEFI đã bị thu hồi và nó sẽ tạo ra %s, khi Secure Boot được kích hoạt trên một hệ thống UEFI được cập nhật đầy đủ và mới nhất.\n"
|
||||
"\n"
|
||||
"- Nếu bạn sở hữu tệp ISO này từ một nguồn không đáng tin cậy, bạn nên cân nhắc khả năng có thể chứa mã độc UEFI và tránh khởi động từ nó.\n"
|
||||
"- Nếu bạn sở hữu từ một nguồn uy tín, bạn nên thử tìm một bản mới hơn, theo đó cảnh báo này sẽ không hiện ra."
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "một màn hình \"Vi phạm Bảo mật\""
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "một Màn hình Khôi phục Windows (BSOD) với '%s'"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "Tệp VHDX đã nén"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "Tệp VHD chưa nén"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "Ghi Đầy đủ Tệp Cập nhật"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"Một vài dữ lieu phải được tải xuống từ Microsoft để sử dụng tính năng này:\n"
|
||||
"- Chọn 'Có' để kết nối tới Internet và tải xuống nó\n"
|
||||
"- Chọn 'Không' để huỷ tiến trình"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "Giới hạn Windows vào S-Mode (KHÔNG TƯƠNG THÍCH với việc bỏ qua tài khoản trực tuyến)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "Chế độ Chuyên nghiệp"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "Đang giải nén tệp lưu trữ: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "Sử dụng Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 3.22\n"
|
||||
"Project-Id-Version: 4.5\n"
|
||||
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
|
||||
"POT-Creation-Date: 2023-02-19 23:07+0800\n"
|
||||
"PO-Revision-Date: 2023-02-20 13:37+0000\n"
|
||||
"POT-Creation-Date: 2024-04-28 10:38+0800\n"
|
||||
"PO-Revision-Date: 2024-04-28 10:59+0800\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"Language: zh_CN\n"
|
||||
|
@ -13,7 +13,7 @@ msgstr ""
|
|||
"X-Poedit-SourceCharset: UTF-8\n"
|
||||
"X-Rufus-LanguageName: Chinese Simplified (简体中文)\n"
|
||||
"X-Rufus-LCID: 0x0804, 0x1004\n"
|
||||
"X-Generator: Poedit 3.2.2\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
|
||||
msgid "Drive Properties"
|
||||
|
@ -54,13 +54,11 @@ msgstr "显示 USB 外置硬盘"
|
|||
msgid "Add fixes for old BIOSes (extra partition, align, etc.)"
|
||||
msgstr "添加对旧 BIOS 修正(额外的分区,校准等)"
|
||||
|
||||
#. • IDD_DIALOG → IDC_RUFUS_MBR
|
||||
#. • IDD_DIALOG → IDC_UEFI_MEDIA_VALIDATION
|
||||
#.
|
||||
#. 'MBR': See http://en.wikipedia.org/wiki/Master_boot_record
|
||||
#. Rufus can install it's own custom MBR (the Rufus MBR), which also allows users to
|
||||
#. specify a custom disk ID for the BIOS. The tooltip for this control is MSG_167.
|
||||
msgid "Use Rufus MBR with BIOS ID"
|
||||
msgstr "使用 Rufus MBR 配合 BIOS ID"
|
||||
#. It is acceptable to drop the "runtime" if you are running out of space
|
||||
msgid "Enable runtime UEFI media validation"
|
||||
msgstr "启用运行时 UEFI 介质验证"
|
||||
|
||||
#. • IDD_DIALOG → IDS_FORMAT_OPTIONS_TXT
|
||||
msgid "Format Options"
|
||||
|
@ -1047,16 +1045,8 @@ msgid "Check this box to allow the display of international labels and set a dev
|
|||
msgstr "勾选本框允许国际卷标的显示并设置一个设备图标(创建一个 autorun.inf)"
|
||||
|
||||
#. • MSG_167
|
||||
msgid "Install an MBR that allows boot selection and can masquerade the BIOS USB drive ID"
|
||||
msgstr "安装一个可以引导选择内容并可以伪装 BIOS USB 盘 ID 的 MBR"
|
||||
|
||||
#. • MSG_168
|
||||
msgid ""
|
||||
"Try to masquerade first bootable USB drive (usually 0x80) as a different disk.\n"
|
||||
"This should only be necessary if you install Windows XP and have more than one disk."
|
||||
msgstr ""
|
||||
"尝试将首个可引导的 USB 驱动器 (通常为 0x80) 伪装为不同的磁盘。\n"
|
||||
"只有当您安装 Windows XP,并拥有多个磁盘时才需要此选项。"
|
||||
msgid "Install a UEFI bootloader, that will perform MD5Sum file validation of the media"
|
||||
msgstr "安装 UEFI 引导加载器,该加载器将对介质进行 MD5 校验"
|
||||
|
||||
#. • MSG_169
|
||||
msgid ""
|
||||
|
@ -1859,6 +1849,82 @@ msgstr "禁用 BitLocker 自动设备加密"
|
|||
msgid "Persistent log"
|
||||
msgstr "持久化日志"
|
||||
|
||||
#. • MSG_337
|
||||
msgid ""
|
||||
"An additional file ('diskcopy.dll') must be downloaded from Microsoft to install MS-DOS:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation\n"
|
||||
"\n"
|
||||
"Note: The file will be downloaded in the application's directory and will be reused automatically if present."
|
||||
msgstr ""
|
||||
"必须从微软下载额外的文件(\"diskcopy.dll\"),以安装 MS-DOS:\n"
|
||||
"- 选择 '是' 连接网络并下载这些文件\n"
|
||||
"- 选择 '否' 取消此项操作\n"
|
||||
"\n"
|
||||
"注意:文件将会被下载到当前应用程序目录,如果存在则会自动选用。"
|
||||
|
||||
#. • MSG_338
|
||||
msgid "Revoked UEFI bootloader detected"
|
||||
msgstr "检测到被吊销的 UEFI 引导加载器"
|
||||
|
||||
#. • MSG_339
|
||||
msgid ""
|
||||
"Rufus detected that the ISO you have selected contains a UEFI bootloader that has been revoked and that will produce %s, when Secure Boot is enabled on a fully up to date UEFI system.\n"
|
||||
"\n"
|
||||
"- If you obtained this ISO image from a non reputable source, you should consider the possibility that it might contain UEFI malware and avoid booting from it.\n"
|
||||
"- If you obtained it from a trusted source, you should try to locate a more up to date version, that will not produce this warning."
|
||||
msgstr ""
|
||||
"Rufus 检测到您选择的 ISO 包含一个已被吊销的 UEFI 引导加载器,当在最新的 UEFI 系统上启用安全启动时,将产生%s。\n"
|
||||
"\n"
|
||||
"- 如果您从非可信来源获取此 ISO 镜像,则应考虑其中可能包含 UEFI 恶意软件,应当避免启动此镜像。\n"
|
||||
"- 如果是从可信来源获取的,则应尝试查找不会产生此警告的最新版本。"
|
||||
|
||||
#. • MSG_340
|
||||
msgid "a \"Security Violation\" screen"
|
||||
msgstr "一个“安全违规”界面"
|
||||
|
||||
#. • MSG_341
|
||||
msgid "a Windows Recovery Screen (BSOD) with '%s'"
|
||||
msgstr "一个包含 '%s' 的蓝屏界面"
|
||||
|
||||
#. • MSG_342
|
||||
msgid "Compressed VHDX Image"
|
||||
msgstr "压缩的 VHDX 镜像"
|
||||
|
||||
#. • MSG_343
|
||||
msgid "Uncompressed VHD Image"
|
||||
msgstr "未压缩的 VHD 镜像"
|
||||
|
||||
#. • MSG_344
|
||||
msgid "Full Flash Update Image"
|
||||
msgstr "完整闪存更新镜像"
|
||||
|
||||
#. • MSG_345
|
||||
msgid ""
|
||||
"Some additional data must be downloaded from Microsoft to use this functionality:\n"
|
||||
"- Select 'Yes' to connect to the Internet and download it\n"
|
||||
"- Select 'No' to cancel the operation"
|
||||
msgstr ""
|
||||
"使用此功能需要从微软下载一些额外数据:\n"
|
||||
"- 选择 '是' 连接网络并下载这些文件\n"
|
||||
"- 选择 '否' 取消此项操作"
|
||||
|
||||
#. • MSG_346
|
||||
msgid "Restrict Windows to S-Mode (INCOMPATIBLE with online account bypass)"
|
||||
msgstr "将 Windows 限制为 S 模式(与绕过在线账户功能不兼容)"
|
||||
|
||||
#. • MSG_347
|
||||
msgid "Expert Mode"
|
||||
msgstr "专家模式"
|
||||
|
||||
#. • MSG_348
|
||||
msgid "Extracting archive files: %s"
|
||||
msgstr "正在解压文件: %s"
|
||||
|
||||
#. • MSG_349
|
||||
msgid "Use Rufus MBR"
|
||||
msgstr "使用 Rufus MBR"
|
||||
|
||||
#. • MSG_900
|
||||
#.
|
||||
#. The following messages are for the Windows Store listing only and are not used by the application
|
||||
|
@ -1902,7 +1968,7 @@ msgstr "将 U 盘、存储卡或虚拟驱动器格式化为 FAT/FAT32/NTFS/UDF/e
|
|||
|
||||
#. • MSG_911
|
||||
msgid "Create FreeDOS bootable USB drives"
|
||||
msgstr "创建 FreeDOS 可启动驱动器"
|
||||
msgstr "创建 FreeDOS 可启动驱动器"
|
||||
|
||||
#. • MSG_912
|
||||
msgid "Create bootable drives from bootable ISOs (Windows, Linux, etc.)"
|
||||
|
|
|
@ -1802,43 +1802,43 @@ msgstr "無法開啟或讀取 '%s'"
|
|||
|
||||
#. • MSG_325
|
||||
msgid "Applying Windows customization: %s"
|
||||
msgstr "正在應用 Windows 自定義設置:%s"
|
||||
msgstr "正在套用 Windows 客製化設定:%s"
|
||||
|
||||
#. • MSG_326
|
||||
msgid "Applying user options..."
|
||||
msgstr "正在應用用戶設置..."
|
||||
msgstr "正在套用使用者設定..."
|
||||
|
||||
#. • MSG_327
|
||||
msgid "Windows User Experience"
|
||||
msgstr "Windows 用戶體驗"
|
||||
msgstr "Windows 使用者體驗"
|
||||
|
||||
#. • MSG_328
|
||||
msgid "Customize Windows installation?"
|
||||
msgstr "自定義 Windows 安裝?"
|
||||
msgstr "客製化 Windows 安裝?"
|
||||
|
||||
#. • MSG_329
|
||||
msgid "Remove requirement for 4GB+ RAM, Secure Boot and TPM 2.0"
|
||||
msgstr "移除對 4GB+ 內存、安全引導和 TPM 2.0 的要求"
|
||||
msgstr "移除對 4GB+ 記憶體、安全開機和 TPM 2.0 的要求"
|
||||
|
||||
#. • MSG_330
|
||||
msgid "Remove requirement for an online Microsoft account"
|
||||
msgstr "移除對登錄微軟賬戶的要求"
|
||||
msgstr "將登入微軟帳號的要求移除"
|
||||
|
||||
#. • MSG_331
|
||||
msgid "Disable data collection (Skip privacy questions)"
|
||||
msgstr "關閉數據收集 (跳過隱私設置)"
|
||||
msgstr "關閉資料收集 (跳過隱私設定)"
|
||||
|
||||
#. • MSG_332
|
||||
msgid "Prevent Windows To Go from accessing internal disks"
|
||||
msgstr "阻止 Windows To Go 訪問內部磁盤"
|
||||
msgstr "防止 Windows To Go 存取內部磁碟"
|
||||
|
||||
#. • MSG_333
|
||||
msgid "Create a local account with username:"
|
||||
msgstr "創建一個使用此用戶名的本地賬號:"
|
||||
msgstr "使用此使用者名建立一個本機帳戶:"
|
||||
|
||||
#. • MSG_334
|
||||
msgid "Set regional options to the same values as this user's"
|
||||
msgstr "使用當前用戶的區域設置"
|
||||
msgstr "使用目前用戶的區域設定"
|
||||
|
||||
#. • MSG_335
|
||||
msgid "Disable BitLocker automatic device encryption"
|
||||
|
@ -1860,7 +1860,7 @@ msgstr "官方網站: %s"
|
|||
|
||||
#. • MSG_902
|
||||
msgid "Source Code: %s"
|
||||
msgstr "源代碼: %s"
|
||||
msgstr "源始碼: %s"
|
||||
|
||||
#. • MSG_903
|
||||
msgid "ChangeLog: %s"
|
||||
|
@ -1887,52 +1887,52 @@ msgstr "啟動"
|
|||
#.
|
||||
#. This and subsequent messages will be listed in the 'Features' section of the Windows Store page
|
||||
msgid "Format USB, flash card and virtual drives to FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3"
|
||||
msgstr "將 U 盤、存儲卡或虛擬驅動器格式化為 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 格式"
|
||||
msgstr "將隨身碟、記憶卡或虛擬光碟機格式化為 FAT/FAT32/NTFS/UDF/exFAT/ReFS/ext2/ext3 格式"
|
||||
|
||||
#. • MSG_911
|
||||
msgid "Create FreeDOS bootable USB drives"
|
||||
msgstr "創建 FreeDOS 可啟動驅動器"
|
||||
msgstr "建立 FreeDOS 可啟隨身碟"
|
||||
|
||||
#. • MSG_912
|
||||
msgid "Create bootable drives from bootable ISOs (Windows, Linux, etc.)"
|
||||
msgstr "從可啟動 ISO 文件 (Windows 和 Linux 等) 創建可啟動驅動器"
|
||||
msgstr "從可啟動 ISO 檔案 (Windows 和 Linux 等) 建立可啟動隨身碟"
|
||||
|
||||
#. • MSG_913
|
||||
msgid "Create bootable drives from bootable disk images, including compressed ones"
|
||||
msgstr "從可啟動硬盤鏡像 (包括壓縮鏡像) 創建可啟動驅動器"
|
||||
msgstr "從可啟動硬碟映像檔 (包括壓縮映像檔) 建立可啟動隨身碟"
|
||||
|
||||
#. • MSG_914
|
||||
msgid "Create BIOS or UEFI bootable drives, including UEFI bootable NTFS"
|
||||
msgstr "創建 BIOS 或 UEFI 可啟動驅動器,包括 UEFI 可啟動的 NTFS 驅動器"
|
||||
msgstr "建立 BIOS 或 UEFI 可啟動隨身碟,包括 UEFI 可啟動的 NTFS 隨身碟"
|
||||
|
||||
#. • MSG_915
|
||||
msgid "Create 'Windows To Go' drives"
|
||||
msgstr "創建 'Windows To Go' 驅動"
|
||||
msgstr "建立 'Windows To Go' 隨身碟"
|
||||
|
||||
#. • MSG_916
|
||||
msgid "Create Windows 11 installation drives for PCs that don't have TPM or Secure Boot"
|
||||
msgstr "為沒有 TPM 或安全啟動功能的電腦創建 Windows 11 安裝驅動"
|
||||
msgstr "為沒有 TPM 或安全開機功能的電腦建立 Windows 11 安裝隨身碟"
|
||||
|
||||
#. • MSG_917
|
||||
msgid "Create persistent Linux partitions"
|
||||
msgstr "創建持久 Linux 分區"
|
||||
msgstr "建立持續性 Linux 磁區"
|
||||
|
||||
#. • MSG_918
|
||||
msgid "Create VHD/DD images of the selected drive"
|
||||
msgstr "為選中的驅動創建 VHD/DD 鏡像"
|
||||
msgstr "為選中的磁碟機建立 VHD/DD 映像檔"
|
||||
|
||||
#. • MSG_919
|
||||
msgid "Compute MD5, SHA-1, SHA-256 and SHA-512 checksums of the selected image"
|
||||
msgstr "計算被選中鏡像的 MD5、SHA-1、SHA-256 和 SHA-512 校驗碼"
|
||||
msgstr "計算被選中映像的 MD5、SHA-1、SHA-256 和 SHA-512 檢查碼"
|
||||
|
||||
#. • MSG_920
|
||||
msgid "Perform bad blocks checks, including detection of \"fake\" flash drives"
|
||||
msgstr "執行壞塊檢查,包括對”假“USB 快閃磁碟機的檢測"
|
||||
msgstr "執行壞軌檢查,包括對”假“USB 快閃磁碟機的偵測"
|
||||
|
||||
#. • MSG_921
|
||||
msgid "Download official Microsoft Windows retail ISOs"
|
||||
msgstr "下載微軟官方 Windows 鏡像"
|
||||
msgstr "下載微軟官方 Windows 映像檔"
|
||||
|
||||
#. • MSG_922
|
||||
msgid "Download UEFI Shell ISOs"
|
||||
msgstr "下載 UEFI Shell 鏡像"
|
||||
msgstr "下載 UEFI Shell 映像檔"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Poedit <-> rufus.loc conversion utility
|
||||
* Copyright © 2018-2023 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2018-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -41,9 +41,9 @@ using System.Windows.Forms;
|
|||
[assembly: AssemblyDescription("Poedit ↔ Rufus loc conversion utility")]
|
||||
[assembly: AssemblyCompany("Akeo Consulting")]
|
||||
[assembly: AssemblyProduct("Pollock")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2018-2023 Pete Batard <pete@akeo.ie>")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2018-2024 Pete Batard <pete@akeo.ie>")]
|
||||
[assembly: AssemblyTrademark("GNU GPLv3")]
|
||||
[assembly: AssemblyVersion("1.5.*")]
|
||||
[assembly: AssemblyVersion("1.6.*")]
|
||||
|
||||
namespace pollock
|
||||
{
|
||||
|
@ -1244,9 +1244,9 @@ Retry:
|
|||
|
||||
if ((list.Count >= 2) && (index >= 0))
|
||||
{
|
||||
Process.Start($"mailto:pete@akeo.ie?subject=Rufus {list[index][0]} translation v{list[0][2]} update" +
|
||||
$"&body=Hi Pete,%0D%0A%0D%0APlease find attached the latest {list[index][0]} translation." +
|
||||
$"%0D%0A%0D%0A<PLEASE ATTACH '{app_dir}{po_file}' AND REMOVE THIS LINE>" +
|
||||
Process.Start($"mailto:pete@akeo.ie?subject=Rufus%20{list[index][0]}%20translation%20v{list[0][2]}%20update" +
|
||||
$"&body=Hi%20Pete,%0D%0A%0D%0APlease%20find%20attached%20the%20latest%20{list[index][0]}%20translation." +
|
||||
$"%0D%0A%0D%0A<PLEASE%20ATTACH%20'{app_dir}{po_file}'%20AND%20REMOVE%20THIS%20LINE>" +
|
||||
$"%0D%0A%0D%0ARegards,");
|
||||
}
|
||||
return;
|
||||
|
|
1775
res/loc/rufus.loc
|
@ -0,0 +1,3 @@
|
|||
This directory contains the uefi-md5sum bootloaders added by Rufus for media validation.
|
||||
|
||||
See https://github.com/pbatard/uefi-md5sum for details.
|
|
@ -0,0 +1,208 @@
|
|||
#
|
||||
# SspToBar.ps1 - SkuSiPolicy.p7b revoked PE256 hashes to C byte array converter
|
||||
# Copyright © 2023 Pete Batard <pete@akeo.ie>
|
||||
# Heavily derived from https://gist.github.com/mattifestation/92e545bf1ee5b68eeb71d254cec2f78e
|
||||
# Copyright © 2016-2019 Matthew Graeber with contributions by James Forshaw
|
||||
#
|
||||
# License: BSD 3-Clause
|
||||
#
|
||||
|
||||
# This script is generates the pe256ssp[] byte array from Rufus' db.h
|
||||
|
||||
#region Parameters
|
||||
[cmdletbinding()]
|
||||
param(
|
||||
# (Optional) The path to the .p7b to process
|
||||
[string]$BinaryFilePath = "SkuSiPolicy.p7b",
|
||||
# (Optional) Output the straight values
|
||||
[switch]$Raw = $false
|
||||
)
|
||||
#endregion
|
||||
|
||||
Add-Type -AssemblyName 'System.Security'
|
||||
|
||||
$BinPath = Resolve-Path $BinaryFilePath
|
||||
$GuidLength = 0x10
|
||||
$Pe256HashLength = 0x20
|
||||
$HeaderLengthMax = 0x44
|
||||
|
||||
# Helper function to read strings from the binary
|
||||
function Get-BinaryString {
|
||||
[OutputType('String')]
|
||||
param (
|
||||
[Parameter(Mandatory)]
|
||||
[IO.BinaryReader]
|
||||
[ValidateNotNullOrEmpty()]
|
||||
$BinaryReader
|
||||
)
|
||||
|
||||
$StringLength = $BinaryReader.ReadUInt32()
|
||||
|
||||
if ($StringLength) {
|
||||
$PaddingBytes = 4 - $StringLength % 4 -band 3
|
||||
|
||||
$StringBytes = $BinaryReader.ReadBytes($StringLength)
|
||||
$null = $BinaryReader.ReadBytes($PaddingBytes)
|
||||
|
||||
[Text.Encoding]::Unicode.GetString($StringBytes)
|
||||
}
|
||||
|
||||
$null = $BinaryReader.ReadInt32()
|
||||
}
|
||||
|
||||
try {
|
||||
$CIPolicyBytes = [IO.File]::ReadAllBytes($BinPath.Path)
|
||||
|
||||
try {
|
||||
$ContentType = $null
|
||||
try {
|
||||
$ContentType = [Security.Cryptography.Pkcs.ContentInfo]::GetContentType($CIPolicyBytes)
|
||||
} catch { }
|
||||
|
||||
# Check for PKCS#7 ASN.1 SignedData type
|
||||
if ($ContentType -and $ContentType.Value -eq '1.2.840.113549.1.7.2') {
|
||||
$Cms = New-Object System.Security.Cryptography.Pkcs.SignedCms
|
||||
$Cms.Decode($CIPolicyBytes)
|
||||
$CIPolicyBytes = $Cms.ContentInfo.Content
|
||||
if ($CIPolicyBytes[0] -eq 4) {
|
||||
$PolicySize = $CIPolicyBytes[1]
|
||||
$BaseIndex = 2
|
||||
if (($PolicySize -band 0x80) -eq 0x80) {
|
||||
$SizeCount = $PolicySize -band 0x7F
|
||||
$BaseIndex += $SizeCount
|
||||
$PolicySize = 0
|
||||
for ($i = 0; $i -lt $SizeCount; $i++) {
|
||||
$PolicySize = $PolicySize -shl 8
|
||||
$PolicySize = $PolicySize -bor $CIPolicyBytes[2 + $i]
|
||||
}
|
||||
}
|
||||
|
||||
$CIPolicyBytes = $CIPolicyBytes[$BaseIndex..($BaseIndex + $PolicySize - 1)]
|
||||
}
|
||||
}
|
||||
} catch {
|
||||
Write-Output $_
|
||||
}
|
||||
|
||||
$MemoryStream = New-Object -TypeName IO.MemoryStream -ArgumentList @(,$CIPolicyBytes)
|
||||
$BinaryReader = New-Object -TypeName System.IO.BinaryReader -ArgumentList $MemoryStream, ([Text.Encoding]::Unicode)
|
||||
} catch {
|
||||
throw $_
|
||||
return
|
||||
}
|
||||
|
||||
try {
|
||||
$CIPolicyFormatVersion = $BinaryReader.ReadInt32()
|
||||
Write-Verbose "Detected CI Policy Format Version $CIPolicyFormatVersion"
|
||||
if ($CIPolicyFormatVersion -gt 7) {
|
||||
Write-Warning "CI Policy Format may be unsupported..."
|
||||
}
|
||||
|
||||
$PolicyTypeID = [Guid][Byte[]] $BinaryReader.ReadBytes($GuidLength)
|
||||
switch ($PolicyTypeID.Guid) {
|
||||
'a244370e-44c9-4c06-b551-f6016e563076' { Write-Verbose "Policy Type {$PolicyTypeID} => Enterprise Code Integrity Policy (SiPolicy.p7b or UpdateSiPolicy.p7b)" }
|
||||
'2a5a0136-f09f-498e-99cc-51099011157c' { Write-Verbose "Policy Type {$PolicyTypeID} => Windows Revoke Code Integrity Policy (RvkSiPolicy.p7b or UpdateRvkSiPolicy.p7b)" }
|
||||
'976d12c8-cb9f-4730-be52-54600843238e' { Write-Verbose "Policy Type {$PolicyTypeID} => SKU Code Integrity Policy (SkuSiPolicy.p7b or UpdateSkuSiPolicy.p7b)" }
|
||||
'5951a96a-e0b5-4d3d-8fb8-3e5b61030784' { Write-Verbose "Policy Type {$PolicyTypeID} => Windows Lockdown Code Integrity Policy (WinSiPolicy.p7b or UpdateWinSiPolicy.p7b)" }
|
||||
'4e61c68c-97f6-430b-9cd7-9b1004706770' { Write-Verbose "Policy Type {$PolicyTypeID} => Advanced Threat Protection Code Integrity Policy (ATPSiPolicy.p7b or UpdateATPSiPolicy.p7b)" }
|
||||
'd2bda982-ccf6-4344-ac5b-0b44427b6816' { Write-Verbose "Policy Type {$PolicyTypeID} => Driver Code Integrity Policy (DriverSiPolicy.p7b or UpdateDriverSiPolicy.p7b)" }
|
||||
default { Write-Warning "Policy Type {$PolicyTypeID} => Unknown Policy Type" }
|
||||
}
|
||||
|
||||
[Byte[]] $PlatformIDBytes = $BinaryReader.ReadBytes($GuidLength)
|
||||
$PlatformID = [Guid] $PlatformIDBytes
|
||||
Write-Verbose "PlatformID: {$PlatformID}"
|
||||
|
||||
$OptionFlags = $BinaryReader.ReadInt32()
|
||||
Write-Verbose "Policy Option Flags: 0x$($OptionFlags.ToString('X8'))"
|
||||
|
||||
if ($OptionFlags -band ([Int32]::MinValue) -ne [Int32]::MinValue) {
|
||||
throw "Invalid Policy Option Flags"
|
||||
return
|
||||
}
|
||||
if (($OptionFlags -band 0x40000000) -eq 0x40000000) {
|
||||
Write-Warning 'Policy Option Flags indicate that the CI Policy was built from supplemental policies.'
|
||||
}
|
||||
|
||||
$EKURuleEntryCount = $BinaryReader.ReadInt32()
|
||||
Write-Verbose "$EKURuleEntryCount EKU Rule(s)"
|
||||
|
||||
$FileRuleEntryCount = $BinaryReader.ReadInt32()
|
||||
Write-Verbose "$FileRuleEntryCount File Rule(s)"
|
||||
|
||||
$SignerRuleEntryCount = $BinaryReader.ReadInt32()
|
||||
Write-Verbose "$SignerRuleEntryCount Signer Rule(s)"
|
||||
|
||||
$SignerScenarioEntryCount = $BinaryReader.ReadInt32()
|
||||
Write-Verbose "$SignerScenarioEntryCount Signer Scenario(s)"
|
||||
|
||||
$Revis = $BinaryReader.ReadUInt16()
|
||||
$Build = $BinaryReader.ReadUInt16()
|
||||
$Minor = $BinaryReader.ReadUInt16()
|
||||
$Major = $BinaryReader.ReadUInt16()
|
||||
Write-Verbose "Version: $Major.$Minor.$Build.$Revis"
|
||||
|
||||
$HeaderLength = $BinaryReader.ReadInt32()
|
||||
if ($HeaderLength -ne ($HeaderLengthMax - 4)) {
|
||||
Write-Warning "$BinPath has an invalid header footer: 0x$($HeaderLength.ToString('x8'))"
|
||||
}
|
||||
|
||||
if ($EKURuleEntryCount) {
|
||||
Write-Verbose "Skipping EKU Rules..."
|
||||
for ($i = 0; $i -lt $EKURuleEntryCount; $i++) {
|
||||
$EkuValueLen = $BinaryReader.ReadUInt32()
|
||||
$PaddingBytes = 4 - $EkuValueLen % 4 -band 3
|
||||
$null = $BinaryReader.ReadBytes($EkuValueLen)
|
||||
$null = $BinaryReader.ReadBytes($PaddingBytes)
|
||||
}
|
||||
}
|
||||
|
||||
if ($FileRuleEntryCount) {
|
||||
Write-Verbose "Processing File Rules..."
|
||||
$HashArray = New-Object System.Collections.ArrayList
|
||||
|
||||
for ($i = 0; $i -lt $FileRuleEntryCount; $i++) {
|
||||
$FileRuleTypeValue = $BinaryReader.ReadInt32()
|
||||
|
||||
$FileName = Get-BinaryString -BinaryReader $BinaryReader
|
||||
$Revis = $BinaryReader.ReadUInt16()
|
||||
$Build = $BinaryReader.ReadUInt16()
|
||||
$Minor = $BinaryReader.ReadUInt16()
|
||||
$Major = $BinaryReader.ReadUInt16()
|
||||
|
||||
$HashLen = $BinaryReader.ReadUInt32()
|
||||
if ($HashLen) {
|
||||
$PaddingBytes = 4 - $HashLen % 4 -band 3
|
||||
$HashBytes = $BinaryReader.ReadBytes($HashLen)
|
||||
# We are only interested in the 'DENY' type (0) for PE256 hashes
|
||||
if (($FileRuleTypeValue -eq 0) -and ($HashLen -eq $Pe256HashLength)) {
|
||||
$HashString = ($HashBytes | ForEach-Object ToString x2) -join ''
|
||||
$HashArray.Add($HashString) | Out-Null
|
||||
}
|
||||
$null = $BinaryReader.ReadBytes($PaddingBytes)
|
||||
}
|
||||
}
|
||||
# Sort the array and remove duplicates
|
||||
$HashArray.Sort()
|
||||
$HashArray = $HashArray | Select-Object -Unique
|
||||
foreach ($HashStr in $HashArray) {
|
||||
if ($Raw) {
|
||||
Write-Output $HashStr
|
||||
} else {
|
||||
$HashChars = $HashStr.ToCharArray()
|
||||
$Line = "`t"
|
||||
for ($i = 0; $i -lt $Pe256HashLength; $i++) {
|
||||
$Line += "0x" + $HashChars[2 * $i] + $HashChars[2 * $i + 1] + ", "
|
||||
}
|
||||
Write-Output $Line
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} catch {
|
||||
$BinaryReader.Close()
|
||||
$MemoryStream.Close()
|
||||
|
||||
throw $_
|
||||
return
|
||||
}
|
|
@ -7,7 +7,7 @@ This image, which can be mounted as a FAT file system or opened in 7-zip,
|
|||
contains the following data:
|
||||
|
||||
o Secure Boot signed NTFS UEFI drivers, derived from ntfs-3g [1].
|
||||
These drivers are the exact same as the read-only binaries from release 1.5,
|
||||
These drivers are the exact same as the read-only binaries from release 1.7,
|
||||
except for the addition of Microsoft's Secure Boot signature.
|
||||
Note that, per Microsoft's current Secure Boot signing policies, the 32-bit
|
||||
ARM driver (ntfs_arm.efi) is not Secure Boot signed.
|
||||
|
@ -17,7 +17,7 @@ o Non Secure Boot signed exFAT UEFI drivers from EfiFs [2].
|
|||
because they are licensed under GPLv3, cannot be Secure Boot signed.
|
||||
|
||||
o Secure Boot signed UEFI:NTFS bootloader binaries [3].
|
||||
These drivers are the exact same as the binaries from release 2.2, except for
|
||||
These drivers are the exact same as the binaries from release 2.3, except for
|
||||
the addition of Microsoft's Secure Boot signature.
|
||||
Note that, per Microsoft's current Secure Boot signing policies, the 32-bit
|
||||
ARM bootloader (bootarm.efi) is not Secure Boot signed.
|
||||
|
|
|
@ -1,8 +1,11 @@
|
|||
SUBDIRS = ../.mingw bled ext2fs ms-sys syslinux/libfat syslinux/libinstaller syslinux/win libcdio/iso9660 libcdio/udf libcdio/driver ../res/loc
|
||||
# As far as I can tell, the following libraries are *not* vulnerable to side-loading, so we link using their regular version:
|
||||
NONVULNERABLE_LIBS = -lsetupapi -lole32 -lgdi32 -lshlwapi -lcrypt32 -lcomdlg32 -lcomctl32 -luuid
|
||||
NONVULNERABLE_LIBS = -lsetupapi -lole32 -lgdi32 -lshlwapi -lcrypt32 -lcomctl32 -luuid
|
||||
# The following libraries are vulnerable (or have an unknown vulnerability status), so we link using our delay-loaded replacement:
|
||||
VULNERABLE_LIBS = -ldwmapi-delaylib -lwintrust-delaylib
|
||||
# Ideally there would also be virtdisk and wininet as delaylib's below, but the MinGW folks haven't quite sorted out delay-loading
|
||||
# for x86_32 so as soon as you try to call APIs from these, the application will crash!
|
||||
# See https://github.com/pbatard/rufus/issues/1877#issuecomment-1109683039 as well as https://github.com/pbatard/rufus/issues/2272
|
||||
VULNERABLE_LIBS = -ldwmapi-delaylib -lversion-delaylib -lwintrust-delaylib
|
||||
|
||||
noinst_PROGRAMS = rufus
|
||||
|
||||
|
@ -14,7 +17,7 @@ AM_V_WINDRES = $(AM_V_WINDRES_$(V))
|
|||
%_rc.o: %.rc ../res/loc/embedded.loc
|
||||
$(AM_V_WINDRES) $(AM_RCFLAGS) -i $< -o $@
|
||||
|
||||
rufus_SOURCES = badblocks.c checksum.c cpu.c dev.c dos.c dos_locale.c drive.c format.c format_ext.c format_fat32.c icon.c iso.c \
|
||||
rufus_SOURCES = badblocks.c cpu.c dev.c dos.c dos_locale.c drive.c format.c format_ext.c format_fat32.c hash.c icon.c iso.c \
|
||||
localization.c net.c parser.c pki.c process.c re.c rufus.c smart.c stdfn.c stdio.c stdlg.c syslinux.c ui.c vhd.c wue.c
|
||||
rufus_CFLAGS = -I$(srcdir)/ms-sys/inc -I$(srcdir)/syslinux/libfat -I$(srcdir)/syslinux/libinstaller -I$(srcdir)/syslinux/win -I$(srcdir)/libcdio $(AM_CFLAGS) \
|
||||
-DEXT2_FLAT_INCLUDES=0 -DSOLUTION=rufus
|
||||
|
|
|
@ -87,13 +87,14 @@ mkinstalldirs = $(install_sh) -d
|
|||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
PROGRAMS = $(noinst_PROGRAMS)
|
||||
am_rufus_OBJECTS = rufus-badblocks.$(OBJEXT) rufus-checksum.$(OBJEXT) \
|
||||
rufus-cpu.$(OBJEXT) rufus-dev.$(OBJEXT) rufus-dos.$(OBJEXT) \
|
||||
am_rufus_OBJECTS = rufus-badblocks.$(OBJEXT) rufus-cpu.$(OBJEXT) \
|
||||
rufus-dev.$(OBJEXT) rufus-dos.$(OBJEXT) \
|
||||
rufus-dos_locale.$(OBJEXT) rufus-drive.$(OBJEXT) \
|
||||
rufus-format.$(OBJEXT) rufus-format_ext.$(OBJEXT) \
|
||||
rufus-format_fat32.$(OBJEXT) rufus-icon.$(OBJEXT) \
|
||||
rufus-iso.$(OBJEXT) rufus-localization.$(OBJEXT) \
|
||||
rufus-net.$(OBJEXT) rufus-parser.$(OBJEXT) rufus-pki.$(OBJEXT) \
|
||||
rufus-format_fat32.$(OBJEXT) rufus-hash.$(OBJEXT) \
|
||||
rufus-icon.$(OBJEXT) rufus-iso.$(OBJEXT) \
|
||||
rufus-localization.$(OBJEXT) rufus-net.$(OBJEXT) \
|
||||
rufus-parser.$(OBJEXT) rufus-pki.$(OBJEXT) \
|
||||
rufus-process.$(OBJEXT) rufus-re.$(OBJEXT) \
|
||||
rufus-rufus.$(OBJEXT) rufus-smart.$(OBJEXT) \
|
||||
rufus-stdfn.$(OBJEXT) rufus-stdio.$(OBJEXT) \
|
||||
|
@ -274,14 +275,17 @@ top_builddir = @top_builddir@
|
|||
top_srcdir = @top_srcdir@
|
||||
SUBDIRS = ../.mingw bled ext2fs ms-sys syslinux/libfat syslinux/libinstaller syslinux/win libcdio/iso9660 libcdio/udf libcdio/driver ../res/loc
|
||||
# As far as I can tell, the following libraries are *not* vulnerable to side-loading, so we link using their regular version:
|
||||
NONVULNERABLE_LIBS = -lsetupapi -lole32 -lgdi32 -lshlwapi -lcrypt32 -lcomdlg32 -lcomctl32 -luuid
|
||||
NONVULNERABLE_LIBS = -lsetupapi -lole32 -lgdi32 -lshlwapi -lcrypt32 -lcomctl32 -luuid
|
||||
# The following libraries are vulnerable (or have an unknown vulnerability status), so we link using our delay-loaded replacement:
|
||||
VULNERABLE_LIBS = -ldwmapi-delaylib -lwintrust-delaylib
|
||||
# Ideally there would also be virtdisk and wininet as delaylib's below, but the MinGW folks haven't quite sorted out delay-loading
|
||||
# for x86_32 so as soon as you try to call APIs from these, the application will crash!
|
||||
# See https://github.com/pbatard/rufus/issues/1877#issuecomment-1109683039 as well as https://github.com/pbatard/rufus/issues/2272
|
||||
VULNERABLE_LIBS = -ldwmapi-delaylib -lversion-delaylib -lwintrust-delaylib
|
||||
AM_V_WINDRES_0 = @echo " RC $@";$(WINDRES)
|
||||
AM_V_WINDRES_1 = $(WINDRES)
|
||||
AM_V_WINDRES_ = $(AM_V_WINDRES_$(AM_DEFAULT_VERBOSITY))
|
||||
AM_V_WINDRES = $(AM_V_WINDRES_$(V))
|
||||
rufus_SOURCES = badblocks.c checksum.c cpu.c dev.c dos.c dos_locale.c drive.c format.c format_ext.c format_fat32.c icon.c iso.c \
|
||||
rufus_SOURCES = badblocks.c cpu.c dev.c dos.c dos_locale.c drive.c format.c format_ext.c format_fat32.c hash.c icon.c iso.c \
|
||||
localization.c net.c parser.c pki.c process.c re.c rufus.c smart.c stdfn.c stdio.c stdlg.c syslinux.c ui.c vhd.c wue.c
|
||||
|
||||
rufus_CFLAGS = -I$(srcdir)/ms-sys/inc -I$(srcdir)/syslinux/libfat -I$(srcdir)/syslinux/libinstaller -I$(srcdir)/syslinux/win -I$(srcdir)/libcdio $(AM_CFLAGS) \
|
||||
|
@ -351,12 +355,6 @@ rufus-badblocks.o: badblocks.c
|
|||
rufus-badblocks.obj: badblocks.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-badblocks.obj `if test -f 'badblocks.c'; then $(CYGPATH_W) 'badblocks.c'; else $(CYGPATH_W) '$(srcdir)/badblocks.c'; fi`
|
||||
|
||||
rufus-checksum.o: checksum.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-checksum.o `test -f 'checksum.c' || echo '$(srcdir)/'`checksum.c
|
||||
|
||||
rufus-checksum.obj: checksum.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-checksum.obj `if test -f 'checksum.c'; then $(CYGPATH_W) 'checksum.c'; else $(CYGPATH_W) '$(srcdir)/checksum.c'; fi`
|
||||
|
||||
rufus-cpu.o: cpu.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-cpu.o `test -f 'cpu.c' || echo '$(srcdir)/'`cpu.c
|
||||
|
||||
|
@ -405,6 +403,12 @@ rufus-format_fat32.o: format_fat32.c
|
|||
rufus-format_fat32.obj: format_fat32.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-format_fat32.obj `if test -f 'format_fat32.c'; then $(CYGPATH_W) 'format_fat32.c'; else $(CYGPATH_W) '$(srcdir)/format_fat32.c'; fi`
|
||||
|
||||
rufus-hash.o: hash.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-hash.o `test -f 'hash.c' || echo '$(srcdir)/'`hash.c
|
||||
|
||||
rufus-hash.obj: hash.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-hash.obj `if test -f 'hash.c'; then $(CYGPATH_W) 'hash.c'; else $(CYGPATH_W) '$(srcdir)/hash.c'; fi`
|
||||
|
||||
rufus-icon.o: icon.c
|
||||
$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(rufus_CFLAGS) $(CFLAGS) -c -o rufus-icon.o `test -f 'icon.c' || echo '$(srcdir)/'`icon.c
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
* Copyright 1992-1994 Remy Card <card@masi.ibp.fr>
|
||||
* Copyright 1995-1999 Theodore Ts'o
|
||||
* Copyright 1999 David Beattie
|
||||
* Copyright 2011-2023 Pete Batard <pete@akeo.ie>
|
||||
* Copyright 2011-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This file is based on the minix file system programs fsck and mkfs
|
||||
* written and copyrighted by Linus Torvalds <Linus.Torvalds@cs.helsinki.fi>
|
||||
|
@ -318,7 +318,7 @@ static void CALLBACK alarm_intr(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dw
|
|||
{
|
||||
if (!num_blocks)
|
||||
return;
|
||||
if (FormatStatus) {
|
||||
if (ErrorStatus) {
|
||||
uprintf("%sInterrupting at block %" PRIu64 "\n", bb_prefix,
|
||||
(unsigned long long) currently_testing);
|
||||
cancel_ops = -1;
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
*
|
||||
* Copyright 1995, 1996, 1997, 1998, 1999 by Theodore Ts'o
|
||||
* Copyright 1999 by David Beattie
|
||||
* Copyright 2011-2018 by Pete Batard
|
||||
* Copyright 2011-2024 by Pete Batard
|
||||
*
|
||||
* This file is based on the minix file system programs fsck and mkfs
|
||||
* written and copyrighted by Linus Torvalds <Linus.Torvalds@cs.helsinki.fi>
|
||||
|
@ -28,12 +28,11 @@ typedef struct bb_struct_u64_iterate *bb_badblocks_iterate;
|
|||
typedef struct bb_struct_u64_list *bb_u64_list;
|
||||
typedef struct bb_struct_u64_iterate *bb_u64_iterate;
|
||||
|
||||
#define BB_ET_NO_MEMORY (ERROR_SEVERITY_ERROR|FAC(FACILITY_STORAGE)|ERROR_NOT_ENOUGH_MEMORY)
|
||||
#define BB_ET_MAGIC_BADBLOCKS_LIST (ERROR_SEVERITY_ERROR|FAC(FACILITY_STORAGE)|ERROR_OBJECT_IN_LIST)
|
||||
#define BB_ET_MAGIC_BADBLOCKS_ITERATE (ERROR_SEVERITY_ERROR|FAC(FACILITY_STORAGE)|ERROR_INVALID_BLOCK)
|
||||
#define BB_ET_NO_MEMORY RUFUS_ERROR(ERROR_NOT_ENOUGH_MEMORY)
|
||||
#define BB_ET_MAGIC_BADBLOCKS_LIST RUFUS_ERROR(ERROR_OBJECT_IN_LIST)
|
||||
#define BB_ET_MAGIC_BADBLOCKS_ITERATE RUFUS_ERROR(ERROR_INVALID_BLOCK)
|
||||
|
||||
#define BB_CHECK_MAGIC(struct, code) \
|
||||
if ((struct)->magic != (code)) return (code)
|
||||
#define BB_CHECK_MAGIC(struct, code) if ((struct)->magic != (code)) return (code)
|
||||
#define BB_BAD_BLOCKS_THRESHOLD 256
|
||||
#define BB_BLOCKS_AT_ONCE 64
|
||||
#define BB_SYS_PAGE_SIZE 4096
|
||||
|
|
|
@ -261,6 +261,8 @@ static inline int transformer_switch_file(transformer_state_t* xstate)
|
|||
xstate->dst_fd = -1;
|
||||
}
|
||||
_snprintf_s(dst, sizeof(dst), _TRUNCATE, "%s/%s", xstate->dst_dir, xstate->dst_name);
|
||||
free(xstate->dst_name);
|
||||
xstate->dst_name = NULL;
|
||||
for (i = 0; i < strlen(dst); i++) {
|
||||
if (dst[i] == '/')
|
||||
dst[i] = '\\';
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Bled (Base Library for Easy Decompression)
|
||||
*
|
||||
* Copyright © 2014-2020 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2014-2023 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
@ -31,6 +31,7 @@ jmp_buf bb_error_jmp;
|
|||
char* bb_virtual_buf = NULL;
|
||||
size_t bb_virtual_len = 0, bb_virtual_pos = 0;
|
||||
int bb_virtual_fd = -1;
|
||||
uint32_t BB_BUFSIZE = 0x10000;
|
||||
|
||||
static long long int unpack_none(transformer_state_t *xstate)
|
||||
{
|
||||
|
@ -54,7 +55,7 @@ unpacker_t unpacker[BLED_COMPRESSION_MAX] = {
|
|||
int64_t bled_uncompress(const char* src, const char* dst, int type)
|
||||
{
|
||||
transformer_state_t xstate;
|
||||
int64_t ret;
|
||||
int64_t ret = -1;
|
||||
|
||||
if (!bled_initialized) {
|
||||
bb_error_msg("The library has not been initialized");
|
||||
|
@ -85,17 +86,16 @@ int64_t bled_uncompress(const char* src, const char* dst, int type)
|
|||
|
||||
if (setjmp(bb_error_jmp))
|
||||
goto err;
|
||||
|
||||
ret = unpacker[type](&xstate);
|
||||
_close(xstate.src_fd);
|
||||
_close(xstate.dst_fd);
|
||||
return ret;
|
||||
|
||||
err:
|
||||
free(xstate.dst_name);
|
||||
if (xstate.src_fd > 0)
|
||||
_close(xstate.src_fd);
|
||||
if (xstate.dst_fd > 0)
|
||||
_close(xstate.dst_fd);
|
||||
return -1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Uncompress using Windows handles */
|
||||
|
@ -132,6 +132,7 @@ int64_t bled_uncompress_with_handles(HANDLE hSrc, HANDLE hDst, int type)
|
|||
|
||||
if (setjmp(bb_error_jmp))
|
||||
return -1;
|
||||
|
||||
return unpacker[type](&xstate);
|
||||
}
|
||||
|
||||
|
@ -139,7 +140,7 @@ int64_t bled_uncompress_with_handles(HANDLE hSrc, HANDLE hDst, int type)
|
|||
int64_t bled_uncompress_to_buffer(const char* src, char* buf, size_t size, int type)
|
||||
{
|
||||
transformer_state_t xstate;
|
||||
int64_t ret;
|
||||
int64_t ret = -1;
|
||||
|
||||
if (!bled_initialized) {
|
||||
bb_error_msg("The library has not been initialized");
|
||||
|
@ -177,22 +178,21 @@ int64_t bled_uncompress_to_buffer(const char* src, char* buf, size_t size, int t
|
|||
|
||||
if (setjmp(bb_error_jmp))
|
||||
goto err;
|
||||
|
||||
ret = unpacker[type](&xstate);
|
||||
if (src[0] != 0)
|
||||
_close(xstate.src_fd);
|
||||
return ret;
|
||||
|
||||
err:
|
||||
if (xstate.src_fd > 0)
|
||||
free(xstate.dst_name);
|
||||
if ((src[0] != 0) && (xstate.src_fd > 0))
|
||||
_close(xstate.src_fd);
|
||||
return -1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* Uncompress all files from archive 'src', compressed using 'type', to destination dir 'dir' */
|
||||
int64_t bled_uncompress_to_dir(const char* src, const char* dir, int type)
|
||||
{
|
||||
transformer_state_t xstate;
|
||||
int64_t ret;
|
||||
int64_t ret = -1;
|
||||
|
||||
if (!bled_initialized) {
|
||||
bb_error_msg("The library has not been initialized");
|
||||
|
@ -220,18 +220,16 @@ int64_t bled_uncompress_to_dir(const char* src, const char* dir, int type)
|
|||
|
||||
if (setjmp(bb_error_jmp))
|
||||
goto err;
|
||||
|
||||
ret = unpacker[type](&xstate);
|
||||
_close(xstate.src_fd);
|
||||
if (xstate.dst_fd > 0)
|
||||
_close(xstate.dst_fd);
|
||||
return ret;
|
||||
|
||||
err:
|
||||
free(xstate.dst_name);
|
||||
if (xstate.src_fd > 0)
|
||||
_close(xstate.src_fd);
|
||||
if (xstate.dst_fd > 0)
|
||||
_close(xstate.dst_fd);
|
||||
return -1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
int64_t bled_uncompress_from_buffer_to_buffer(const char* src, const size_t src_len, char* dst, size_t dst_len, int type)
|
||||
|
@ -268,7 +266,8 @@ int64_t bled_uncompress_from_buffer_to_buffer(const char* src, const size_t src_
|
|||
}
|
||||
|
||||
/* Initialize the library.
|
||||
* When the parameters are not NULL you can:
|
||||
* When the parameters are not NULL or zero you can:
|
||||
* - specify the buffer size to use (must be larger than 64KB and a power of two)
|
||||
* - specify the printf-like function you want to use to output message
|
||||
* void print_function(const char* format, ...);
|
||||
* - specify the read/write functions you want to use;
|
||||
|
@ -278,18 +277,25 @@ int64_t bled_uncompress_from_buffer_to_buffer(const char* src, const size_t src_
|
|||
* void switch_function(const char* filename, const uint64_t filesize);
|
||||
* - point to an unsigned long variable, to be used to cancel operations when set to non zero
|
||||
*/
|
||||
int bled_init(printf_t print_function, read_t read_function, write_t write_function,
|
||||
int bled_init(uint32_t buffer_size, printf_t print_function, read_t read_function, write_t write_function,
|
||||
progress_t progress_function, switch_t switch_function, unsigned long* cancel_request)
|
||||
{
|
||||
if (bled_initialized)
|
||||
return -1;
|
||||
bled_initialized = true;
|
||||
BB_BUFSIZE = buffer_size;
|
||||
/* buffer_size must be larger than 64 KB and a power of two */
|
||||
if (buffer_size < 0x10000 || (buffer_size & (buffer_size - 1)) != 0) {
|
||||
if (buffer_size != 0 && print_function != NULL)
|
||||
print_function("bled_init: invalid buffer_size, defaulting to 64 KB");
|
||||
BB_BUFSIZE = 0x10000;
|
||||
}
|
||||
bled_printf = print_function;
|
||||
bled_read = read_function;
|
||||
bled_write = write_function;
|
||||
bled_progress = progress_function;
|
||||
bled_switch = switch_function;
|
||||
bled_cancel_request = cancel_request;
|
||||
bled_initialized = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -50,7 +50,8 @@ int64_t bled_uncompress_to_dir(const char* src, const char* dir, int type);
|
|||
int64_t bled_uncompress_from_buffer_to_buffer(const char* src, const size_t src_len, char* dst, size_t dst_len, int type);
|
||||
|
||||
/* Initialize the library.
|
||||
* When the parameters are not NULL you can:
|
||||
* When the parameters are not NULL or zero you can:
|
||||
* - specify the buffer size to use (must be larger than 64KB and a power of two)
|
||||
* - specify the printf-like function you want to use to output message
|
||||
* void print_function(const char* format, ...);
|
||||
* - specify the read/write functions you want to use;
|
||||
|
@ -60,7 +61,7 @@ int64_t bled_uncompress_from_buffer_to_buffer(const char* src, const size_t src_
|
|||
* void switch_function(const char* filename, const uint64_t filesize);
|
||||
* - point to an unsigned long variable, to be used to cancel operations when set to non zero
|
||||
*/
|
||||
int bled_init(printf_t print_function, read_t read_function, write_t write_function,
|
||||
int bled_init(uint32_t buffer_size, printf_t print_function, read_t read_function, write_t write_function,
|
||||
progress_t progress_function, switch_t switch_function, unsigned long* cancel_request);
|
||||
|
||||
/* This call frees any resource used by the library */
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
#include "bb_archive.h"
|
||||
|
||||
#if 0
|
||||
# define dbg(...) bb_error_msg(__VA_ARGS__)
|
||||
# define dbg(...) bb_printf(__VA_ARGS__)
|
||||
#else
|
||||
# define dbg(...) ((void)0)
|
||||
#endif
|
||||
|
|
|
@ -45,10 +45,11 @@ typedef struct huft_t {
|
|||
} v;
|
||||
} huft_t;
|
||||
|
||||
/* gunzip_window size--must be a power of two, and
|
||||
* at least 32K for zip's deflate method */
|
||||
#define GUNZIP_WSIZE BB_BUFSIZE
|
||||
|
||||
enum {
|
||||
/* gunzip_window size--must be a power of two, and
|
||||
* at least 32K for zip's deflate method */
|
||||
GUNZIP_WSIZE = BB_BUFSIZE,
|
||||
/* If BMAX needs to be larger than 16, then h and x[] should be ulg. */
|
||||
BMAX = 16, /* maximum bit length of any code (16 for explode) */
|
||||
N_MAX = 288, /* maximum number of codes in any set */
|
||||
|
@ -1029,7 +1030,7 @@ inflate_unzip_internal(STATE_PARAM transformer_state_t *xstate)
|
|||
error_msg = "corrupted data";
|
||||
if (setjmp(error_jmp)) {
|
||||
/* Error from deep inside zip machinery */
|
||||
bb_simple_error_msg("corrupted data");
|
||||
bb_simple_error_msg("%s", error_msg);
|
||||
n = -1;
|
||||
goto ret;
|
||||
}
|
||||
|
@ -1197,9 +1198,13 @@ static int check_header_gzip(STATE_PARAM transformer_state_t *xstate)
|
|||
if (header.formatted.flags & 0x18) {
|
||||
while (1) {
|
||||
do {
|
||||
/* None of our buffers should be larger than BB_BUFSIZE */
|
||||
if (bytebuffer_offset > BB_BUFSIZE) {
|
||||
bb_error_msg("buffer overflow");
|
||||
return 0;
|
||||
}
|
||||
if (!top_up(PASS_STATE 1))
|
||||
return 0;
|
||||
// coverity[tainted_data]
|
||||
} while (bytebuffer[bytebuffer_offset++] != 0);
|
||||
if ((header.formatted.flags & 0x18) != 0x18)
|
||||
break;
|
||||
|
@ -1272,7 +1277,7 @@ unpack_gz_stream(transformer_state_t *xstate)
|
|||
|
||||
n = inflate_unzip_internal(PASS_STATE xstate);
|
||||
if (n < 0) {
|
||||
total = (n == -ENOSPC)?xstate->mem_output_size_max:n;
|
||||
total = (n == -ENOSPC) ? xstate->mem_output_size_max : n;
|
||||
goto ret;
|
||||
}
|
||||
total += n;
|
||||
|
|
|
@ -27,10 +27,10 @@
|
|||
|
||||
|
||||
/* Default input buffer size */
|
||||
#define IBUFSIZ BB_BUFSIZE
|
||||
#define IBUFSIZ ((int)BB_BUFSIZE)
|
||||
|
||||
/* Default output buffer size */
|
||||
#define OBUFSIZ BB_BUFSIZE
|
||||
#define OBUFSIZ ((int)BB_BUFSIZE)
|
||||
|
||||
/* Defines for third byte of header */
|
||||
#define BIT_MASK 0x1f /* Mask for 'number of compresssion bits' */
|
||||
|
|
|
@ -255,6 +255,11 @@ unpack_lzma_stream(transformer_state_t *xstate)
|
|||
header.dict_size = SWAP_LE32(header.dict_size);
|
||||
header.dst_size = SWAP_LE64(header.dst_size);
|
||||
|
||||
if (header.dict_size > 1024 * 1024 * 1024) {
|
||||
bb_simple_error_msg("lzma dictionary size too large");
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (header.dict_size == 0)
|
||||
header.dict_size++;
|
||||
|
||||
|
|
|
@ -1,31 +1,36 @@
|
|||
/*
|
||||
* unzip implementation for Bled/busybox
|
||||
*
|
||||
* Copyright © 2015-2020 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2015-2023 Pete Batard <pete@akeo.ie>
|
||||
* Based on mini unzip implementation for busybox © Ed Clark
|
||||
* Loosely based on original busybox unzip applet © Laurence Anderson.
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
||||
/* The following are not currently supported:
|
||||
* - Store (uncompressed)
|
||||
* - Zip64
|
||||
*/
|
||||
|
||||
#include "libbb.h"
|
||||
#include "bb_archive.h"
|
||||
|
||||
#if 0
|
||||
# define dbg(...) bb_printf(__VA_ARGS__)
|
||||
#else
|
||||
# define dbg(...) ((void)0)
|
||||
#endif
|
||||
|
||||
#define xread safe_read
|
||||
|
||||
enum {
|
||||
#if BB_BIG_ENDIAN
|
||||
ZIP_FILEHEADER_MAGIC = 0x504b0304,
|
||||
ZIP_CDF_MAGIC = 0x504b0102, /* central directory's file header */
|
||||
ZIP_CDE_MAGIC = 0x504b0506, /* "end of central directory" record */
|
||||
ZIP_CDF_MAGIC = 0x504b0102, /* CDF item */
|
||||
ZIP_CDE_MAGIC = 0x504b0506, /* End of CDF */
|
||||
ZIP64_CDE_MAGIC = 0x504b0606, /* End of Zip64 CDF */
|
||||
ZIP_DD_MAGIC = 0x504b0708,
|
||||
#else
|
||||
ZIP_FILEHEADER_MAGIC = 0x04034b50,
|
||||
ZIP_CDF_MAGIC = 0x02014b50,
|
||||
ZIP_CDE_MAGIC = 0x06054b50,
|
||||
ZIP64_CDE_MAGIC = 0x06064b50,
|
||||
ZIP_DD_MAGIC = 0x08074b50,
|
||||
#endif
|
||||
};
|
||||
|
@ -41,36 +46,29 @@ typedef union {
|
|||
uint16_t method; /* 4-5 */
|
||||
uint16_t modtime; /* 6-7 */
|
||||
uint16_t moddate; /* 8-9 */
|
||||
uint32_t crc32; /* 10-13 */
|
||||
uint32_t cmpsize; /* 14-17 */
|
||||
uint32_t ucmpsize; /* 18-21 */
|
||||
uint32_t crc32 PACKED; /* 10-13 */
|
||||
uint32_t cmpsize PACKED; /* 14-17 */
|
||||
uint32_t ucmpsize PACKED; /* 18-21 */
|
||||
uint16_t filename_len; /* 22-23 */
|
||||
uint16_t extra_len; /* 24-25 */
|
||||
} PACKED formatted;
|
||||
} PACKED zip_header_t;
|
||||
/* filename follows (not NUL terminated) */
|
||||
/* extra field follows */
|
||||
/* data follows */
|
||||
} fmt PACKED;
|
||||
} zip_header_t; /* PACKED - gcc 4.2.1 doesn't like it (spews warning) */
|
||||
PRAGMA_END_PACKED
|
||||
|
||||
/* Check the offset of the last element, not the length. This leniency
|
||||
* allows for poor packing, whereby the overall struct may be too long,
|
||||
* even though the elements are all in the right place.
|
||||
*/
|
||||
struct BUG_zip_header_must_be_26_bytes {
|
||||
char BUG_zip_header_must_be_26_bytes[
|
||||
offsetof(zip_header_t, formatted.extra_len) + 2
|
||||
== ZIP_HEADER_LEN ? 1 : -1];
|
||||
};
|
||||
|
||||
#define FIX_ENDIANNESS_ZIP(zip_header) do { \
|
||||
(zip_header).formatted.version = SWAP_LE16((zip_header).formatted.version ); \
|
||||
(zip_header).formatted.method = SWAP_LE16((zip_header).formatted.method ); \
|
||||
(zip_header).formatted.modtime = SWAP_LE16((zip_header).formatted.modtime ); \
|
||||
(zip_header).formatted.moddate = SWAP_LE16((zip_header).formatted.moddate ); \
|
||||
(zip_header).formatted.crc32 = SWAP_LE32((zip_header).formatted.crc32 ); \
|
||||
(zip_header).formatted.cmpsize = SWAP_LE32((zip_header).formatted.cmpsize ); \
|
||||
(zip_header).formatted.ucmpsize = SWAP_LE32((zip_header).formatted.ucmpsize ); \
|
||||
(zip_header).formatted.filename_len = SWAP_LE16((zip_header).formatted.filename_len); \
|
||||
(zip_header).formatted.extra_len = SWAP_LE16((zip_header).formatted.extra_len ); \
|
||||
} while (0)
|
||||
#define FIX_ENDIANNESS_ZIP(zip) \
|
||||
do { if (BB_BIG_ENDIAN) { \
|
||||
(zip).fmt.method = SWAP_LE16((zip).fmt.method ); \
|
||||
(zip).fmt.modtime = SWAP_LE16((zip).fmt.modtime ); \
|
||||
(zip).fmt.moddate = SWAP_LE16((zip).fmt.moddate ); \
|
||||
(zip).fmt.crc32 = SWAP_LE32((zip).fmt.crc32 ); \
|
||||
(zip).fmt.cmpsize = SWAP_LE32((zip).fmt.cmpsize ); \
|
||||
(zip).fmt.ucmpsize = SWAP_LE32((zip).fmt.ucmpsize ); \
|
||||
(zip).fmt.filename_len = SWAP_LE16((zip).fmt.filename_len); \
|
||||
(zip).fmt.extra_len = SWAP_LE16((zip).fmt.extra_len ); \
|
||||
}} while (0)
|
||||
|
||||
#define CDF_HEADER_LEN 42
|
||||
|
||||
|
@ -83,46 +81,46 @@ typedef union {
|
|||
uint16_t version_needed; /* 2-3 */
|
||||
uint16_t cdf_flags; /* 4-5 */
|
||||
uint16_t method; /* 6-7 */
|
||||
uint16_t mtime; /* 8-9 */
|
||||
uint16_t mdate; /* 10-11 */
|
||||
uint16_t modtime; /* 8-9 */
|
||||
uint16_t moddate; /* 10-11 */
|
||||
uint32_t crc32; /* 12-15 */
|
||||
uint32_t cmpsize; /* 16-19 */
|
||||
uint32_t ucmpsize; /* 20-23 */
|
||||
uint16_t file_name_length; /* 24-25 */
|
||||
uint16_t extra_field_length; /* 26-27 */
|
||||
uint16_t filename_len; /* 24-25 */
|
||||
uint16_t extra_len; /* 26-27 */
|
||||
uint16_t file_comment_length; /* 28-29 */
|
||||
uint16_t disk_number_start; /* 30-31 */
|
||||
uint16_t internal_file_attributes; /* 32-33 */
|
||||
uint32_t external_file_attributes; /* 34-37 */
|
||||
uint32_t relative_offset_of_local_header; /* 38-41 */
|
||||
} PACKED formatted;
|
||||
uint16_t internal_attributes; /* 32-33 */
|
||||
uint32_t external_attributes PACKED; /* 34-37 */
|
||||
uint32_t relative_offset_of_local_header PACKED; /* 38-41 */
|
||||
/* filename follows (not NUL terminated) */
|
||||
/* extra field follows */
|
||||
/* file comment follows */
|
||||
} fmt PACKED;
|
||||
} cdf_header_t;
|
||||
PRAGMA_END_PACKED
|
||||
|
||||
struct BUG_cdf_header_must_be_42_bytes {
|
||||
char BUG_cdf_header_must_be_42_bytes[
|
||||
offsetof(cdf_header_t, formatted.relative_offset_of_local_header) + 4
|
||||
== CDF_HEADER_LEN ? 1 : -1];
|
||||
};
|
||||
#define FIX_ENDIANNESS_CDF(cdf) \
|
||||
do { if (BB_BIG_ENDIAN) { \
|
||||
(cdf).fmt.version_made_by = SWAP_LE16((cdf).fmt.version_made_by); \
|
||||
(cdf).fmt.version_needed = SWAP_LE16((cdf).fmt.version_needed ); \
|
||||
(cdf).fmt.method = SWAP_LE16((cdf).fmt.method ); \
|
||||
(cdf).fmt.modtime = SWAP_LE16((cdf).fmt.modtime ); \
|
||||
(cdf).fmt.moddate = SWAP_LE16((cdf).fmt.moddate ); \
|
||||
(cdf).fmt.crc32 = SWAP_LE32((cdf).fmt.crc32 ); \
|
||||
(cdf).fmt.cmpsize = SWAP_LE32((cdf).fmt.cmpsize ); \
|
||||
(cdf).fmt.ucmpsize = SWAP_LE32((cdf).fmt.ucmpsize ); \
|
||||
(cdf).fmt.filename_len = SWAP_LE16((cdf).fmt.filename_len ); \
|
||||
(cdf).fmt.extra_len = SWAP_LE16((cdf).fmt.extra_len ); \
|
||||
(cdf).fmt.file_comment_length = SWAP_LE16((cdf).fmt.file_comment_length); \
|
||||
(cdf).fmt.external_attributes = SWAP_LE32((cdf).fmt.external_attributes); \
|
||||
}} while (0)
|
||||
|
||||
#define FIX_ENDIANNESS_CDF(cdf_header) do { \
|
||||
(cdf_header).formatted.crc32 = SWAP_LE32((cdf_header).formatted.crc32 ); \
|
||||
(cdf_header).formatted.cmpsize = SWAP_LE32((cdf_header).formatted.cmpsize ); \
|
||||
(cdf_header).formatted.ucmpsize = SWAP_LE32((cdf_header).formatted.ucmpsize ); \
|
||||
(cdf_header).formatted.file_name_length = SWAP_LE16((cdf_header).formatted.file_name_length); \
|
||||
(cdf_header).formatted.extra_field_length = SWAP_LE16((cdf_header).formatted.extra_field_length); \
|
||||
(cdf_header).formatted.file_comment_length = SWAP_LE16((cdf_header).formatted.file_comment_length); \
|
||||
IF_DESKTOP( \
|
||||
(cdf_header).formatted.version_made_by = SWAP_LE16((cdf_header).formatted.version_made_by); \
|
||||
(cdf_header).formatted.external_file_attributes = SWAP_LE32((cdf_header).formatted.external_file_attributes); \
|
||||
) \
|
||||
} while (0)
|
||||
|
||||
#define CDE_HEADER_LEN 16
|
||||
#define CDE_LEN 16
|
||||
|
||||
PRAGMA_BEGIN_PACKED
|
||||
typedef union {
|
||||
uint8_t raw[CDE_HEADER_LEN];
|
||||
uint8_t raw[CDE_LEN];
|
||||
struct {
|
||||
/* uint32_t signature; 50 4b 05 06 */
|
||||
uint16_t this_disk_no;
|
||||
|
@ -131,24 +129,111 @@ typedef union {
|
|||
uint16_t cdf_entries_total;
|
||||
uint32_t cdf_size;
|
||||
uint32_t cdf_offset;
|
||||
/* uint16_t file_comment_length; */
|
||||
/* .ZIP file comment (variable size) */
|
||||
} PACKED formatted;
|
||||
} cde_header_t;
|
||||
/* uint16_t archive_comment_length; */
|
||||
/* archive comment follows */
|
||||
} fmt PACKED;
|
||||
} cde_t;
|
||||
PRAGMA_END_PACKED
|
||||
|
||||
struct BUG_cde_header_must_be_16_bytes {
|
||||
char BUG_cde_header_must_be_16_bytes[
|
||||
sizeof(cde_header_t) == CDE_HEADER_LEN ? 1 : -1];
|
||||
};
|
||||
#define FIX_ENDIANNESS_CDE(cde) \
|
||||
do { if (BB_BIG_ENDIAN) { \
|
||||
(cde).fmt.cdf_offset = SWAP_LE32((cde).fmt.cdf_offset); \
|
||||
}} while (0)
|
||||
|
||||
#define FIX_ENDIANNESS_CDE(cde_header) do { \
|
||||
(cde_header).formatted.cdf_offset = SWAP_LE32((cde_header).formatted.cdf_offset); \
|
||||
} while (0)
|
||||
/* Extra records */
|
||||
#define EXTRA_HEADER_LEN 4
|
||||
|
||||
PRAGMA_BEGIN_PACKED
|
||||
typedef union {
|
||||
uint8_t raw[EXTRA_HEADER_LEN];
|
||||
struct {
|
||||
uint16_t tag;
|
||||
uint16_t length;
|
||||
/* extra record follows */
|
||||
} fmt PACKED;
|
||||
} extra_header_t;
|
||||
PRAGMA_END_PACKED
|
||||
|
||||
#if ENABLE_DESKTOP
|
||||
#define FIX_ENDIANNESS_EXTRA(ext) \
|
||||
do { if (BB_BIG_ENDIAN) { \
|
||||
(ext).fmt.tag = SWAP_LE16((ext).fmt.tag); \
|
||||
(ext).fmt.length = SWAP_LE32((ext).fmt.length); \
|
||||
}} while (0)
|
||||
|
||||
/* ZIP64 records */
|
||||
#define ZIP64_LEN 20
|
||||
|
||||
PRAGMA_BEGIN_PACKED
|
||||
typedef union {
|
||||
uint8_t raw[ZIP64_LEN];
|
||||
struct {
|
||||
/* uint16_t tag; 00 01 */
|
||||
uint16_t tag;
|
||||
uint16_t length;
|
||||
uint64_t ucmpsize PACKED;
|
||||
uint64_t cmpsize PACKED;
|
||||
} fmt PACKED;
|
||||
} zip64_t;
|
||||
PRAGMA_END_PACKED
|
||||
|
||||
#define FIX_ENDIANNESS_ZIP64(z64) \
|
||||
do { if (BB_BIG_ENDIAN) { \
|
||||
(z64).fmt.cmpsize = SWAP_LE64((z64).fmt.cmpsize); \
|
||||
(z64).fmt.ucmpsize = SWAP_LE64((z64).fmt.ucmpsize); \
|
||||
}} while (0)
|
||||
|
||||
#define CDE64_LEN 52
|
||||
|
||||
PRAGMA_BEGIN_PACKED
|
||||
typedef union {
|
||||
uint8_t raw[CDE64_LEN];
|
||||
struct {
|
||||
/* uint32_t signature; 50 4b 06 06 */
|
||||
uint64_t size PACKED;
|
||||
uint16_t version_made_by;
|
||||
uint16_t version_needed;
|
||||
uint32_t this_disk_no;
|
||||
uint32_t disk_with_cdf_no;
|
||||
uint64_t cdf_entries_on_this_disk PACKED;
|
||||
uint64_t cdf_entries_total PACKED;
|
||||
uint64_t cdf_size PACKED;
|
||||
uint64_t cdf_offset PACKED;
|
||||
/* archive comment follows */
|
||||
} fmt PACKED;
|
||||
} cde64_t;
|
||||
PRAGMA_END_PACKED
|
||||
|
||||
#define FIX_ENDIANNESS_CDE64(c64) \
|
||||
do { if (BB_BIG_ENDIAN) { \
|
||||
(c64).fmt.size = SWAP_LE64((c64).fmt.size); \
|
||||
(c64).fmt.cdf_offset = SWAP_LE64((c64).fmt.cdf_offset); \
|
||||
}} while (0)
|
||||
|
||||
inline void BUG(void) {
|
||||
/* Check the offset of the last element, not the length. This leniency
|
||||
* allows for poor packing, whereby the overall struct may be too long,
|
||||
* even though the elements are all in the right place.
|
||||
*/
|
||||
BUILD_BUG_ON(
|
||||
offsetof(zip_header_t, fmt.extra_len) + 2
|
||||
!= ZIP_HEADER_LEN);
|
||||
BUILD_BUG_ON(
|
||||
offsetof(cdf_header_t, fmt.relative_offset_of_local_header) + 4
|
||||
!= CDF_HEADER_LEN);
|
||||
BUILD_BUG_ON(sizeof(cde_t) != CDE_LEN);
|
||||
BUILD_BUG_ON(sizeof(extra_header_t) != EXTRA_HEADER_LEN);
|
||||
BUILD_BUG_ON(sizeof(zip64_t) != ZIP64_LEN);
|
||||
BUILD_BUG_ON(sizeof(cde64_t) != CDE64_LEN);
|
||||
}
|
||||
|
||||
/* This value means that we failed to find CDF */
|
||||
#define BAD_CDF_OFFSET ((uint32_t)0xffffffff)
|
||||
|
||||
#if !ENABLE_FEATURE_UNZIP_CDF
|
||||
|
||||
# define find_cdf_offset(fd) BAD_CDF_OFFSET
|
||||
|
||||
#else
|
||||
/* Seen in the wild:
|
||||
* Self-extracting PRO2K3XP_32.exe contains 19078464 byte zip archive,
|
||||
* where CDE was nearly 48 kbytes before EOF.
|
||||
|
@ -157,81 +242,149 @@ struct BUG_cde_header_must_be_16_bytes {
|
|||
* To make extraction work, bumped PEEK_FROM_END from 16k to 64k.
|
||||
*/
|
||||
#define PEEK_FROM_END (64*1024)
|
||||
|
||||
/* This value means that we failed to find CDF */
|
||||
#define BAD_CDF_OFFSET ((uint32_t)0xffffffff)
|
||||
|
||||
/* NB: does not preserve file position! */
|
||||
static uint32_t find_cdf_offset(int fd)
|
||||
static uint64_t find_cdf_offset(int fd)
|
||||
{
|
||||
cde_header_t cde_header;
|
||||
unsigned char *p;
|
||||
off_t end;
|
||||
unsigned char *buf = xzalloc(PEEK_FROM_END);
|
||||
cde_t cde;
|
||||
cde64_t cde64;
|
||||
unsigned char *buf;
|
||||
unsigned char *p, c;
|
||||
uint64_t end = 0, found, size;
|
||||
|
||||
if (buf == NULL)
|
||||
return 0;
|
||||
end = lseek(fd, 0, SEEK_END);
|
||||
end -= PEEK_FROM_END;
|
||||
if (end < 0)
|
||||
size = lseek(fd, 0, SEEK_END);
|
||||
if (size == (off_t) -1)
|
||||
return BAD_CDF_OFFSET;
|
||||
|
||||
if (size > PEEK_FROM_END)
|
||||
end = size - PEEK_FROM_END;
|
||||
else
|
||||
end = 0;
|
||||
lseek(fd, end, SEEK_SET);
|
||||
full_read(fd, buf, PEEK_FROM_END);
|
||||
|
||||
cde_header.formatted.cdf_offset = BAD_CDF_OFFSET;
|
||||
size = MIN(size, PEEK_FROM_END);
|
||||
|
||||
lseek(fd, end, SEEK_SET);
|
||||
buf = xzalloc((size_t)size);
|
||||
if (buf == NULL)
|
||||
return 0;
|
||||
full_read(fd, buf, (unsigned int)size);
|
||||
|
||||
found = BAD_CDF_OFFSET;
|
||||
p = buf;
|
||||
while (p <= buf + PEEK_FROM_END - CDE_HEADER_LEN - 4) {
|
||||
while (p <= buf + size - CDE_LEN - 4) {
|
||||
if (*p != 'P') {
|
||||
p++;
|
||||
continue;
|
||||
}
|
||||
if (*++p != 'K')
|
||||
continue;
|
||||
if (*++p != 5)
|
||||
c = *++p;
|
||||
if (c != 5 && c != 6)
|
||||
continue;
|
||||
if (*++p != 6)
|
||||
continue;
|
||||
/* we found CDE! */
|
||||
memcpy(cde_header.raw, p + 1, CDE_HEADER_LEN);
|
||||
FIX_ENDIANNESS_CDE(cde_header);
|
||||
/*
|
||||
* I've seen .ZIP files with seemingly valid CDEs
|
||||
* where cdf_offset points past EOF - ??
|
||||
* Ignore such CDEs:
|
||||
*/
|
||||
if (cde_header.formatted.cdf_offset < end + (p - buf))
|
||||
switch (c) {
|
||||
case 5: /* 32-bit CDE */
|
||||
memcpy(cde.raw, p + 1, CDE_LEN);
|
||||
dbg("cde.this_disk_no:%d", cde.fmt.this_disk_no);
|
||||
dbg("cde.disk_with_cdf_no:%d", cde.fmt.disk_with_cdf_no);
|
||||
dbg("cde.cdf_entries_on_this_disk:%d", cde.fmt.cdf_entries_on_this_disk);
|
||||
dbg("cde.cdf_entries_total:%d", cde.fmt.cdf_entries_total);
|
||||
dbg("cde.cdf_size:%d", cde.fmt.cdf_size);
|
||||
dbg("cde.cdf_offset:%x", cde.fmt.cdf_offset);
|
||||
FIX_ENDIANNESS_CDE(cde);
|
||||
/*
|
||||
* I've seen .ZIP files with seemingly valid CDEs
|
||||
* where cdf_offset points past EOF - ??
|
||||
* This check ignores such CDEs:
|
||||
*/
|
||||
if (cde.fmt.cdf_offset != 0xffffffffL &&
|
||||
cde.fmt.cdf_offset < end + (p - buf)) {
|
||||
found = cde.fmt.cdf_offset;
|
||||
dbg("Possible cdf_offset:0x%"OFF_FMT"x at 0x%"OFF_FMT"x",
|
||||
found, end + (p - 3 - buf));
|
||||
dbg(" cdf_offset+cdf_size:0x%"OFF_FMT"x",
|
||||
(found + SWAP_LE32(cde.fmt.cdf_size)));
|
||||
/*
|
||||
* We do not "break" here because only the last CDE is valid.
|
||||
* I've seen a .zip archive which contained a .zip file,
|
||||
* uncompressed, and taking the first CDE was using
|
||||
* the CDE inside that file!
|
||||
*/
|
||||
}
|
||||
break;
|
||||
cde_header.formatted.cdf_offset = BAD_CDF_OFFSET;
|
||||
case 6: /* 64-bit CDE */
|
||||
memcpy(cde64.raw, p + 1, CDE64_LEN);
|
||||
FIX_ENDIANNESS_CDE64(cde64);
|
||||
dbg("cde64.this_disk_no:%d", cde64.fmt.this_disk_no);
|
||||
dbg("cde64.disk_with_cdf_no:%d", cde64.fmt.disk_with_cdf_no);
|
||||
dbg("cde64.cdf_entries_on_this_disk:%lld", cde64.fmt.cdf_entries_on_this_disk);
|
||||
dbg("cde64.cdf_entries_total:%lld", cde64.fmt.cdf_entries_total);
|
||||
dbg("cde64.cdf_size:%lld", cde64.fmt.cdf_size);
|
||||
dbg("cde64.cdf_offset:%llx", cde64.fmt.cdf_offset);
|
||||
if (cde64.fmt.cdf_offset < end + (p - buf)) {
|
||||
found = cde64.fmt.cdf_offset;
|
||||
dbg("Possible cdf_offset:0x%"OFF_FMT"x at 0x%"OFF_FMT"x",
|
||||
found, end + (p - 3 - buf));
|
||||
dbg(" cdf_offset+cdf_size:0x%"OFF_FMT"x",
|
||||
(found + SWAP_LE64(cde64.fmt.cdf_size)));
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
free(buf);
|
||||
return cde_header.formatted.cdf_offset;
|
||||
dbg("Found cdf_offset:0x%"OFF_FMT"x", found);
|
||||
return found;
|
||||
};
|
||||
|
||||
static uint32_t read_next_cdf(int fd, uint32_t cdf_offset, cdf_header_t *cdf_ptr)
|
||||
static uint64_t read_next_cdf(int fd, uint64_t cdf_offset, cdf_header_t *cdf)
|
||||
{
|
||||
off_t org;
|
||||
uint32_t magic;
|
||||
|
||||
org = lseek(fd, 0, SEEK_CUR);
|
||||
if (cdf_offset == BAD_CDF_OFFSET)
|
||||
return cdf_offset;
|
||||
|
||||
if (!cdf_offset)
|
||||
cdf_offset = find_cdf_offset(fd);
|
||||
|
||||
if (cdf_offset != BAD_CDF_OFFSET) {
|
||||
lseek(fd, cdf_offset + 4, SEEK_SET);
|
||||
if (_read(fd, cdf_ptr->raw, CDF_HEADER_LEN) != CDF_HEADER_LEN)
|
||||
return 0;
|
||||
FIX_ENDIANNESS_CDF(*cdf_ptr);
|
||||
cdf_offset += 4 + CDF_HEADER_LEN
|
||||
+ cdf_ptr->formatted.file_name_length
|
||||
+ cdf_ptr->formatted.extra_field_length
|
||||
+ cdf_ptr->formatted.file_comment_length;
|
||||
dbg("Reading CDF at 0x%"OFF_FMT"x", cdf_offset);
|
||||
lseek(fd, cdf_offset, SEEK_SET);
|
||||
(void)_read(fd, &magic, 4);
|
||||
/* Central Directory End? Assume CDF has ended.
|
||||
* (more correct method is to use cde.cdf_entries_total counter)
|
||||
*/
|
||||
if (magic == ZIP_CDE_MAGIC) {
|
||||
dbg("got ZIP_CDE_MAGIC");
|
||||
return 0; /* EOF */
|
||||
}
|
||||
if (magic == ZIP64_CDE_MAGIC) { /* seen in .zip with >4GB files */
|
||||
dbg("got ZIP64_CDE_MAGIC");
|
||||
return 0; /* EOF */
|
||||
}
|
||||
(void)_read(fd, cdf->raw, CDF_HEADER_LEN);
|
||||
|
||||
lseek(fd, org, SEEK_SET);
|
||||
FIX_ENDIANNESS_CDF(*cdf);
|
||||
dbg(" magic:%08x filename_len:%u extra_len:%u file_comment_length:%u",
|
||||
magic,
|
||||
(unsigned)cdf->fmt.filename_len,
|
||||
(unsigned)cdf->fmt.extra_len,
|
||||
(unsigned)cdf->fmt.file_comment_length
|
||||
);
|
||||
//TODO: require that magic == ZIP_CDF_MAGIC?
|
||||
|
||||
cdf_offset += 4 + CDF_HEADER_LEN
|
||||
+ cdf->fmt.filename_len
|
||||
+ cdf->fmt.extra_len
|
||||
+ cdf->fmt.file_comment_length;
|
||||
|
||||
dbg("Next cdf_offset 0x%"OFF_FMT"x", cdf_offset);
|
||||
return cdf_offset;
|
||||
};
|
||||
#endif
|
||||
|
||||
static void die_if_bad_fnamesize(unsigned sz)
|
||||
{
|
||||
if (sz > 0xfff) /* more than 4k?! no funny business please */
|
||||
bb_simple_error_msg_and_die("bad archive");
|
||||
}
|
||||
|
||||
static void unzip_skip(int fd, off_t skip)
|
||||
{
|
||||
if (skip != 0)
|
||||
|
@ -239,109 +392,262 @@ static void unzip_skip(int fd, off_t skip)
|
|||
bb_copyfd_exact_size(fd, -1, skip);
|
||||
}
|
||||
|
||||
IF_DESKTOP(long long) int FAST_FUNC unpack_zip_stream(transformer_state_t *xstate)
|
||||
/* Set the filename and process extra ZIP64 data */
|
||||
static void unzip_set_xstate(transformer_state_t* xstate, zip_header_t* zip)
|
||||
{
|
||||
uint8_t* buf = NULL;
|
||||
uint16_t i = 0;
|
||||
extra_header_t* extra;
|
||||
zip64_t* zip64;
|
||||
|
||||
/* Set the default sizes for non ZIP64 content */
|
||||
xstate->dst_size = zip->fmt.ucmpsize;
|
||||
xstate->bytes_in = zip->fmt.cmpsize;
|
||||
|
||||
/* Set the filename */
|
||||
die_if_bad_fnamesize(zip->fmt.filename_len);
|
||||
xstate->dst_name = xzalloc(zip->fmt.filename_len + 1);
|
||||
if (xstate->dst_name == NULL)
|
||||
goto err;
|
||||
xread(xstate->src_fd, xstate->dst_name, zip->fmt.filename_len);
|
||||
xstate->dst_name[zip->fmt.filename_len] = 0;
|
||||
|
||||
/* Read the extra data */
|
||||
if (zip->fmt.extra_len) {
|
||||
dbg("Reading extra data");
|
||||
buf = malloc(zip->fmt.extra_len);
|
||||
if (buf == NULL)
|
||||
goto err;
|
||||
xread(xstate->src_fd, buf, zip->fmt.extra_len);
|
||||
}
|
||||
|
||||
/* Process the extra records */
|
||||
if (zip->fmt.extra_len < EXTRA_HEADER_LEN + 1)
|
||||
goto err;
|
||||
for (i = 0; i < zip->fmt.extra_len - EXTRA_HEADER_LEN; ) {
|
||||
extra = (extra_header_t*)&buf[i];
|
||||
FIX_ENDIANNESS_EXTRA(*extra);
|
||||
dbg(" tag:0x%04x len:%u",
|
||||
(unsigned)extra->fmt.tag,
|
||||
(unsigned)extra->fmt.length
|
||||
);
|
||||
i += EXTRA_HEADER_LEN + extra->fmt.length;
|
||||
/* Process the ZIP64 data */
|
||||
if (extra->fmt.tag == SWAP_LE16(0x0001)) {
|
||||
zip64 = (zip64_t*)extra;
|
||||
FIX_ENDIANNESS_ZIP64(*zip64);
|
||||
if ((zip->fmt.cmpsize == 0xffffffffL || zip->fmt.ucmpsize == 0xffffffffL) &&
|
||||
EXTRA_HEADER_LEN + zip64->fmt.length >= ZIP64_LEN) {
|
||||
dbg("Actual cmpsize:0x%"OFF_FMT"x ucmpsize:0x%"OFF_FMT"x",
|
||||
zip64->fmt.cmpsize,
|
||||
zip64->fmt.ucmpsize
|
||||
);
|
||||
xstate->dst_size = zip64->fmt.ucmpsize;
|
||||
xstate->bytes_in = zip64->fmt.cmpsize;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
err:
|
||||
free(buf);
|
||||
}
|
||||
|
||||
static IF_DESKTOP(long long) int
|
||||
unzip_extract(zip_header_t* zip, transformer_state_t* xstate)
|
||||
{
|
||||
IF_DESKTOP(long long) int n = -EFAULT;
|
||||
zip_header_t zip_header;
|
||||
#if ENABLE_DESKTOP
|
||||
uint32_t cdf_offset = 0;
|
||||
|
||||
if (zip->fmt.method == 0) {
|
||||
/* Method 0 - stored (not compressed) */
|
||||
if (xstate->dst_size) {
|
||||
bb_copyfd_exact_size(xstate->src_fd, xstate->dst_fd, xstate->dst_size);
|
||||
}
|
||||
return xstate->dst_size;
|
||||
}
|
||||
|
||||
if (zip->fmt.method == 8) {
|
||||
/* Method 8 - inflate */
|
||||
n = inflate_unzip(xstate);
|
||||
|
||||
/* Validate decompression */
|
||||
if (n >= 0) {
|
||||
if (zip->fmt.crc32 != (xstate->crc32 ^ 0xffffffffL)) {
|
||||
bb_simple_error_msg_and_die("crc error");
|
||||
}
|
||||
} else if (n != -ENOSPC) {
|
||||
bb_simple_error_msg_and_die("inflate error");
|
||||
}
|
||||
}
|
||||
#if ENABLE_FEATURE_UNZIP_BZIP2
|
||||
else if (zip->fmt.method == 12) {
|
||||
/* Tested. Unpacker reads too much, but we use CDF
|
||||
* and will seek to the correct beginning of next file.
|
||||
*/
|
||||
xstate->bytes_out = unpack_bz2_stream(xstate);
|
||||
if ((int64_t)xstate->bytes_out < 0)
|
||||
bb_simple_error_msg_and_die("inflate error");
|
||||
}
|
||||
#endif
|
||||
#if ENABLE_FEATURE_UNZIP_LZMA
|
||||
else if (zip->fmt.method == 14) {
|
||||
/* Not tested yet */
|
||||
xstate->bytes_out = unpack_lzma_stream(xstate);
|
||||
if ((int64_t)xstate->bytes_out < 0)
|
||||
bb_simple_error_msg_and_die("inflate error");
|
||||
}
|
||||
#endif
|
||||
#if ENABLE_FEATURE_UNZIP_XZ
|
||||
else if (zip->fmt.method == 95) {
|
||||
/* Not tested yet */
|
||||
xstate->bytes_out = unpack_xz_stream(xstate);
|
||||
if ((int64_t)xstate->bytes_out < 0)
|
||||
bb_simple_error_msg_and_die("inflate error");
|
||||
}
|
||||
#endif
|
||||
else {
|
||||
bb_error_msg_and_die("unsupported method %u", zip->fmt.method);
|
||||
}
|
||||
|
||||
/* Validate decompression - size */
|
||||
if (n != -ENOSPC && xstate->dst_size != xstate->bytes_out) {
|
||||
/* Don't die. Who knows, maybe len calculation
|
||||
* was botched somewhere. After all, crc matched! */
|
||||
bb_simple_error_msg("bad length");
|
||||
}
|
||||
return n;
|
||||
}
|
||||
|
||||
|
||||
IF_DESKTOP(long long) int FAST_FUNC
|
||||
unpack_zip_stream(transformer_state_t *xstate)
|
||||
{
|
||||
IF_DESKTOP(long long) int n = -EFAULT;
|
||||
bool is_dir = false;
|
||||
uint64_t cdf_offset = find_cdf_offset(xstate->src_fd); /* try to seek to the end, find CDE and CDF start */
|
||||
|
||||
while (1) {
|
||||
uint32_t magic;
|
||||
bool is_dir = false;
|
||||
/* Check magic number */
|
||||
safe_read(xstate->src_fd, &magic, 4);
|
||||
/* Central directory? It's at the end, so exit */
|
||||
if (magic == ZIP_CDF_MAGIC)
|
||||
break;
|
||||
#if ENABLE_DESKTOP
|
||||
/* Data descriptor? It was a streaming file, go on */
|
||||
if (magic == ZIP_DD_MAGIC) {
|
||||
/* skip over duplicate crc32, cmpsize and ucmpsize */
|
||||
unzip_skip(xstate->src_fd, 3 * 4);
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
if (magic != ZIP_FILEHEADER_MAGIC)
|
||||
bb_error_msg_and_err("invalid zip magic 0x%08X", magic);
|
||||
|
||||
/* Read the file header */
|
||||
safe_read(xstate->src_fd, zip_header.raw, ZIP_HEADER_LEN);
|
||||
FIX_ENDIANNESS_ZIP(zip_header);
|
||||
if ((zip_header.formatted.method != 8) && (zip_header.formatted.method != 0)) {
|
||||
bb_error_msg_and_err("zip method method %d is not supported", zip_header.formatted.method);
|
||||
}
|
||||
#if !ENABLE_DESKTOP
|
||||
if (zip_header.formatted.zip_flags & SWAP_LE16(0x0009)) {
|
||||
bb_error_msg_and_err("zip flags 1 and 8 are not supported");
|
||||
}
|
||||
#else
|
||||
if (zip_header.formatted.zip_flags & SWAP_LE16(0x0001)) {
|
||||
/* 0x0001 - encrypted */
|
||||
bb_error_msg_and_die("zip flag 1 (encryption) is not supported");
|
||||
}
|
||||
|
||||
if (cdf_offset != BAD_CDF_OFFSET) {
|
||||
cdf_header_t cdf_header;
|
||||
cdf_offset = read_next_cdf(xstate->src_fd, cdf_offset, &cdf_header);
|
||||
/*
|
||||
* Note: cdf_offset can become BAD_CDF_OFFSET after the above call.
|
||||
zip_header_t zip;
|
||||
if (!ENABLE_FEATURE_UNZIP_CDF || cdf_offset == BAD_CDF_OFFSET) {
|
||||
/* Normally happens when input is unseekable.
|
||||
*
|
||||
* Valid ZIP file has Central Directory at the end
|
||||
* with central directory file headers (CDFs).
|
||||
* After it, there is a Central Directory End structure.
|
||||
* CDFs identify what files are in the ZIP and where
|
||||
* they are located. This allows ZIP readers to load
|
||||
* the list of files without reading the entire ZIP archive.
|
||||
* ZIP files may be appended to, only files specified in
|
||||
* the CD are valid. Scanning for local file headers is
|
||||
* not a correct algorithm.
|
||||
*
|
||||
* We try to do the above, and resort to "linear" reading
|
||||
* of ZIP file only if seek failed or CDE wasn't found.
|
||||
*/
|
||||
if (zip_header.formatted.zip_flags & SWAP_LE16(0x0008)) {
|
||||
uint32_t magic;
|
||||
|
||||
/* Check magic number */
|
||||
xread(xstate->src_fd, &magic, 4);
|
||||
/* CDF item? Assume there are no more files, exit */
|
||||
if (magic == ZIP_CDF_MAGIC) {
|
||||
dbg("got ZIP_CDF_MAGIC");
|
||||
break;
|
||||
}
|
||||
/* Data descriptor? It was a streaming file, go on */
|
||||
if (magic == ZIP_DD_MAGIC) {
|
||||
dbg("got ZIP_DD_MAGIC");
|
||||
/* skip over duplicate crc32, cmpsize and ucmpsize */
|
||||
unzip_skip(xstate->src_fd, 3 * 4);
|
||||
continue;
|
||||
}
|
||||
if (magic != ZIP_FILEHEADER_MAGIC)
|
||||
bb_error_msg_and_die("invalid zip magic %08X", (int)magic);
|
||||
dbg("got ZIP_FILEHEADER_MAGIC");
|
||||
|
||||
xread(xstate->src_fd, zip.raw, ZIP_HEADER_LEN);
|
||||
FIX_ENDIANNESS_ZIP(zip);
|
||||
if (zip.fmt.zip_flags & SWAP_LE16(0x0008)) {
|
||||
bb_error_msg_and_die("zip flag %s is not supported",
|
||||
"8 (streaming)");
|
||||
}
|
||||
}
|
||||
#if ENABLE_FEATURE_UNZIP_CDF
|
||||
else {
|
||||
/* cdf_offset is valid (and we know the file is seekable) */
|
||||
cdf_header_t cdf;
|
||||
cdf_offset = read_next_cdf(xstate->src_fd, cdf_offset, &cdf);
|
||||
if (cdf_offset == 0) /* EOF? */
|
||||
break;
|
||||
# if 1
|
||||
lseek(xstate->src_fd,
|
||||
SWAP_LE32(cdf.fmt.relative_offset_of_local_header) + 4,
|
||||
SEEK_SET);
|
||||
xread(xstate->src_fd, zip.raw, ZIP_HEADER_LEN);
|
||||
FIX_ENDIANNESS_ZIP(zip);
|
||||
if (zip.fmt.zip_flags & SWAP_LE16(0x0008)) {
|
||||
/* 0x0008 - streaming. [u]cmpsize can be reliably gotten
|
||||
* only from Central Directory. See unzip_doc.txt
|
||||
* only from Central Directory.
|
||||
*/
|
||||
zip_header.formatted.crc32 = cdf_header.formatted.crc32;
|
||||
zip_header.formatted.cmpsize = cdf_header.formatted.cmpsize;
|
||||
zip_header.formatted.ucmpsize = cdf_header.formatted.ucmpsize;
|
||||
zip.fmt.crc32 = cdf.fmt.crc32;
|
||||
zip.fmt.cmpsize = cdf.fmt.cmpsize;
|
||||
zip.fmt.ucmpsize = cdf.fmt.ucmpsize;
|
||||
}
|
||||
/* Check for UNIX/DOS/WIN directory */
|
||||
is_dir = cdf_header.formatted.external_file_attributes & 0x40000010;
|
||||
is_dir = cdf.fmt.external_attributes & 0x40000010;
|
||||
// Seen in some zipfiles: central directory 9 byte extra field contains
|
||||
// a subfield with ID 0x5455 and 5 data bytes, which is a Unix-style UTC mtime.
|
||||
// Local header version:
|
||||
// u16 0x5455 ("UT")
|
||||
// u16 size (1 + 4 * n)
|
||||
// u8 flags: bit 0:mtime is present, bit 1:atime is present, bit 2:ctime is present
|
||||
// u32 mtime
|
||||
// u32 atime
|
||||
// u32 ctime
|
||||
// Central header version:
|
||||
// u16 0x5455 ("UT")
|
||||
// u16 size (5 (or 1?))
|
||||
// u8 flags: bit 0:mtime is present, bit 1:atime is present, bit 2:ctime is present
|
||||
// u32 mtime (CDF does not store atime/ctime)
|
||||
# else
|
||||
/* CDF has the same data as local header, no need to read the latter...
|
||||
* ...not really. An archive was seen with cdf.extra_len == 6 but
|
||||
* zip.extra_len == 0.
|
||||
*/
|
||||
memcpy(&zip.fmt.version,
|
||||
&cdf.fmt.version_needed, ZIP_HEADER_LEN);
|
||||
xlseek(zip_fd,
|
||||
SWAP_LE32(cdf.fmt.relative_offset_of_local_header) + 4 + ZIP_HEADER_LEN,
|
||||
SEEK_SET);
|
||||
# endif
|
||||
}
|
||||
#endif
|
||||
if (cdf_offset == BAD_CDF_OFFSET
|
||||
&& (zip_header.formatted.zip_flags & SWAP_LE16(0x0008))
|
||||
) {
|
||||
&& (zip.fmt.zip_flags & SWAP_LE16(0x0008))
|
||||
) {
|
||||
/* If it's a streaming zip, we _require_ CDF */
|
||||
bb_error_msg_and_die("can't find file table");
|
||||
}
|
||||
#endif
|
||||
if (zip.fmt.zip_flags & SWAP_LE16(0x0001)) {
|
||||
/* 0x0001 - encrypted */
|
||||
bb_error_msg_and_die("zip flag %s is not supported",
|
||||
"1 (encryption)");
|
||||
}
|
||||
dbg("File cmpsize:0x%x extra_len:0x%x ucmpsize:0x%x",
|
||||
(unsigned)zip.fmt.cmpsize,
|
||||
(unsigned)zip.fmt.extra_len,
|
||||
(unsigned)zip.fmt.ucmpsize
|
||||
);
|
||||
|
||||
/* Sets the file name and set the file sizes using ZIP64 if present */
|
||||
unzip_set_xstate(xstate, &zip);
|
||||
|
||||
/* Handle multiple file switching */
|
||||
if ((!is_dir) && (xstate->dst_dir != NULL)) {
|
||||
xstate->dst_size = zip_header.formatted.ucmpsize;
|
||||
xstate->dst_name = xzalloc(zip_header.formatted.filename_len + 1);
|
||||
safe_read(xstate->src_fd, xstate->dst_name, zip_header.formatted.filename_len);
|
||||
xstate->dst_name[zip_header.formatted.filename_len] = 0;
|
||||
n = transformer_switch_file(xstate);
|
||||
free(xstate->dst_name);
|
||||
if (n < 0)
|
||||
if ((!is_dir) && (xstate->dst_dir != NULL) &&
|
||||
(transformer_switch_file(xstate) < 0)) {
|
||||
goto err;
|
||||
} else {
|
||||
unzip_skip(xstate->src_fd, zip_header.formatted.filename_len);
|
||||
}
|
||||
|
||||
/* Skip extra header bytes */
|
||||
unzip_skip(xstate->src_fd, zip_header.formatted.extra_len);
|
||||
n = unzip_extract(&zip, xstate);
|
||||
|
||||
if (zip_header.formatted.method == 0) {
|
||||
if (!is_dir)
|
||||
bb_error_msg_and_err("zip method method 0 is only supported for directories");
|
||||
} else {
|
||||
/* Method 8 - inflate */
|
||||
xstate->bytes_in = zip_header.formatted.cmpsize;
|
||||
n = inflate_unzip(xstate);
|
||||
|
||||
/* Validate decompression */
|
||||
if (n >= 0) {
|
||||
if (zip_header.formatted.ucmpsize != 0xffffffffL && zip_header.formatted.ucmpsize != xstate->bytes_out)
|
||||
bb_error_msg_and_err("bad length");
|
||||
else if (zip_header.formatted.crc32 != (xstate->crc32 ^ 0xffffffffL))
|
||||
bb_error_msg_and_err("crc error");
|
||||
} else if (n != -ENOSPC) {
|
||||
bb_error_msg_and_err("inflate error");
|
||||
}
|
||||
}
|
||||
/* Only process the first file if not extracting to a dir */
|
||||
if (xstate->dst_dir == NULL)
|
||||
break;
|
||||
|
|
|
@ -149,7 +149,6 @@ IF_DESKTOP(long long) int FAST_FUNC unpack_vtsi_stream(transformer_state_t* xsta
|
|||
buf = (uint8_t*)segment + footer.segment_num * sizeof(VTSI_SEGMENT);
|
||||
|
||||
lseek(src_fd, footer.segment_offset, SEEK_SET);
|
||||
/* coverity[tainted_data_argument] */
|
||||
safe_read(src_fd, segment, footer.segment_num * sizeof(VTSI_SEGMENT));
|
||||
|
||||
if (!check_vtsi_segment(&footer, segment))
|
||||
|
|
|
@ -19,6 +19,10 @@ archive_handle_t* FAST_FUNC init_handle(void)
|
|||
archive_handle->action_data = data_skip;
|
||||
archive_handle->filter = filter_accept_all;
|
||||
archive_handle->seek = seek_by_jump;
|
||||
#if ENABLE_CPIO || ENABLE_RPM2CPIO || ENABLE_RPM
|
||||
archive_handle->cpio__owner.uid = (uid_t)-1L;
|
||||
archive_handle->cpio__owner.gid = (gid_t)-1L;
|
||||
#endif
|
||||
|
||||
return archive_handle;
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* Library header for busybox/Bled
|
||||
*
|
||||
* Rewritten for Bled (Base Library for Easy Decompression)
|
||||
* Copyright © 2014-2022 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2014-2023 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* Licensed under GPLv2 or later, see file LICENSE in this source tree.
|
||||
*/
|
||||
|
@ -39,20 +39,24 @@
|
|||
#include <sys/types.h>
|
||||
#include <io.h>
|
||||
|
||||
#define BB_BUFSIZE 0x40000
|
||||
#define ONE_TB 1099511627776ULL
|
||||
|
||||
#define ENABLE_DESKTOP 1
|
||||
#define ENABLE_DESKTOP 1
|
||||
#if ENABLE_DESKTOP
|
||||
#define IF_DESKTOP(x) x
|
||||
#define IF_DESKTOP(x) x
|
||||
#define IF_NOT_DESKTOP(x)
|
||||
#else
|
||||
#define IF_DESKTOP(x)
|
||||
#define IF_NOT_DESKTOP(x) x
|
||||
#define IF_NOT_DESKTOP(x) x
|
||||
#endif
|
||||
#define IF_NOT_FEATURE_LZMA_FAST(x) x
|
||||
#define ENABLE_FEATURE_UNZIP_CDF 1
|
||||
#define ENABLE_FEATURE_UNZIP_BZIP2 1
|
||||
#define ENABLE_FEATURE_UNZIP_LZMA 1
|
||||
#define ENABLE_FEATURE_UNZIP_XZ 1
|
||||
|
||||
#define uoff_t unsigned off_t
|
||||
#define OFF_FMT PRIi64
|
||||
#define uoff_t unsigned off_t
|
||||
#define OFF_FMT "ll"
|
||||
|
||||
#ifndef _MODE_T_
|
||||
#define _MODE_T_
|
||||
|
@ -100,6 +104,7 @@ typedef unsigned int uid_t;
|
|||
#define get_le16(ptr) (*(const uint16_t *)(ptr))
|
||||
#endif
|
||||
|
||||
extern uint32_t BB_BUFSIZE;
|
||||
extern smallint bb_got_signal;
|
||||
extern uint32_t *global_crc32_table;
|
||||
extern jmp_buf bb_error_jmp;
|
||||
|
@ -163,7 +168,6 @@ static inline void *xrealloc(void *ptr, size_t size) {
|
|||
#define bb_msg_read_error "read error"
|
||||
#define bb_msg_write_error "write error"
|
||||
#define bb_mode_string(str, mode) "[not implemented]"
|
||||
#define bb_copyfd_exact_size(fd1, fd2, size) bb_error_msg("Not implemented")
|
||||
#define bb_make_directory(path, mode, flags) SHCreateDirectoryExU(NULL, path, NULL)
|
||||
|
||||
static inline int link(const char *oldpath, const char *newpath) {errno = ENOSYS; return -1;}
|
||||
|
@ -188,6 +192,11 @@ static inline int full_read(int fd, void *buf, unsigned int count) {
|
|||
errno = EFAULT;
|
||||
return -1;
|
||||
}
|
||||
/* None of our r/w buffers should be larger than BB_BUFSIZE */
|
||||
if (count > BB_BUFSIZE) {
|
||||
errno = E2BIG;
|
||||
return -1;
|
||||
}
|
||||
if ((bled_cancel_request != NULL) && (*bled_cancel_request != 0)) {
|
||||
errno = EINTR;
|
||||
return -1;
|
||||
|
@ -212,9 +221,56 @@ static inline int full_read(int fd, void *buf, unsigned int count) {
|
|||
|
||||
static inline int full_write(int fd, const void* buffer, unsigned int count)
|
||||
{
|
||||
/* None of our r/w buffers should be larger than BB_BUFSIZE */
|
||||
if (count > BB_BUFSIZE) {
|
||||
errno = E2BIG;
|
||||
return -1;
|
||||
}
|
||||
|
||||
return (bled_write != NULL) ? bled_write(fd, buffer, count) : _write(fd, buffer, count);
|
||||
}
|
||||
|
||||
static inline void bb_copyfd_exact_size(int fd1, int fd2, off_t size)
|
||||
{
|
||||
off_t rb = 0;
|
||||
uint8_t* buf = NULL;
|
||||
|
||||
if (fd1 < 0 || fd2 < 0)
|
||||
bb_error_msg_and_die("invalid fd");
|
||||
|
||||
/* Enforce a 1 TB limit to keep Coverity happy */
|
||||
if (size > ONE_TB)
|
||||
bb_error_msg_and_die("too large");
|
||||
|
||||
buf = malloc(BB_BUFSIZE);
|
||||
if (buf == NULL)
|
||||
bb_error_msg_and_die("out of memory");
|
||||
|
||||
while (rb < size) {
|
||||
int r, w;
|
||||
r = full_read(fd1, buf, (unsigned int)MIN(size - rb, BB_BUFSIZE));
|
||||
if (r < 0) {
|
||||
free(buf);
|
||||
bb_error_msg_and_die("read error");
|
||||
}
|
||||
if (r == 0) {
|
||||
bb_error_msg("short read");
|
||||
break;
|
||||
}
|
||||
w = full_write(fd2, buf, r);
|
||||
if (w < 0) {
|
||||
free(buf);
|
||||
bb_error_msg_and_die("write error");
|
||||
}
|
||||
if (w != r) {
|
||||
bb_error_msg("short write");
|
||||
break;
|
||||
}
|
||||
rb += r;
|
||||
}
|
||||
free(buf);
|
||||
}
|
||||
|
||||
static inline struct tm *localtime_r(const time_t *timep, struct tm *result) {
|
||||
if (localtime_s(result, timep) != 0)
|
||||
result = NULL;
|
||||
|
|
|
@ -57,11 +57,7 @@
|
|||
*/
|
||||
#if defined(__GNUC__)
|
||||
#define RETURNS_MALLOC __attribute__ ((malloc))
|
||||
#ifdef __MINGW32__
|
||||
#define PACKED __attribute__ ((packed, gcc_struct))
|
||||
#else
|
||||
#define PACKED __attribute__ ((__packed__))
|
||||
#endif
|
||||
#define ALIGNED(m) __attribute__ ((__aligned__(m)))
|
||||
#define PRAGMA_BEGIN_PACKED
|
||||
#define PRAGMA_END_PACKED
|
||||
|
|
546
src/db.h
|
@ -1,7 +1,8 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* DB of the hash values we know for downloadable content (GRUB, Syslinux, etc.)
|
||||
* Copyright © 2016-2020 Pete Batard <pete@akeo.ie>
|
||||
* DB of the known SHA256 hash values for Rufus downloadable content (GRUB, Syslinux, etc.)
|
||||
* as well PE256 hash values for UEFI revoked content (DBX, SkuSiPolicy.p7b)
|
||||
* Copyright © 2016-2023 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -24,9 +25,9 @@
|
|||
* NB: Table data was generated from the https://github.com/pbatard/rufus-web/tree/gh-pages/files/
|
||||
* directory using the https://github.com/pbatard/rufus-web/blob/gh-pages/files/gendb.sh script.
|
||||
*/
|
||||
|
||||
static uint8_t sha256db[] = {
|
||||
0x01, 0x21, 0x98, 0x20, 0xd9, 0x1c, 0x28, 0x7b, 0x35, 0x28, 0x06, 0xf1, 0xb6, 0xa8, 0x0d, 0x4a, 0x8a, 0xf4, 0x5c, 0xf5, 0x04, 0x83, 0xed, 0x6b, 0xe0, 0xc6, 0x0e, 0x7a, 0x66, 0x9c, 0x67, 0x87, // syslinux-6.04/pre2/ldlinux.bss
|
||||
0x0a, 0xd1, 0x3c, 0x2a, 0xb9, 0xd1, 0xcc, 0x66, 0x73, 0x70, 0xc4, 0x34, 0xf3, 0xe2, 0xa0, 0x54, 0x1c, 0xb8, 0x37, 0xdb, 0x72, 0x3e, 0x19, 0xae, 0x81, 0xc8, 0xee, 0x0b, 0xbe, 0x10, 0xdc, 0xe0, // grub-2.06@e67a551a-nonstandard/core.img
|
||||
0x11, 0x0c, 0x50, 0x1b, 0xfa, 0x9e, 0x72, 0xa8, 0x8c, 0xdb, 0xb8, 0xba, 0x11, 0xe1, 0xf0, 0x76, 0x1a, 0xec, 0x28, 0xbf, 0x04, 0x44, 0x67, 0xff, 0x38, 0x2c, 0x06, 0x95, 0xd5, 0x1f, 0x8a, 0x83, // grub-2.04-nonstandard/core.img
|
||||
0x12, 0xbd, 0x22, 0xd2, 0xb3, 0x69, 0x56, 0x0f, 0x89, 0xb8, 0x50, 0x7e, 0x7e, 0x74, 0xeb, 0xc5, 0xea, 0x44, 0x91, 0x48, 0x75, 0xf0, 0xa4, 0xcb, 0x1e, 0xa6, 0xfb, 0x4e, 0xc9, 0x89, 0x58, 0x17, // syslinux-6.03/pre6/ldlinux.sys
|
||||
0x15, 0x5f, 0x36, 0x7b, 0xb1, 0x30, 0xfe, 0x05, 0x5c, 0x79, 0x9f, 0x88, 0xb3, 0xc0, 0xc1, 0xa0, 0x0a, 0x18, 0x05, 0x78, 0x22, 0x69, 0xcf, 0x7e, 0x54, 0xaa, 0x61, 0xbd, 0xe3, 0x8e, 0x05, 0x92, // syslinux-6.03/pre3/ldlinux.bss
|
||||
|
@ -60,6 +61,7 @@ static uint8_t sha256db[] = {
|
|||
0x4e, 0xfb, 0x8f, 0xde, 0xb9, 0xe1, 0xe2, 0xa2, 0xc3, 0xf0, 0x11, 0xca, 0x77, 0x3b, 0x95, 0xf4, 0xb9, 0x7f, 0xbc, 0x7f, 0x3d, 0x40, 0x4d, 0x7c, 0x60, 0xf3, 0x4a, 0x61, 0x43, 0x44, 0x7e, 0x7f, // syslinux-5.01/ldlinux.c32
|
||||
0x50, 0xca, 0xe9, 0x94, 0x79, 0x68, 0xdf, 0xa6, 0xd7, 0x11, 0xcd, 0xb0, 0x7d, 0x84, 0xf2, 0x56, 0x78, 0xd6, 0x69, 0xbf, 0xb0, 0x29, 0xaa, 0x56, 0xa1, 0x04, 0x55, 0xb0, 0xcd, 0x06, 0xca, 0xd2, // syslinux-6.03/pre3/ldlinux.sys
|
||||
0x52, 0x0b, 0x46, 0x87, 0x46, 0x22, 0xb5, 0xa6, 0x57, 0x83, 0xdb, 0x7c, 0x12, 0x42, 0x53, 0x2d, 0x13, 0x7f, 0x95, 0xfe, 0xbf, 0x4d, 0xf9, 0xc2, 0x7e, 0x67, 0x94, 0x3a, 0x21, 0x27, 0xf6, 0x08, // syslinux-5.01/ldlinux.sys
|
||||
0x52, 0x80, 0x86, 0xed, 0x16, 0xf4, 0x93, 0xb9, 0x04, 0xf0, 0x75, 0xd1, 0xe9, 0xd8, 0xcb, 0x8a, 0x2e, 0xdc, 0xb4, 0x37, 0x40, 0x30, 0x51, 0xd8, 0x79, 0x40, 0x08, 0x9a, 0x16, 0xed, 0x4d, 0x33, // grub-2.06@e67a551a/core.img
|
||||
0x54, 0x4b, 0x3e, 0x86, 0xfc, 0xa2, 0x7a, 0x12, 0xf4, 0x81, 0xfd, 0x32, 0x53, 0x57, 0x1c, 0xc5, 0xe6, 0x1a, 0x19, 0xed, 0x9a, 0x43, 0xbc, 0x12, 0xa8, 0x07, 0x6d, 0x90, 0x8f, 0x98, 0x39, 0x6f, // syslinux-6.03/pre2/ldlinux.sys
|
||||
0x55, 0xb9, 0x27, 0xd2, 0x17, 0xe8, 0x83, 0xd9, 0xe1, 0x58, 0xc9, 0x51, 0x80, 0xb1, 0xba, 0x79, 0x97, 0x3a, 0xd3, 0xd9, 0x44, 0xc2, 0xc6, 0xa1, 0xed, 0x49, 0x5c, 0xd3, 0xef, 0xc3, 0x54, 0x1c, // syslinux-5.11/ldlinux.bss
|
||||
0x56, 0x7a, 0x32, 0x6a, 0x20, 0x9a, 0xe8, 0x69, 0x9a, 0x7d, 0xb5, 0xc0, 0xa4, 0x34, 0x52, 0x71, 0x05, 0x1e, 0x0a, 0x84, 0x03, 0xae, 0x21, 0x13, 0xd9, 0xd0, 0x12, 0xc4, 0x8d, 0x99, 0xa4, 0x13, // syslinux-6.03/pre12/ldlinux.sys
|
||||
|
@ -73,11 +75,12 @@ static uint8_t sha256db[] = {
|
|||
0x6a, 0xbc, 0xdc, 0x80, 0x3a, 0x30, 0x85, 0xea, 0x5f, 0x9d, 0xa1, 0xb4, 0x3e, 0xdb, 0x2e, 0xad, 0xa2, 0x75, 0x36, 0x0d, 0xb8, 0x11, 0xc9, 0xac, 0xf5, 0x9a, 0x55, 0x5f, 0x67, 0x7b, 0x2d, 0x8b, // syslinux-6.03/pre12/ldlinux.bss
|
||||
0x73, 0xb6, 0x27, 0x67, 0xa1, 0x62, 0x00, 0xb9, 0xaf, 0x19, 0x3a, 0x7d, 0x5c, 0x94, 0xe9, 0xc2, 0x94, 0xc6, 0xdb, 0xb6, 0xd5, 0xb1, 0x7c, 0x15, 0x03, 0x8c, 0x9f, 0x31, 0x73, 0xc9, 0xa7, 0xbc, // syslinux-6.04/ldlinux.sys
|
||||
0x75, 0x6f, 0x89, 0x25, 0x23, 0xc6, 0x8d, 0x27, 0x32, 0x28, 0x8b, 0x5a, 0xd4, 0x2d, 0x7d, 0xc7, 0x4e, 0xa7, 0xa7, 0x08, 0x9b, 0x04, 0x2b, 0x12, 0x5f, 0x5d, 0x74, 0x7f, 0xf3, 0x20, 0xa0, 0x77, // syslinux-4.07/vesamenu.c32
|
||||
0x76, 0xd1, 0x2b, 0x17, 0xfd, 0x05, 0xd3, 0x10, 0xb0, 0x5d, 0x00, 0xa8, 0x38, 0x77, 0x06, 0xc5, 0xce, 0x35, 0xd4, 0xb0, 0x50, 0xf2, 0x23, 0x9d, 0x15, 0xd3, 0xc9, 0xac, 0x92, 0xc5, 0xdd, 0xbc, // grub-2.06-fedora-nonstandard/core.img
|
||||
0x76, 0xd1, 0x2b, 0x17, 0xfd, 0x05, 0xd3, 0x10, 0xb0, 0x5d, 0x00, 0xa8, 0x38, 0x77, 0x06, 0xc5, 0xce, 0x35, 0xd4, 0xb0, 0x50, 0xf2, 0x23, 0x9d, 0x15, 0xd3, 0xc9, 0xac, 0x92, 0xc5, 0xdd, 0xbc, // grub-2.06-nonstandard-gdie/core.img
|
||||
0x77, 0x9a, 0x5e, 0xbd, 0x69, 0xd3, 0x28, 0x5e, 0xb9, 0xed, 0x4a, 0xc7, 0xc0, 0x4d, 0x2d, 0x15, 0xcb, 0xa1, 0x8a, 0x1f, 0x97, 0xc7, 0xc4, 0xbe, 0x62, 0x48, 0x93, 0xa9, 0xe1, 0xb0, 0x89, 0x2e, // syslinux-6.03/pre9/ldlinux.sys
|
||||
0x78, 0x64, 0x8e, 0xf0, 0xc5, 0x00, 0x41, 0x75, 0xb9, 0xa8, 0xea, 0x33, 0x30, 0x14, 0xea, 0x02, 0xc9, 0x17, 0xf8, 0x23, 0xe7, 0x7a, 0x3e, 0xc9, 0xac, 0xd9, 0xd2, 0x2b, 0x46, 0x02, 0xf3, 0x6d, // syslinux-6.03/pre13/ldlinux.sys
|
||||
0x7d, 0xa9, 0xc5, 0x21, 0x76, 0xb8, 0xaf, 0x01, 0x64, 0xea, 0x39, 0x21, 0x22, 0x44, 0xb1, 0x0a, 0xa0, 0xc7, 0x97, 0xe7, 0x65, 0xbb, 0x6b, 0x92, 0x69, 0xb5, 0x8b, 0xc9, 0xe5, 0x0a, 0x9f, 0x18, // syslinux-5.01/ldlinux.bss
|
||||
0x82, 0x11, 0xfa, 0xe8, 0xaf, 0xf0, 0x23, 0x3f, 0x05, 0xa8, 0xb7, 0x8c, 0x58, 0x15, 0x25, 0xe2, 0x81, 0xac, 0x98, 0x23, 0x54, 0xa8, 0xc4, 0x3b, 0xb4, 0x96, 0x5e, 0x61, 0xdc, 0x98, 0xb4, 0x62, // syslinux-6.03/pre8/ldlinux.bss
|
||||
0x83, 0x57, 0xaa, 0xd3, 0x6a, 0xec, 0x68, 0x21, 0xcb, 0xf2, 0x17, 0x4d, 0xb5, 0xd2, 0x09, 0xef, 0x2c, 0xd2, 0x62, 0x88, 0x12, 0x39, 0xeb, 0xc3, 0xf4, 0xc1, 0xcf, 0x55, 0xab, 0x10, 0xee, 0x55, // grub-2.12~rc1/core.img
|
||||
0x83, 0x9b, 0xd0, 0x8a, 0xcb, 0x68, 0x47, 0xd6, 0x55, 0x07, 0xf1, 0x4e, 0x7a, 0x55, 0x6e, 0x91, 0xe6, 0x12, 0x9c, 0x47, 0x86, 0x3f, 0x7d, 0x61, 0xe2, 0xce, 0x6d, 0xb7, 0x8d, 0xf3, 0xd2, 0x3f, // syslinux-6.03/pre9/ldlinux.bss
|
||||
0x87, 0xaa, 0x91, 0xf8, 0x7f, 0xba, 0x5f, 0x31, 0x79, 0x43, 0x08, 0xda, 0xa4, 0xa4, 0x8d, 0xad, 0x6c, 0xf6, 0xfa, 0x34, 0x26, 0x4d, 0x66, 0xb8, 0x84, 0xb8, 0xb9, 0xdc, 0x96, 0x42, 0xed, 0x86, // syslinux-5.02/ldlinux.sys
|
||||
0x88, 0x14, 0xe5, 0x76, 0xab, 0xc1, 0xaa, 0x44, 0xdd, 0xe9, 0x43, 0xb0, 0xca, 0xae, 0xe8, 0x33, 0xa5, 0x81, 0x01, 0x42, 0x61, 0x4a, 0xde, 0xeb, 0x4c, 0xc7, 0x25, 0xe7, 0x8a, 0x50, 0x45, 0xb7, // syslinux-6.03/ldlinux.bss
|
||||
|
@ -90,6 +93,7 @@ static uint8_t sha256db[] = {
|
|||
0xa9, 0x4a, 0x99, 0xe6, 0xde, 0x68, 0x81, 0x44, 0x49, 0x2b, 0x38, 0xdb, 0xee, 0x09, 0xde, 0x07, 0x30, 0xe3, 0x2e, 0x1c, 0xfd, 0x0a, 0xb2, 0x54, 0x99, 0x22, 0xff, 0xa8, 0x04, 0x01, 0xad, 0x49, // syslinux-6.03/pre2/ldlinux.bss
|
||||
0xa9, 0x95, 0x68, 0x57, 0x9c, 0xd2, 0x51, 0xaf, 0xf1, 0x34, 0xfc, 0xaa, 0xa8, 0x09, 0x91, 0x60, 0x5e, 0x8f, 0xb1, 0x19, 0x74, 0x51, 0xf7, 0x51, 0xaa, 0x4d, 0x6c, 0x84, 0xbf, 0x65, 0xf4, 0xe3, // syslinux-6.03/pre15/ldlinux.sys
|
||||
0xaa, 0x18, 0x1a, 0x4e, 0xb2, 0xab, 0xb0, 0xfb, 0xbc, 0x17, 0xc4, 0xc8, 0x5a, 0x17, 0xa0, 0x0b, 0x15, 0x52, 0x4d, 0x7f, 0x2b, 0x0b, 0xea, 0xd4, 0xf8, 0x74, 0x2e, 0x70, 0xa3, 0x3a, 0xfa, 0xf8, // grub-2.04/core.img
|
||||
0xad, 0x18, 0x82, 0x0e, 0xcd, 0xe8, 0x74, 0xc7, 0x19, 0x10, 0xbd, 0x24, 0xf3, 0x03, 0x55, 0x17, 0x61, 0x03, 0xd0, 0x21, 0x78, 0x9c, 0xc0, 0x0b, 0xd4, 0x13, 0xd8, 0x0f, 0x5b, 0x02, 0x59, 0xf4, // grub-2.06@e67a551a-nonstandard-gdie/core.img
|
||||
0xb1, 0x97, 0x91, 0x33, 0xa4, 0x5e, 0x29, 0x4f, 0x54, 0xee, 0xd0, 0xbd, 0x92, 0xb7, 0xf2, 0xb9, 0xa3, 0xd2, 0x26, 0x45, 0xae, 0x28, 0x20, 0x0e, 0x4a, 0xd8, 0xfd, 0x98, 0xaf, 0x24, 0x1a, 0x07, // grub-2.05/core.img
|
||||
0xb2, 0xf0, 0xde, 0x2e, 0x01, 0xa7, 0xe3, 0x4d, 0x96, 0xa9, 0x76, 0x36, 0x43, 0x05, 0xd3, 0x9f, 0xf8, 0x49, 0xd5, 0x0a, 0xd1, 0x3a, 0xd1, 0xf8, 0xa8, 0xb4, 0x41, 0x1d, 0x1d, 0x53, 0x4e, 0x88, // syslinux-5.10/ldlinux.bss
|
||||
0xb3, 0xa8, 0xf2, 0x12, 0x89, 0x1c, 0xd2, 0x6e, 0x1a, 0xb4, 0x4a, 0xa8, 0x59, 0x8f, 0x6e, 0x64, 0xc6, 0x83, 0x19, 0x8d, 0x43, 0x00, 0x27, 0x54, 0xec, 0xbd, 0x8a, 0x78, 0xf2, 0xd0, 0xc0, 0x0b, // syslinux-6.03/pre8/ldlinux.sys
|
||||
|
@ -118,3 +122,537 @@ static uint8_t sha256db[] = {
|
|||
0xfb, 0x0a, 0x23, 0xca, 0x4d, 0x22, 0xfd, 0xd2, 0xad, 0x4e, 0xfa, 0x1b, 0x21, 0x08, 0xb6, 0x60, 0xd2, 0xff, 0xa3, 0xf2, 0xfb, 0xdd, 0x25, 0x32, 0xdc, 0xf1, 0x3f, 0x49, 0x33, 0x28, 0x46, 0x7b, // syslinux-6.03/pre11/ldlinux.bss
|
||||
0xfb, 0x49, 0xfd, 0x45, 0x8c, 0xaf, 0x47, 0x5a, 0x16, 0x05, 0x5e, 0x4a, 0x75, 0x5a, 0xc3, 0xe3, 0x95, 0x52, 0xf4, 0xe9, 0x6c, 0xa2, 0x0d, 0xea, 0x53, 0xf5, 0xc4, 0x09, 0x2b, 0x68, 0xfd, 0x4f, // syslinux-6.00/ldlinux.sys
|
||||
};
|
||||
|
||||
/*
|
||||
* DBX table data was generated through the following shell command:
|
||||
* wget -q -O - https://uefi.org/sites/default/files/resources/dbx_info.csv | tail -n +2 | awk -F "\"*,\"*" '{print $2}' | tr '[:upper:]' '[:lower:]' | sort | uniq -w 64 | awk -F '' '{for(i=1; i<=64; i+=2) {printf "0x%s%s, ", $i,$(i+1);}} {print ""}'
|
||||
*
|
||||
* Note that, because we are using the "UEFI Revocation List Contents" to generate the table
|
||||
* below and not the *signed* "UEFI Revocation List file(s)" and the Microsoft terms of use at
|
||||
* https://uefi.org/revocationlistfile make it clear that they governs only the use of the UEFI
|
||||
* Revocation List file(s), we assert that the utterly moronic and downright user-endangering
|
||||
* (since they effectively prevent end-users from being able to revoke bootloaders that should
|
||||
* be revoked, thereby fostering the proliferation of malware) Microsoft terms of use that
|
||||
* restrict the download and use of the "UEFI Revocation List file(s)" do not apply to the
|
||||
* table below, especially as it is not used in the context of UEFI itself or for installation
|
||||
* or update of UEFI systems.
|
||||
*/
|
||||
static uint8_t pe256dbx[] = {
|
||||
0x00, 0x21, 0xb5, 0xb1, 0x1c, 0xeb, 0x03, 0x40, 0x2d, 0x61, 0x81, 0x34, 0x80, 0x0a, 0x36, 0xc5, 0x4e, 0x1c, 0x43, 0x28, 0xad, 0x38, 0x9d, 0x50, 0xb4, 0x0e, 0xac, 0xc1, 0xe8, 0x81, 0xdc, 0xb5,
|
||||
0x00, 0x7f, 0x4c, 0x95, 0x12, 0x57, 0x13, 0xb1, 0x12, 0x09, 0x3e, 0x21, 0x66, 0x3e, 0x2d, 0x23, 0xe3, 0xc1, 0xae, 0x9c, 0xe4, 0xb5, 0xde, 0x0d, 0x58, 0xa2, 0x97, 0x33, 0x23, 0x36, 0xa2, 0xd8,
|
||||
0x01, 0xe2, 0xda, 0x8e, 0xc5, 0xa6, 0x92, 0x9d, 0xdb, 0xbb, 0xeb, 0x2e, 0x98, 0x07, 0x58, 0x6f, 0xac, 0xdd, 0xca, 0x6a, 0x7e, 0xf6, 0x2b, 0xfe, 0xbb, 0x58, 0x1b, 0xdc, 0x2d, 0x72, 0x74, 0xd6,
|
||||
0x02, 0x57, 0xff, 0x71, 0x0f, 0x2a, 0x16, 0xe4, 0x89, 0xb3, 0x74, 0x93, 0xc0, 0x76, 0x04, 0xa7, 0xcd, 0xa9, 0x61, 0x29, 0xd8, 0xa8, 0xfd, 0x68, 0xd2, 0xb6, 0xaf, 0x63, 0x39, 0x04, 0x31, 0x5d,
|
||||
0x02, 0xe6, 0x21, 0x6a, 0xca, 0xef, 0x64, 0x01, 0x40, 0x1f, 0xa5, 0x55, 0xec, 0xbe, 0xd9, 0x40, 0xb1, 0xa5, 0xf2, 0x56, 0x9a, 0xed, 0x92, 0x95, 0x61, 0x37, 0xae, 0x58, 0x48, 0x2e, 0xf1, 0xb7,
|
||||
0x03, 0x28, 0xf7, 0xdd, 0x12, 0xb5, 0x52, 0xef, 0xa7, 0xa9, 0xe0, 0x83, 0x73, 0x03, 0x33, 0xb8, 0x5f, 0x3f, 0x4e, 0x83, 0xd3, 0x93, 0x87, 0xfc, 0x53, 0x18, 0x63, 0xb4, 0x22, 0xf7, 0x5c, 0xc8,
|
||||
0x03, 0xdf, 0x45, 0x00, 0x27, 0x3c, 0x43, 0x18, 0x92, 0x96, 0xf0, 0x9d, 0x73, 0x49, 0x77, 0xc8, 0x82, 0xa0, 0x08, 0xfc, 0x05, 0x6f, 0x43, 0xc3, 0x09, 0xb9, 0xd2, 0x35, 0x1f, 0x31, 0x79, 0x2e,
|
||||
0x03, 0xf6, 0x4a, 0x29, 0x94, 0x8a, 0x88, 0xbe, 0xff, 0xdb, 0x03, 0x5e, 0x0b, 0x09, 0xa7, 0x37, 0x0c, 0xcf, 0x0c, 0xd9, 0xce, 0x6b, 0xcf, 0x8e, 0x64, 0x0c, 0x21, 0x07, 0x31, 0x8f, 0xab, 0x87,
|
||||
0x04, 0x0b, 0x3b, 0xc3, 0x39, 0xe9, 0xb6, 0xf9, 0xac, 0xd8, 0x28, 0xb8, 0x8f, 0x34, 0x82, 0xa5, 0xc3, 0xf6, 0x4e, 0x67, 0xe5, 0xa7, 0x14, 0xba, 0x1d, 0xa8, 0xa7, 0x04, 0x53, 0xb3, 0x4a, 0xf6,
|
||||
0x05, 0x72, 0x90, 0x29, 0xef, 0x94, 0x0c, 0x5e, 0x6e, 0xe9, 0x6b, 0x3b, 0x12, 0x53, 0xc0, 0x87, 0x83, 0xc0, 0x13, 0x29, 0xbc, 0xe2, 0xe9, 0x95, 0x1b, 0xc2, 0x2a, 0x09, 0x22, 0x3f, 0xc1, 0x5c,
|
||||
0x05, 0xd8, 0x7e, 0x15, 0x71, 0x34, 0x54, 0x61, 0x6f, 0x5b, 0x0e, 0xd7, 0x84, 0x9a, 0xb5, 0xc1, 0x71, 0x2a, 0xb8, 0x4f, 0x02, 0x34, 0x94, 0x78, 0xec, 0x2a, 0x38, 0xf9, 0x70, 0xc0, 0x14, 0x89,
|
||||
0x06, 0x5d, 0x94, 0xb9, 0xea, 0x00, 0x39, 0x7a, 0x2a, 0xdd, 0xb7, 0x47, 0xe1, 0xe0, 0x97, 0x8e, 0x4d, 0xe6, 0xbf, 0x17, 0x53, 0x39, 0x77, 0x8f, 0xb9, 0xb0, 0x76, 0x0f, 0xec, 0x3d, 0x3b, 0x61,
|
||||
0x06, 0xc6, 0x70, 0xf8, 0x57, 0x2b, 0xf8, 0x9a, 0xba, 0xe1, 0x3d, 0x14, 0xd8, 0x1f, 0xfe, 0x80, 0xd5, 0x55, 0x0f, 0x69, 0x68, 0x62, 0xb1, 0xab, 0x38, 0x6e, 0x4d, 0x8c, 0x56, 0xb0, 0x20, 0x16,
|
||||
0x06, 0xe3, 0xf6, 0x46, 0xce, 0xb1, 0x02, 0x37, 0x2e, 0x3e, 0x08, 0x6d, 0x46, 0x23, 0x4b, 0x06, 0xa9, 0xaf, 0x13, 0xee, 0xf6, 0x5a, 0xad, 0x18, 0x0e, 0xa2, 0x88, 0x0b, 0xf8, 0xbc, 0x12, 0xa8,
|
||||
0x06, 0xeb, 0x5b, 0xad, 0xd2, 0x6e, 0x4f, 0xae, 0x65, 0xf9, 0xa4, 0x23, 0x58, 0xde, 0xef, 0x7c, 0x18, 0xe5, 0x2c, 0xc0, 0x5f, 0xbb, 0x7f, 0xc7, 0x67, 0x76, 0xe6, 0x9d, 0x1b, 0x98, 0x2a, 0x14,
|
||||
0x07, 0xb6, 0xd3, 0xaa, 0x86, 0xd0, 0xa8, 0xd5, 0xf4, 0x6b, 0xdd, 0x58, 0x86, 0xd8, 0xf2, 0x0f, 0xa2, 0xdd, 0x93, 0x77, 0x89, 0x8d, 0x11, 0x39, 0xbd, 0x74, 0xb4, 0x1f, 0x5e, 0x7a, 0xe4, 0x4b,
|
||||
0x08, 0xbb, 0x22, 0x89, 0xe9, 0xe9, 0x1b, 0x4d, 0x20, 0xff, 0x3f, 0x15, 0x62, 0x51, 0x6a, 0xb0, 0x7e, 0x97, 0x9b, 0x2c, 0x6c, 0xef, 0xe2, 0xab, 0x70, 0xc6, 0xdf, 0xc1, 0x19, 0x9f, 0x8d, 0xa5,
|
||||
0x09, 0x28, 0xf0, 0x40, 0x8b, 0xf7, 0x25, 0xe6, 0x1d, 0x67, 0xd8, 0x71, 0x38, 0xa8, 0xee, 0xbc, 0x52, 0x96, 0x2d, 0x28, 0x47, 0xf1, 0x6e, 0x35, 0x87, 0x16, 0x3b, 0x16, 0x0e, 0x41, 0xb6, 0xad,
|
||||
0x09, 0xf7, 0x69, 0x96, 0x31, 0xc1, 0x8d, 0xb0, 0xc3, 0x34, 0x91, 0xeb, 0x4b, 0x3c, 0x65, 0xb8, 0xf2, 0x79, 0x23, 0x8c, 0x5f, 0xc5, 0xe3, 0xab, 0x0b, 0xa5, 0x27, 0x37, 0xdb, 0xbd, 0x26, 0xf3,
|
||||
0x09, 0xf9, 0x8a, 0xa9, 0x0f, 0x85, 0x19, 0x8c, 0x0d, 0x73, 0xf8, 0x9b, 0xa7, 0x7e, 0x87, 0xec, 0x6f, 0x59, 0x6c, 0x49, 0x13, 0x50, 0xfb, 0x8f, 0x8b, 0xba, 0x80, 0xa6, 0x2f, 0xbb, 0x91, 0x4b,
|
||||
0x0a, 0x3c, 0x20, 0x72, 0xef, 0x4f, 0xbd, 0xbf, 0x04, 0x5e, 0x18, 0x76, 0xe8, 0x55, 0xbb, 0x8a, 0xd5, 0xdd, 0x08, 0x09, 0xf6, 0x6a, 0xd1, 0x44, 0x22, 0x39, 0xa7, 0xd8, 0x56, 0xad, 0x90, 0x8e,
|
||||
0x0a, 0x62, 0x07, 0x07, 0xac, 0xf2, 0x3a, 0x4e, 0x6c, 0xdc, 0x35, 0x7a, 0x14, 0x99, 0xe1, 0x48, 0x52, 0xb6, 0x05, 0xd9, 0xeb, 0x61, 0x86, 0x42, 0x2f, 0x57, 0xd4, 0x58, 0xe6, 0x27, 0xd6, 0xc0,
|
||||
0x0a, 0x75, 0xea, 0x0b, 0x1d, 0x70, 0xea, 0xa4, 0xd3, 0xf3, 0x74, 0x24, 0x6d, 0xb5, 0x4f, 0xc7, 0xb4, 0x3e, 0x7f, 0x59, 0x6a, 0x35, 0x33, 0x09, 0xb9, 0xc3, 0x6b, 0x4f, 0xd9, 0x75, 0x72, 0x5e,
|
||||
0x0b, 0x49, 0x08, 0xad, 0x33, 0xcb, 0x2f, 0x7e, 0x87, 0xd3, 0x10, 0x8b, 0x74, 0x36, 0x4c, 0x5c, 0x42, 0xfa, 0x59, 0x78, 0x07, 0xee, 0xac, 0x98, 0xde, 0x5e, 0xc6, 0x3f, 0x58, 0x96, 0xce, 0x34,
|
||||
0x0c, 0x0c, 0x78, 0x83, 0x7f, 0xa7, 0x67, 0xeb, 0x04, 0x5b, 0x81, 0x99, 0xe1, 0xe2, 0x0a, 0xd6, 0x66, 0xf9, 0x09, 0x28, 0xda, 0xee, 0xb8, 0xf5, 0xe5, 0x25, 0x3d, 0x8e, 0x78, 0x77, 0xfc, 0xb4,
|
||||
0x0c, 0x51, 0xd7, 0x90, 0x6f, 0xc4, 0x93, 0x11, 0x49, 0x76, 0x5d, 0xa8, 0x86, 0x82, 0x42, 0x6b, 0x2c, 0xfe, 0x9e, 0x6a, 0xa4, 0xf2, 0x72, 0x53, 0xea, 0xb4, 0x00, 0x11, 0x14, 0x32, 0xe3, 0xa7,
|
||||
0x0c, 0xa5, 0xe6, 0x02, 0x46, 0x82, 0x58, 0xb0, 0x68, 0x5a, 0x2b, 0x2b, 0x7f, 0x02, 0x8b, 0x97, 0x73, 0x54, 0x60, 0x2a, 0x82, 0xad, 0xa8, 0x6c, 0x99, 0x19, 0xfc, 0x47, 0x2a, 0xe4, 0xca, 0x40,
|
||||
0x0c, 0xe0, 0x21, 0x00, 0xf6, 0x7c, 0x7e, 0xf8, 0x5f, 0x4e, 0xed, 0x36, 0x8f, 0x02, 0xbf, 0x70, 0x92, 0x38, 0x0a, 0x3c, 0x23, 0xca, 0x91, 0xfd, 0x7f, 0x19, 0x43, 0x0d, 0x94, 0xb0, 0x0c, 0x19,
|
||||
0x0d, 0x85, 0xda, 0xaa, 0x48, 0x1b, 0x1b, 0xe8, 0x43, 0x20, 0xe1, 0x2b, 0x50, 0x78, 0x79, 0x4d, 0xa2, 0x96, 0x28, 0xac, 0xb4, 0x3b, 0x69, 0xc8, 0x90, 0x9d, 0x29, 0x1b, 0xb9, 0x95, 0xca, 0x72,
|
||||
0x0d, 0xc2, 0x4c, 0x75, 0xeb, 0x1a, 0xef, 0x56, 0xb9, 0xf1, 0x3a, 0xb9, 0xde, 0x60, 0xe2, 0xec, 0xa1, 0xc4, 0x51, 0x00, 0x34, 0xe2, 0x90, 0xbb, 0xb3, 0x6c, 0xf6, 0x0a, 0x54, 0x9b, 0x23, 0x4c,
|
||||
0x0e, 0x44, 0x21, 0x2b, 0xad, 0xf4, 0x0d, 0x6b, 0x8d, 0xe3, 0x31, 0x1e, 0x63, 0x20, 0x45, 0x37, 0x05, 0x88, 0xe0, 0xb2, 0x3b, 0x7a, 0x48, 0x0e, 0xb5, 0xdc, 0x10, 0xdb, 0x65, 0xd1, 0xb4, 0xb3,
|
||||
0x0f, 0xa3, 0xa2, 0x9a, 0xd0, 0x51, 0x30, 0xd7, 0xfe, 0x5b, 0xf4, 0xd2, 0x59, 0x65, 0x63, 0xcd, 0xed, 0x1d, 0x87, 0x40, 0x96, 0xaa, 0xcc, 0x18, 0x10, 0x69, 0x93, 0x2a, 0x2e, 0x49, 0x51, 0x9a,
|
||||
0x11, 0x42, 0xa0, 0xcc, 0x7c, 0x90, 0x04, 0xdf, 0xf6, 0x4c, 0x59, 0x48, 0x48, 0x4d, 0x6a, 0x7e, 0xc3, 0x51, 0x4e, 0x17, 0x6f, 0x5c, 0xa6, 0xbd, 0xee, 0xd7, 0xa0, 0x93, 0x94, 0x0b, 0x93, 0xcc,
|
||||
0x13, 0x64, 0xb7, 0xb9, 0x4a, 0xb2, 0xa9, 0x3e, 0x79, 0xd2, 0x97, 0xeb, 0xf6, 0xce, 0x0a, 0x30, 0xf7, 0x99, 0x7e, 0x59, 0x29, 0xe4, 0x08, 0xef, 0x0d, 0x3b, 0x5d, 0x54, 0xc6, 0x4e, 0x7b, 0x90,
|
||||
0x13, 0xa1, 0xf3, 0x7b, 0xed, 0xfb, 0x54, 0x17, 0xb6, 0xb7, 0x37, 0xe2, 0xa3, 0x81, 0x6c, 0x8f, 0xd5, 0x87, 0xd7, 0x4d, 0x83, 0x69, 0x14, 0xb2, 0xb2, 0xed, 0xc9, 0xfd, 0x6c, 0xa3, 0x0e, 0x58,
|
||||
0x13, 0xdb, 0xa2, 0x84, 0x47, 0xfd, 0xbe, 0x3c, 0x8a, 0x24, 0xfe, 0xe3, 0xeb, 0x88, 0x63, 0x8c, 0xe1, 0xd8, 0xf9, 0x7c, 0xd4, 0x92, 0x50, 0x56, 0xc0, 0xad, 0x0e, 0x91, 0xca, 0x51, 0x23, 0x7d,
|
||||
0x14, 0x77, 0x30, 0xb4, 0x2f, 0x11, 0xfe, 0x49, 0x3f, 0xe9, 0x02, 0xb6, 0x25, 0x1e, 0x97, 0xcd, 0x2b, 0x6f, 0x34, 0xd3, 0x6a, 0xf5, 0x93, 0x30, 0xf1, 0x1d, 0x02, 0xa4, 0x2f, 0x94, 0x0d, 0x07,
|
||||
0x14, 0x8f, 0xe1, 0x8f, 0x71, 0x5a, 0x9f, 0xcf, 0xe1, 0xa4, 0x44, 0xce, 0x0f, 0xff, 0x7f, 0x85, 0x86, 0x9e, 0xb4, 0x22, 0x33, 0x0d, 0xc0, 0x4b, 0x31, 0x4c, 0x0f, 0x29, 0x5d, 0x6d, 0xa7, 0x9e,
|
||||
0x15, 0x10, 0x98, 0x8d, 0x3d, 0xcc, 0xe1, 0x20, 0xf2, 0x26, 0x96, 0xa9, 0xe8, 0x7b, 0x02, 0xe7, 0xfa, 0xd6, 0x36, 0x7e, 0xf4, 0xae, 0x8b, 0xfd, 0x54, 0xcd, 0xb5, 0x28, 0xa5, 0xc4, 0x8e, 0x99,
|
||||
0x16, 0x59, 0x8e, 0xe3, 0x9b, 0x71, 0x6e, 0xd9, 0xe4, 0x76, 0x5a, 0x44, 0xab, 0xf8, 0x69, 0x06, 0xc9, 0xb2, 0x5c, 0x25, 0xab, 0xf6, 0x31, 0xcc, 0x78, 0xec, 0xe6, 0xf7, 0x21, 0x1b, 0x03, 0x65,
|
||||
0x17, 0x2f, 0xa5, 0x84, 0xb4, 0xee, 0xa5, 0xa5, 0xd4, 0x10, 0x4f, 0xb0, 0xac, 0x30, 0xed, 0xe0, 0x32, 0xcc, 0xd3, 0x1c, 0xd2, 0x67, 0x5d, 0x70, 0x03, 0xd7, 0x9a, 0x2c, 0xd0, 0xc2, 0x43, 0xe6,
|
||||
0x17, 0x88, 0xd8, 0x4a, 0xa6, 0x1e, 0xde, 0x6f, 0x2e, 0x96, 0xcf, 0xc9, 0x00, 0xad, 0x1c, 0xab, 0x1c, 0x5b, 0xe8, 0x65, 0x37, 0xf2, 0x72, 0x12, 0xe8, 0xc2, 0x91, 0xd6, 0xad, 0xe3, 0xb1, 0xe9,
|
||||
0x17, 0xc2, 0xb5, 0xb9, 0x66, 0x93, 0xcd, 0xc2, 0x95, 0x1c, 0x89, 0xdd, 0xe6, 0x41, 0xd1, 0x47, 0x16, 0x06, 0x3f, 0x5f, 0xc8, 0x79, 0x5c, 0xeb, 0xc6, 0x35, 0x37, 0x8b, 0x73, 0x04, 0x4e, 0x8b,
|
||||
0x19, 0x9f, 0x3c, 0xf9, 0x90, 0x81, 0x6d, 0x71, 0x0f, 0x55, 0x67, 0x22, 0xca, 0x06, 0x85, 0x97, 0xc4, 0x34, 0x1b, 0x7f, 0x34, 0x66, 0x42, 0x33, 0x98, 0x39, 0xae, 0x30, 0x49, 0x53, 0x09, 0xd0,
|
||||
0x19, 0xf4, 0xc7, 0x03, 0x0a, 0xd7, 0x40, 0x35, 0xf5, 0xbc, 0x07, 0xac, 0xe2, 0x85, 0xbd, 0x75, 0x38, 0xf2, 0x31, 0xd2, 0x57, 0x87, 0x75, 0x5d, 0x72, 0x07, 0x1e, 0xde, 0x87, 0x9c, 0x69, 0x78,
|
||||
0x1a, 0x74, 0x74, 0x0e, 0xbb, 0xe6, 0xa0, 0xe7, 0xdd, 0x44, 0xcc, 0x3d, 0x8e, 0x29, 0xf8, 0xfc, 0xf4, 0x2b, 0x64, 0x22, 0x98, 0xa5, 0xc5, 0xa5, 0x86, 0xd7, 0x7b, 0xe0, 0xdb, 0x15, 0xc2, 0xf9,
|
||||
0x1b, 0x90, 0x91, 0x15, 0xa8, 0xd4, 0x73, 0xe5, 0x13, 0x28, 0xa8, 0x78, 0x23, 0xbd, 0x62, 0x1c, 0xe6, 0x55, 0xdf, 0xae, 0x54, 0xfa, 0x2b, 0xfa, 0x72, 0xfd, 0xc0, 0x29, 0x86, 0x11, 0xd6, 0xb8,
|
||||
0x1b, 0x9a, 0x8d, 0x23, 0xff, 0xc2, 0x11, 0xef, 0xf6, 0xf1, 0x2d, 0x17, 0x03, 0x7e, 0xb0, 0x76, 0xea, 0x46, 0x56, 0x2d, 0xec, 0x93, 0x7f, 0x44, 0xcc, 0x49, 0xd4, 0xaf, 0x1c, 0x11, 0x9b, 0xa0,
|
||||
0x1b, 0xcf, 0x16, 0x11, 0xe0, 0xcc, 0x92, 0xc9, 0xd4, 0x6d, 0x2a, 0x51, 0xc7, 0xec, 0xf6, 0xec, 0x63, 0xc5, 0x62, 0xef, 0x75, 0x93, 0x24, 0xa1, 0xd9, 0x15, 0x1d, 0x50, 0x8a, 0x16, 0xb7, 0xb3,
|
||||
0x1c, 0x19, 0xa5, 0xa2, 0x40, 0xa3, 0x61, 0x13, 0x1d, 0xcc, 0x5e, 0xc2, 0x53, 0x63, 0xda, 0x6e, 0x79, 0xc7, 0xd5, 0x5b, 0x3c, 0x79, 0xc0, 0x97, 0x6c, 0x94, 0x7f, 0x1d, 0x04, 0xa3, 0x8a, 0xaa,
|
||||
0x1c, 0xb4, 0xdc, 0xca, 0xf2, 0xc8, 0x12, 0xcf, 0xa7, 0xb4, 0x93, 0x8e, 0x13, 0x71, 0xfe, 0x2b, 0x96, 0x91, 0x0f, 0xe4, 0x07, 0x21, 0x6f, 0xd9, 0x54, 0x28, 0x67, 0x2d, 0x6c, 0x7e, 0x73, 0x16,
|
||||
0x1d, 0x5c, 0x15, 0xce, 0xd7, 0x38, 0x45, 0xb7, 0xe9, 0x68, 0xbf, 0x3a, 0xce, 0x52, 0xc5, 0xc6, 0x60, 0xaa, 0x2d, 0xa6, 0xdd, 0xef, 0xf2, 0xce, 0x64, 0x45, 0xa0, 0x4b, 0x88, 0x5a, 0x0f, 0x12,
|
||||
0x1d, 0x8b, 0x58, 0xc1, 0xfd, 0xb8, 0xda, 0x8b, 0x33, 0xcc, 0xee, 0x1e, 0x5f, 0x97, 0x3a, 0xf7, 0x34, 0xd9, 0x0e, 0xf3, 0x17, 0xe3, 0x3f, 0x5d, 0xb1, 0x57, 0x3c, 0x2b, 0xa0, 0x88, 0xa8, 0x0c,
|
||||
0x1d, 0xa5, 0x3f, 0x3a, 0x2c, 0x7c, 0x41, 0xc9, 0x30, 0x99, 0x73, 0x72, 0x66, 0xb5, 0x61, 0x9f, 0xf6, 0x16, 0xa4, 0x33, 0xfb, 0x3b, 0x87, 0x02, 0x34, 0x62, 0x2d, 0x7a, 0xaf, 0xab, 0x9a, 0x7a,
|
||||
0x1d, 0xc8, 0xa3, 0xf5, 0x9b, 0x23, 0xcc, 0xc4, 0x11, 0xd4, 0x66, 0x91, 0xfc, 0x9b, 0x5c, 0x35, 0x99, 0x3b, 0xca, 0x20, 0xe7, 0xe2, 0x29, 0x9f, 0x1a, 0x95, 0x22, 0x3b, 0x9f, 0x11, 0x2e, 0x43,
|
||||
0x1e, 0xae, 0xd6, 0x2c, 0x4a, 0xbc, 0xb2, 0x52, 0x46, 0x43, 0xe1, 0x72, 0x3f, 0x6a, 0xad, 0xcc, 0x31, 0xa7, 0x4a, 0xf4, 0xd2, 0x28, 0x5d, 0x3b, 0x13, 0x88, 0x0c, 0xc4, 0x4c, 0x22, 0xde, 0xc5,
|
||||
0x1f, 0x16, 0x07, 0x8c, 0xce, 0x00, 0x9d, 0xf6, 0x2e, 0xdb, 0x9e, 0x71, 0x70, 0xe6, 0x6c, 0xaa, 0xe6, 0x70, 0xbc, 0xe7, 0x1b, 0x8f, 0x92, 0xd3, 0x82, 0x80, 0xc5, 0x6a, 0xa3, 0x72, 0x03, 0x1d,
|
||||
0x1f, 0x17, 0x91, 0x86, 0xef, 0xdf, 0x5e, 0xf2, 0xde, 0x01, 0x82, 0x45, 0xba, 0x0e, 0xae, 0x81, 0x34, 0x86, 0x86, 0x01, 0xba, 0x0d, 0x35, 0xff, 0x3d, 0x98, 0x65, 0xc1, 0x53, 0x7c, 0xed, 0x93,
|
||||
0x1f, 0x53, 0x59, 0x87, 0xea, 0x73, 0x86, 0xdf, 0x6b, 0xfe, 0x75, 0xf5, 0x1e, 0xfd, 0x35, 0xe4, 0xd2, 0xda, 0x4b, 0x00, 0x2d, 0xca, 0x29, 0x99, 0xc0, 0xcb, 0x4b, 0x76, 0x7b, 0xaf, 0xaf, 0xfd,
|
||||
0x1f, 0x8a, 0x0e, 0x13, 0xaa, 0xde, 0x08, 0x85, 0xa0, 0x6b, 0x5d, 0x82, 0x2b, 0xb2, 0x1d, 0x81, 0x11, 0x66, 0x4c, 0x37, 0x69, 0x1f, 0x0d, 0x25, 0x6e, 0xba, 0x84, 0x02, 0x77, 0x51, 0x1b, 0xca,
|
||||
0x1f, 0xb6, 0x19, 0xfe, 0x15, 0x04, 0xef, 0x78, 0xc8, 0xbf, 0x59, 0x29, 0x4b, 0x16, 0xc6, 0xd9, 0xbf, 0x1d, 0xa7, 0x41, 0xfb, 0x58, 0x2d, 0xe1, 0x25, 0xb6, 0xa0, 0x44, 0xf6, 0x96, 0x1c, 0x57,
|
||||
0x21, 0x16, 0x18, 0x3b, 0xba, 0xb5, 0xd6, 0x96, 0x4c, 0x00, 0x1c, 0x93, 0x1a, 0x09, 0xec, 0xa1, 0xdc, 0x0f, 0xd6, 0x65, 0x1a, 0x61, 0xbe, 0x4a, 0x8a, 0x95, 0x48, 0xdc, 0x47, 0x6b, 0x90, 0xb1,
|
||||
0x21, 0x25, 0x8f, 0xa3, 0x87, 0x71, 0x77, 0xac, 0x48, 0x0c, 0xb5, 0x71, 0x13, 0x4b, 0xee, 0x7b, 0xa1, 0x53, 0x1d, 0xdd, 0x12, 0x74, 0x21, 0x7d, 0xff, 0x71, 0xbc, 0xd6, 0x18, 0xf6, 0xc3, 0xd5,
|
||||
0x21, 0x55, 0x4d, 0x1f, 0x3b, 0xf9, 0xf5, 0x2d, 0x3c, 0xd2, 0x97, 0xd2, 0x7d, 0xf5, 0x62, 0x15, 0xc0, 0xfd, 0x08, 0xa0, 0xbf, 0x67, 0x38, 0x68, 0xf3, 0xd8, 0xc6, 0xc0, 0x64, 0xdc, 0x56, 0x09,
|
||||
0x21, 0xf2, 0x7d, 0x89, 0xf2, 0xe7, 0x7d, 0xee, 0x7c, 0xd4, 0x33, 0x6e, 0x3a, 0x3a, 0xde, 0x36, 0x2a, 0x2a, 0xae, 0x9f, 0xb2, 0xef, 0xe2, 0x07, 0x94, 0x91, 0xa5, 0x18, 0xf3, 0xd5, 0x1f, 0xed,
|
||||
0x22, 0xb5, 0xa8, 0x8d, 0x79, 0xb8, 0x14, 0x65, 0x98, 0x61, 0x3b, 0x37, 0x01, 0xb0, 0xd2, 0xad, 0x3e, 0x1d, 0x2b, 0xc2, 0x15, 0xd3, 0xa6, 0x13, 0xa3, 0x03, 0x56, 0x95, 0x32, 0x39, 0x48, 0x5c,
|
||||
0x22, 0xc3, 0x86, 0x76, 0x06, 0xa6, 0x25, 0x04, 0x8e, 0x1d, 0x9d, 0x52, 0x30, 0xf0, 0x7f, 0xae, 0x41, 0xe7, 0x0b, 0xd0, 0x8e, 0xa9, 0x78, 0xbd, 0xb3, 0x75, 0x63, 0xc0, 0xed, 0xd9, 0xda, 0x03,
|
||||
0x23, 0x14, 0x2e, 0x14, 0x42, 0x4f, 0xb3, 0xff, 0x4e, 0xfc, 0x75, 0xd0, 0x0b, 0x63, 0x86, 0x77, 0x27, 0x84, 0x1a, 0xba, 0x50, 0x05, 0x14, 0x90, 0x70, 0xee, 0x24, 0x17, 0xdf, 0x8a, 0xb7, 0x99,
|
||||
0x23, 0xa0, 0xf1, 0xde, 0x04, 0xef, 0x67, 0x8e, 0x62, 0x1a, 0x44, 0x90, 0x40, 0xcf, 0x51, 0x9d, 0xdc, 0x36, 0x79, 0xfe, 0x54, 0xc9, 0xe2, 0xe0, 0x89, 0x7d, 0xfe, 0x2c, 0x80, 0xd3, 0xdc, 0x26,
|
||||
0x23, 0xfc, 0xd6, 0xbf, 0x30, 0x84, 0xce, 0xe6, 0xa9, 0xf9, 0x88, 0x5e, 0x52, 0x39, 0x23, 0x0b, 0x0a, 0xdd, 0xe0, 0xc8, 0x70, 0x58, 0x9e, 0xe4, 0x61, 0x55, 0x1d, 0x1c, 0xa8, 0xf4, 0xe8, 0x5b,
|
||||
0x24, 0x5e, 0x9b, 0x81, 0x34, 0x2e, 0x45, 0xe1, 0xba, 0xf4, 0xf8, 0xd8, 0x30, 0xd1, 0x8e, 0xa7, 0xfa, 0xe9, 0xfd, 0xff, 0x05, 0x49, 0x72, 0x90, 0xea, 0x64, 0x42, 0xc4, 0xef, 0x0f, 0xfa, 0x57,
|
||||
0x25, 0x0a, 0xe0, 0xba, 0x86, 0x0d, 0x6d, 0x46, 0x89, 0x44, 0x91, 0xd6, 0x30, 0xd5, 0x8b, 0x1c, 0xa0, 0x08, 0xf6, 0x95, 0xc9, 0x2c, 0xe2, 0x08, 0x4a, 0x29, 0x54, 0x86, 0xf7, 0x1f, 0x98, 0x5b,
|
||||
0x26, 0x29, 0xae, 0x14, 0xb4, 0x67, 0xda, 0x5d, 0xf8, 0xe9, 0xeb, 0x6f, 0x1a, 0xdc, 0x1a, 0x9f, 0x50, 0xa7, 0x8d, 0xbc, 0x3c, 0x24, 0x62, 0x71, 0xc8, 0x53, 0x0d, 0x0d, 0x35, 0x99, 0x7a, 0x4c,
|
||||
0x26, 0x4c, 0xbc, 0x57, 0x65, 0x71, 0x8a, 0x0b, 0xcc, 0xb0, 0xf7, 0x9c, 0x0f, 0xdd, 0x13, 0x3a, 0x89, 0x82, 0x03, 0xfb, 0x6f, 0x4f, 0x20, 0x52, 0xcb, 0x06, 0x47, 0xfb, 0xf6, 0x00, 0x0e, 0xd0,
|
||||
0x26, 0x6c, 0x14, 0x29, 0xc8, 0xdc, 0x38, 0x94, 0x81, 0xb3, 0x81, 0x4b, 0xc3, 0xaf, 0x87, 0x23, 0xdb, 0x28, 0xee, 0xce, 0xb0, 0xbb, 0x02, 0x6b, 0xbb, 0xed, 0xa0, 0xcc, 0x41, 0xd3, 0x6b, 0xc3,
|
||||
0x26, 0x79, 0x65, 0x0f, 0xe3, 0x41, 0xf2, 0xcf, 0x1e, 0xa8, 0x83, 0x46, 0x0b, 0x35, 0x56, 0xaa, 0xaf, 0x77, 0xa7, 0x0d, 0x6b, 0x8d, 0xc4, 0x84, 0xc9, 0x30, 0x1d, 0x1b, 0x74, 0x6c, 0xf7, 0xb5,
|
||||
0x26, 0xac, 0xa3, 0xc9, 0x27, 0x09, 0x57, 0x72, 0xfa, 0x26, 0xa4, 0xd6, 0x36, 0x80, 0x59, 0x71, 0x30, 0xad, 0x16, 0x1e, 0xee, 0x8c, 0xbc, 0xe3, 0x4b, 0x59, 0xe1, 0x0c, 0x61, 0x67, 0xe9, 0x2a,
|
||||
0x27, 0x0c, 0x84, 0xb2, 0x9d, 0x86, 0xf1, 0x63, 0x12, 0xb0, 0x6a, 0xaa, 0xe4, 0xeb, 0xb8, 0xdf, 0xf8, 0xde, 0x7d, 0x08, 0x0d, 0x82, 0x5b, 0x88, 0x39, 0xff, 0x17, 0x66, 0x27, 0x4e, 0xff, 0x47,
|
||||
0x28, 0x41, 0x53, 0xe7, 0xd0, 0x4a, 0x9f, 0x18, 0x7e, 0x5c, 0x3d, 0xbf, 0xe1, 0x7b, 0x26, 0x72, 0xad, 0x2f, 0xbd, 0xd1, 0x19, 0xf2, 0x7b, 0xec, 0x78, 0x94, 0x17, 0xb7, 0x91, 0x98, 0x53, 0xec,
|
||||
0x28, 0x88, 0x78, 0xf1, 0x2e, 0x8b, 0x9c, 0x6c, 0xcb, 0xf6, 0x01, 0xc7, 0x3d, 0x5f, 0x4e, 0x98, 0x5c, 0xac, 0x0f, 0xf3, 0xfc, 0xb0, 0xc2, 0x4e, 0x44, 0x14, 0x91, 0x2b, 0x3e, 0xb9, 0x1f, 0x15,
|
||||
0x28, 0xce, 0x0d, 0xad, 0x50, 0x73, 0x09, 0x00, 0xc5, 0xd1, 0x8c, 0xc5, 0x8d, 0x52, 0x55, 0x29, 0x34, 0x52, 0xca, 0x37, 0xd7, 0x64, 0x86, 0x8c, 0x16, 0xea, 0xa9, 0xea, 0xf6, 0xbd, 0x7c, 0x83,
|
||||
0x29, 0x92, 0x06, 0x8e, 0x4f, 0x61, 0x6f, 0x2d, 0x72, 0x53, 0xe9, 0xd5, 0x81, 0x16, 0xa9, 0x7f, 0x22, 0x92, 0x3f, 0x4d, 0xc1, 0xb7, 0x8a, 0x58, 0xbe, 0x44, 0x99, 0xb9, 0x82, 0xec, 0xf2, 0x70,
|
||||
0x29, 0xcc, 0xa4, 0x54, 0x4e, 0xa3, 0x30, 0xd6, 0x15, 0x91, 0xc7, 0x84, 0x69, 0x5c, 0x14, 0x9c, 0x6b, 0x04, 0x00, 0x22, 0xac, 0x7b, 0x5b, 0x89, 0xcb, 0xd7, 0x28, 0x00, 0xd1, 0x08, 0x40, 0xea,
|
||||
0x2a, 0x92, 0x10, 0x38, 0x65, 0xfb, 0x60, 0xfc, 0x84, 0xd3, 0x57, 0x18, 0x0c, 0xc7, 0xdb, 0x45, 0x35, 0x9b, 0x04, 0xad, 0x41, 0x9e, 0x8c, 0x4f, 0xab, 0x74, 0xf7, 0x14, 0x3f, 0xc0, 0x65, 0x5a,
|
||||
0x2b, 0x1b, 0x9e, 0xcc, 0xf5, 0x85, 0xb1, 0x1c, 0x51, 0x22, 0x65, 0x1d, 0x7b, 0x94, 0x53, 0x4b, 0xb1, 0x31, 0xaa, 0x7c, 0x87, 0x4e, 0x22, 0x62, 0x03, 0x8b, 0x85, 0xdb, 0x3e, 0xe8, 0x3e, 0x4d,
|
||||
0x2b, 0x21, 0x02, 0x9f, 0xa0, 0x33, 0x52, 0x6d, 0x1d, 0xcd, 0x9e, 0x87, 0xad, 0x88, 0x93, 0xf9, 0xb5, 0xa0, 0x89, 0x87, 0xc3, 0x27, 0x1b, 0x8a, 0x86, 0x71, 0x68, 0x65, 0xde, 0x53, 0xd9, 0x58,
|
||||
0x2b, 0x22, 0x98, 0xea, 0xa2, 0x6b, 0x9d, 0xc4, 0xa4, 0x55, 0x8a, 0xe9, 0x2e, 0x7b, 0xb0, 0xe4, 0xf8, 0x5c, 0xf3, 0x4b, 0xf8, 0x48, 0xfd, 0xf6, 0x36, 0xc0, 0xc1, 0x1f, 0xbe, 0xc4, 0x98, 0x97,
|
||||
0x2b, 0x7a, 0x7a, 0x4d, 0xaf, 0xc3, 0x5e, 0x49, 0xd0, 0x3c, 0xbe, 0x71, 0x18, 0xe6, 0xba, 0x45, 0x82, 0x40, 0x1e, 0x17, 0x76, 0xb9, 0xc1, 0x8a, 0x25, 0x97, 0x72, 0x5b, 0x05, 0xa6, 0x05, 0xf1,
|
||||
0x2d, 0xcf, 0x8e, 0x8d, 0x81, 0x70, 0x23, 0xd1, 0xe8, 0xe1, 0x45, 0x1a, 0x3d, 0x68, 0xd6, 0xec, 0x30, 0xd9, 0xbe, 0xd9, 0x4c, 0xbc, 0xb8, 0x7f, 0x19, 0xdd, 0xc1, 0xcc, 0x01, 0x16, 0xac, 0x1a,
|
||||
0x2e, 0x69, 0x21, 0xdc, 0x97, 0x0a, 0xac, 0x43, 0x3d, 0xe9, 0xae, 0x4e, 0xd6, 0x6b, 0x26, 0x81, 0xa4, 0xcd, 0x2b, 0xe6, 0x49, 0xd2, 0xee, 0x9a, 0x56, 0x18, 0x71, 0xc3, 0x35, 0xe8, 0xb1, 0xb7,
|
||||
0x2e, 0xa4, 0xcb, 0x6a, 0x1f, 0x1e, 0xb1, 0xd3, 0xdc, 0xe8, 0x2d, 0x54, 0xfd, 0xe2, 0x6d, 0xed, 0x24, 0x3b, 0xa3, 0xe1, 0x8d, 0xe7, 0xc6, 0xd2, 0x11, 0x90, 0x2a, 0x59, 0x4f, 0xe5, 0x67, 0x88,
|
||||
0x2f, 0x9a, 0x8e, 0xb6, 0xc8, 0xe1, 0x8e, 0x7e, 0x11, 0x8a, 0xfe, 0x9b, 0x51, 0xe2, 0x33, 0xd8, 0x8e, 0xc7, 0x6c, 0x0e, 0xa2, 0x56, 0xff, 0x1f, 0x2a, 0x84, 0x2b, 0x3a, 0x0e, 0xa9, 0xf4, 0x66,
|
||||
0x31, 0x09, 0x49, 0xb7, 0xfd, 0x26, 0xaf, 0x0e, 0x2e, 0x29, 0xe1, 0xc9, 0x02, 0xac, 0x19, 0x85, 0x74, 0xf0, 0x96, 0xd1, 0x58, 0x36, 0x37, 0x6c, 0x8b, 0x3e, 0xf2, 0xdd, 0x1f, 0xb5, 0xf1, 0xc5,
|
||||
0x31, 0x1a, 0x2a, 0xc5, 0x5b, 0x50, 0xc0, 0x9b, 0x30, 0xb3, 0xcc, 0x93, 0xb9, 0x94, 0xa1, 0x19, 0x15, 0x3e, 0xee, 0xac, 0x54, 0xef, 0x89, 0x2f, 0xc4, 0x47, 0xbb, 0xbd, 0x96, 0x10, 0x1a, 0xa1,
|
||||
0x31, 0x53, 0xb3, 0xe3, 0x05, 0x57, 0x54, 0x39, 0x91, 0x46, 0x05, 0xd9, 0x76, 0xcf, 0x6e, 0xad, 0x5a, 0x50, 0x0e, 0x54, 0xd0, 0xb6, 0xab, 0xcd, 0xaa, 0xfc, 0xce, 0xd1, 0xbc, 0x47, 0xe0, 0x4f,
|
||||
0x32, 0x4c, 0xbe, 0x75, 0xef, 0x34, 0xe0, 0x9a, 0x98, 0xc7, 0x1b, 0x18, 0x6f, 0x53, 0x5f, 0x90, 0x91, 0xa1, 0xff, 0x25, 0x7b, 0xea, 0x93, 0xdf, 0xea, 0xf1, 0x99, 0xeb, 0x35, 0x2c, 0xa0, 0xf6,
|
||||
0x32, 0x69, 0x67, 0xc7, 0xff, 0xc1, 0xb8, 0x6d, 0xb8, 0xb3, 0x2b, 0x05, 0x70, 0xe8, 0x8a, 0x89, 0xcc, 0x15, 0x34, 0xcf, 0xcf, 0x30, 0x0b, 0x98, 0xc0, 0x77, 0xe4, 0x73, 0xf9, 0xb1, 0x8f, 0xa1,
|
||||
0x32, 0xad, 0x32, 0x96, 0x82, 0x9b, 0xc4, 0x6d, 0xcf, 0xac, 0x5e, 0xdd, 0xcb, 0x9d, 0xbf, 0x2c, 0x1e, 0xed, 0x5c, 0x11, 0xf8, 0x3b, 0x22, 0x10, 0xcf, 0x9c, 0x6e, 0x60, 0xc7, 0x98, 0xd4, 0xa7,
|
||||
0x32, 0xd4, 0xba, 0x3a, 0x03, 0xd1, 0xf2, 0xb6, 0xbc, 0x80, 0xd0, 0x11, 0xc0, 0xfa, 0x10, 0x77, 0x47, 0xb7, 0xb5, 0x73, 0xfe, 0x96, 0xaa, 0xff, 0xf2, 0x17, 0x35, 0xec, 0xf5, 0x62, 0xd3, 0x37,
|
||||
0x33, 0x24, 0x50, 0x89, 0x0f, 0x9c, 0x8f, 0xff, 0x7e, 0xc1, 0x5c, 0x53, 0x92, 0x1b, 0xf2, 0x72, 0x27, 0xab, 0x9e, 0xa0, 0x6b, 0x0e, 0x1c, 0x81, 0x6d, 0x81, 0x9f, 0x8e, 0x21, 0xcf, 0xb5, 0x5f,
|
||||
0x33, 0x9c, 0x2b, 0xcf, 0x04, 0x45, 0xba, 0xa7, 0x34, 0x5a, 0x02, 0xcd, 0xe5, 0x05, 0xe1, 0x72, 0xd2, 0x4c, 0xc9, 0xce, 0xa2, 0x9a, 0x92, 0xeb, 0xee, 0x3f, 0x39, 0x01, 0x69, 0x3f, 0xd2, 0xc8,
|
||||
0x34, 0x0d, 0xa3, 0x2b, 0x58, 0x33, 0x1c, 0x8e, 0x2b, 0x56, 0x1b, 0xaf, 0x30, 0x0c, 0xa9, 0xdf, 0xd6, 0xb9, 0x1c, 0xd2, 0x27, 0x0e, 0xe0, 0xe2, 0xa3, 0x49, 0x58, 0xb1, 0xc6, 0x25, 0x9e, 0x85,
|
||||
0x35, 0xc1, 0x6a, 0xa2, 0xbb, 0x4d, 0xad, 0xf5, 0x02, 0x8f, 0x48, 0x01, 0x18, 0x5c, 0xd3, 0x68, 0xb9, 0x22, 0xc6, 0xcf, 0x76, 0x51, 0xcb, 0x7f, 0xef, 0x30, 0xdf, 0xb9, 0x59, 0x20, 0xfb, 0x99,
|
||||
0x36, 0x2e, 0xd3, 0x1d, 0x20, 0xb1, 0xe0, 0x03, 0x92, 0x28, 0x12, 0x31, 0xa9, 0x6f, 0x0a, 0x0a, 0xcf, 0xde, 0x02, 0x61, 0x89, 0x53, 0xe6, 0x95, 0xc9, 0xef, 0x2e, 0xb0, 0xba, 0xc3, 0x75, 0x50,
|
||||
0x36, 0x7a, 0x31, 0xe5, 0x83, 0x88, 0x31, 0xad, 0x2c, 0x07, 0x46, 0x47, 0x88, 0x6a, 0x6c, 0xdf, 0xf2, 0x17, 0xe6, 0xb1, 0xba, 0x91, 0x0b, 0xff, 0x85, 0xdc, 0x7a, 0x87, 0xae, 0x9b, 0x5e, 0x98,
|
||||
0x36, 0xb7, 0xcd, 0xb6, 0x56, 0x4c, 0x58, 0xcb, 0x54, 0x89, 0x5b, 0x6d, 0x2c, 0x73, 0xf8, 0x8d, 0x29, 0x08, 0xbc, 0xbd, 0x69, 0x3b, 0xfd, 0x25, 0x39, 0x45, 0xbd, 0x31, 0xe3, 0xee, 0x81, 0xbc,
|
||||
0x37, 0x65, 0xd7, 0x69, 0xc0, 0x5b, 0xf9, 0x8b, 0x42, 0x7b, 0x35, 0x11, 0x90, 0x3b, 0x21, 0x37, 0xe8, 0xa4, 0x9b, 0x6f, 0x85, 0x9d, 0x0a, 0xf1, 0x59, 0xed, 0x6a, 0x86, 0x78, 0x6a, 0xa6, 0x34,
|
||||
0x37, 0xa4, 0x80, 0x37, 0x4d, 0xaf, 0x62, 0x02, 0xce, 0x79, 0x0c, 0x31, 0x8a, 0x2b, 0xb8, 0xaa, 0x37, 0x97, 0x31, 0x12, 0x61, 0x16, 0x0a, 0x8e, 0x30, 0x55, 0x8b, 0x7d, 0xea, 0x78, 0xc7, 0xa6,
|
||||
0x38, 0x60, 0xb7, 0xc7, 0xff, 0x6f, 0x4b, 0xcd, 0x58, 0x65, 0x84, 0x3b, 0x2e, 0x86, 0xb2, 0xec, 0xa5, 0xff, 0x4f, 0xb0, 0x71, 0x99, 0x9f, 0x21, 0x29, 0xd4, 0xc7, 0x75, 0x3b, 0x80, 0x6f, 0x34,
|
||||
0x38, 0x6d, 0x69, 0x5c, 0xdf, 0x2d, 0x45, 0x76, 0xe0, 0x1b, 0xca, 0xcc, 0xf5, 0xe4, 0x9e, 0x78, 0xda, 0x51, 0xaf, 0x99, 0x55, 0xc0, 0xb8, 0xfa, 0x76, 0x06, 0x37, 0x3b, 0x00, 0x79, 0x94, 0xb3,
|
||||
0x38, 0x90, 0x9d, 0xaf, 0x2f, 0xe2, 0x9b, 0xbf, 0xe2, 0x23, 0x03, 0x93, 0x9d, 0x39, 0x04, 0xf3, 0x8d, 0xca, 0x48, 0xb7, 0xf2, 0xa4, 0x1f, 0x28, 0xf3, 0x4d, 0xe5, 0x64, 0xa0, 0x24, 0x27, 0x81,
|
||||
0x39, 0x89, 0x95, 0x77, 0x0d, 0x21, 0xe9, 0xf6, 0x6b, 0x90, 0xd6, 0x9d, 0x1e, 0xde, 0x16, 0xc9, 0xe5, 0x8c, 0x06, 0x34, 0xb2, 0xf7, 0xd2, 0x6b, 0x1f, 0x22, 0x50, 0x1d, 0xd9, 0x3f, 0xda, 0xe5,
|
||||
0x39, 0x9f, 0x9d, 0xa6, 0xcf, 0x5a, 0x87, 0x83, 0x96, 0x37, 0xb5, 0x5f, 0x62, 0xbb, 0x2c, 0xc6, 0xa9, 0x3f, 0xa5, 0xaf, 0x7f, 0xe7, 0xad, 0x76, 0xb4, 0xaf, 0x0f, 0xb3, 0x20, 0xc9, 0x81, 0x27,
|
||||
0x39, 0xab, 0xed, 0x29, 0x35, 0x89, 0x1e, 0xef, 0x96, 0xe2, 0xb7, 0x33, 0xbb, 0xc6, 0x95, 0x1d, 0xaf, 0xad, 0x1a, 0x4c, 0x6b, 0x50, 0x0d, 0x2d, 0x9b, 0x28, 0xc3, 0x58, 0x35, 0x5a, 0x6a, 0xb8,
|
||||
0x3a, 0x4f, 0x74, 0xbe, 0xaf, 0xae, 0x2b, 0x93, 0x83, 0xad, 0x82, 0x15, 0xd2, 0x33, 0xa6, 0xcf, 0x3d, 0x05, 0x7f, 0xb3, 0xc7, 0xe2, 0x13, 0xe8, 0x97, 0xbe, 0xef, 0x42, 0x55, 0xfa, 0xee, 0x9d,
|
||||
0x3a, 0x91, 0xf0, 0xf9, 0xe5, 0x28, 0x7f, 0xa2, 0x99, 0x4c, 0x7d, 0x93, 0x0b, 0x2c, 0x1a, 0x5e, 0xe1, 0x4c, 0xe8, 0xe1, 0xc8, 0x30, 0x4a, 0xe4, 0x95, 0xad, 0xc5, 0x8c, 0xc4, 0x45, 0x3c, 0x0c,
|
||||
0x3a, 0x9e, 0x49, 0xe6, 0xe6, 0x44, 0xc0, 0xab, 0xec, 0x17, 0xd3, 0x2d, 0x02, 0x03, 0x39, 0xd1, 0x71, 0x43, 0x9a, 0xba, 0x32, 0x74, 0x09, 0xa7, 0x79, 0x7e, 0x66, 0x86, 0xbd, 0x0f, 0x64, 0x1c,
|
||||
0x3a, 0xe7, 0x6c, 0x45, 0xca, 0x70, 0xe9, 0x18, 0x0c, 0x15, 0x59, 0x98, 0x1f, 0x42, 0x62, 0x2d, 0xd2, 0x51, 0xbc, 0xa1, 0xfb, 0xe6, 0xb9, 0x01, 0xc5, 0x2e, 0xc1, 0x16, 0x73, 0xb0, 0x35, 0x14,
|
||||
0x3b, 0x30, 0xc3, 0xe6, 0xa9, 0x23, 0xcb, 0xb7, 0xcf, 0x65, 0xb5, 0x39, 0x02, 0x5f, 0x12, 0xb1, 0xc8, 0x10, 0xd7, 0x44, 0x80, 0xf2, 0x5c, 0xbf, 0xcb, 0x9a, 0x7b, 0xfd, 0x63, 0x3f, 0x06, 0xed,
|
||||
0x3b, 0x76, 0x96, 0xdf, 0x62, 0x7a, 0xde, 0x30, 0xbb, 0x15, 0xbd, 0xc5, 0xce, 0x3f, 0x3c, 0x27, 0x24, 0x0c, 0x97, 0x33, 0x53, 0xe8, 0x55, 0x1e, 0x7b, 0x03, 0x6c, 0x90, 0xd0, 0x12, 0x80, 0xc9,
|
||||
0x3b, 0xe8, 0xe7, 0xeb, 0x34, 0x8d, 0x35, 0xc1, 0x92, 0x8f, 0x19, 0xc7, 0x69, 0x84, 0x67, 0x88, 0x99, 0x16, 0x41, 0xd1, 0xf6, 0xcf, 0x09, 0x51, 0x4c, 0xa1, 0x02, 0x69, 0x93, 0x4f, 0x73, 0x59,
|
||||
0x3e, 0x1a, 0x60, 0x21, 0xb3, 0xc6, 0x06, 0x6e, 0x94, 0xf7, 0xf0, 0x6a, 0xd7, 0xb2, 0x9e, 0x35, 0xb1, 0xbd, 0x9e, 0xe4, 0x96, 0x82, 0x7a, 0x29, 0x0e, 0xfb, 0x9b, 0xe7, 0xa2, 0x7c, 0x5d, 0x63,
|
||||
0x3e, 0x33, 0x3d, 0xe8, 0x7d, 0x21, 0x12, 0x47, 0xb2, 0xab, 0x00, 0x09, 0x3c, 0xab, 0x48, 0xf6, 0x06, 0x9d, 0x71, 0x8a, 0xfd, 0x29, 0xe9, 0x91, 0x7a, 0x3d, 0x5f, 0x60, 0xe8, 0x75, 0x57, 0xb6,
|
||||
0x3e, 0x39, 0x26, 0xf0, 0xb8, 0xa1, 0x5a, 0xd5, 0xa1, 0x41, 0x67, 0xbb, 0x64, 0x7a, 0x84, 0x3c, 0x3d, 0x43, 0x21, 0xe3, 0x5d, 0xbc, 0x44, 0xdc, 0xe8, 0xc8, 0x37, 0x41, 0x7f, 0x2d, 0x28, 0xb0,
|
||||
0x3e, 0x82, 0x8e, 0xf5, 0xe8, 0x80, 0xfe, 0x62, 0xb3, 0x3d, 0x36, 0xb7, 0x8f, 0x22, 0x35, 0xf1, 0xa3, 0x14, 0x15, 0x38, 0x99, 0xac, 0x80, 0x46, 0x95, 0x97, 0x29, 0x7b, 0x9a, 0x9d, 0xd2, 0x2d,
|
||||
0x3e, 0xce, 0x27, 0xcb, 0xb3, 0xec, 0x44, 0x38, 0xcc, 0xe5, 0x23, 0xb9, 0x27, 0xc4, 0xf0, 0x5f, 0xdc, 0x5c, 0x59, 0x3a, 0x37, 0x66, 0xdb, 0x98, 0x4c, 0x5e, 0x43, 0x7a, 0x3f, 0xf6, 0xa1, 0x6b,
|
||||
0x3f, 0xe9, 0xf8, 0xd1, 0x1e, 0xdc, 0xa3, 0xfc, 0x18, 0x99, 0x10, 0x04, 0x84, 0xde, 0x4c, 0xc2, 0xc6, 0x26, 0xab, 0xb3, 0x8b, 0x73, 0x98, 0x5a, 0x44, 0x1b, 0x7c, 0x3a, 0x0d, 0x39, 0xca, 0x54,
|
||||
0x40, 0x0a, 0xc6, 0x6d, 0x59, 0xb7, 0xb0, 0x94, 0xa9, 0xe3, 0x0b, 0x01, 0xa6, 0xbd, 0x01, 0x3a, 0xff, 0x1d, 0x30, 0x57, 0x0f, 0x83, 0xe7, 0x59, 0x2f, 0x42, 0x1d, 0xbe, 0x5f, 0xf4, 0xba, 0x8f,
|
||||
0x40, 0x8b, 0x8b, 0x3d, 0xf5, 0xab, 0xb0, 0x43, 0x52, 0x1a, 0x49, 0x35, 0x25, 0x02, 0x31, 0x75, 0xab, 0x12, 0x61, 0xb1, 0xde, 0x21, 0x06, 0x4d, 0x6b, 0xf2, 0x47, 0xce, 0x14, 0x21, 0x53, 0xb9,
|
||||
0x40, 0xd6, 0xca, 0xe0, 0x29, 0x73, 0x78, 0x90, 0x80, 0xcf, 0x4c, 0x3a, 0x9a, 0xd1, 0x1b, 0x5a, 0x0a, 0x4d, 0x8b, 0xba, 0x44, 0x38, 0xab, 0x96, 0xe2, 0x76, 0xcc, 0x78, 0x44, 0x54, 0xde, 0xe7,
|
||||
0x41, 0x85, 0x82, 0x1f, 0x6d, 0xab, 0x5b, 0xa8, 0x34, 0x7b, 0x78, 0xa2, 0x2b, 0x5f, 0x9a, 0x0a, 0x75, 0x70, 0xca, 0x5c, 0x93, 0xa7, 0x4d, 0x47, 0x8a, 0x79, 0x3d, 0x83, 0xba, 0xc4, 0x98, 0x05,
|
||||
0x41, 0xcc, 0xe0, 0xfc, 0x46, 0x76, 0x09, 0xca, 0x36, 0x8b, 0xed, 0xba, 0x45, 0xc2, 0x92, 0xf2, 0xbe, 0x1b, 0x62, 0x2f, 0xb9, 0xbe, 0x04, 0x73, 0xcf, 0x51, 0xe7, 0xa9, 0x6e, 0xe6, 0x56, 0x52,
|
||||
0x41, 0xd1, 0xee, 0xb1, 0x77, 0xc0, 0x32, 0x4e, 0x17, 0xdd, 0x65, 0x57, 0xf3, 0x84, 0xe5, 0x32, 0xde, 0x0c, 0xf5, 0x1a, 0x01, 0x9a, 0x44, 0x6b, 0x01, 0xef, 0xb3, 0x51, 0xbc, 0x25, 0x9d, 0x77,
|
||||
0x43, 0x80, 0xa4, 0x3a, 0x7b, 0x0b, 0xe1, 0xac, 0xe5, 0x4a, 0x65, 0xb3, 0xe2, 0x5e, 0xd3, 0x5f, 0x34, 0x0d, 0x69, 0x06, 0x36, 0x58, 0x21, 0xaf, 0x13, 0x99, 0x41, 0xd5, 0xd6, 0xe1, 0xea, 0x1b,
|
||||
0x45, 0x0e, 0xff, 0xc8, 0x27, 0xca, 0x53, 0x5a, 0x79, 0xd5, 0xc4, 0xff, 0x3e, 0x1a, 0x3f, 0x61, 0x4c, 0xa9, 0x12, 0x6b, 0x37, 0x92, 0xf9, 0x97, 0xd3, 0x87, 0x91, 0xca, 0x73, 0x99, 0x32, 0x0c,
|
||||
0x45, 0x87, 0x6b, 0x4d, 0xd8, 0x61, 0xd4, 0x5b, 0x3a, 0x94, 0x80, 0x07, 0x74, 0x02, 0x7a, 0x5d, 0xb4, 0x5a, 0x48, 0xb2, 0xa7, 0x29, 0x41, 0x09, 0x08, 0xb6, 0x41, 0x2f, 0x8a, 0x87, 0xe9, 0x5d,
|
||||
0x45, 0x94, 0x57, 0xc4, 0x8e, 0x1b, 0x45, 0x0d, 0x8f, 0x22, 0x85, 0x8f, 0xfb, 0x39, 0x2f, 0xca, 0x78, 0xbb, 0x6f, 0x4d, 0xa8, 0x37, 0x86, 0x28, 0x89, 0xab, 0x79, 0x8b, 0xdc, 0xbd, 0xf0, 0x8f,
|
||||
0x46, 0x67, 0xbf, 0x25, 0x0c, 0xd7, 0xc1, 0xa0, 0x6b, 0x84, 0x74, 0xc6, 0x13, 0xcd, 0xb1, 0xdf, 0x64, 0x8a, 0x7f, 0x58, 0x73, 0x6f, 0xbf, 0x57, 0xd0, 0x5d, 0x6f, 0x75, 0x5d, 0xab, 0x67, 0xf4,
|
||||
0x47, 0xb3, 0x1a, 0x1c, 0x78, 0x67, 0x64, 0x4b, 0x2e, 0xe8, 0x09, 0x3b, 0x2d, 0x5f, 0xbe, 0x21, 0xe2, 0x1f, 0x77, 0xc1, 0x61, 0x7a, 0x2c, 0x08, 0x81, 0x2f, 0x57, 0xac, 0xe0, 0x85, 0x0e, 0x9f,
|
||||
0x47, 0xf7, 0xa5, 0xf3, 0x82, 0x12, 0x86, 0xa9, 0xc6, 0x77, 0xf6, 0x6c, 0xfe, 0x2a, 0x84, 0xd5, 0xca, 0x94, 0xcb, 0x6f, 0xc1, 0xeb, 0xe8, 0xe1, 0x98, 0x6e, 0x91, 0xed, 0xd5, 0x8c, 0xbe, 0x33,
|
||||
0x47, 0xff, 0x1b, 0x63, 0xb1, 0x40, 0xb6, 0xfc, 0x04, 0xed, 0x79, 0x13, 0x13, 0x31, 0xe6, 0x51, 0xda, 0x5b, 0x2e, 0x2f, 0x17, 0x0f, 0x5d, 0xae, 0xf4, 0x15, 0x3d, 0xc2, 0xfb, 0xc5, 0x32, 0xb1,
|
||||
0x48, 0xcd, 0xb3, 0x1a, 0x16, 0xd8, 0x91, 0x12, 0x4b, 0xe7, 0x74, 0x90, 0xfb, 0xc2, 0xad, 0x13, 0xcb, 0x35, 0x5a, 0x18, 0xcb, 0x00, 0x07, 0x25, 0x8c, 0xa4, 0xbc, 0xea, 0x44, 0xf2, 0x88, 0xef,
|
||||
0x48, 0xf4, 0x58, 0x4d, 0xe1, 0xc5, 0xec, 0x65, 0x0c, 0x25, 0xe6, 0xc6, 0x23, 0x63, 0x5c, 0xe1, 0x01, 0xbd, 0x82, 0x61, 0x7f, 0xc4, 0x00, 0xd4, 0x15, 0x0f, 0x0a, 0xee, 0x23, 0x55, 0xb4, 0xca,
|
||||
0x49, 0x0c, 0x92, 0x72, 0x42, 0xcc, 0x62, 0x27, 0xca, 0x43, 0x9a, 0x7e, 0x9a, 0xa9, 0xd7, 0x71, 0xad, 0x4d, 0x16, 0x86, 0xee, 0xde, 0x1f, 0x33, 0x1c, 0xbb, 0x6c, 0x69, 0xe9, 0xbe, 0x74, 0x6e,
|
||||
0x49, 0x46, 0x5d, 0x4a, 0xd7, 0x01, 0x64, 0x2c, 0x7b, 0xcb, 0x5e, 0xf3, 0x0a, 0x08, 0x07, 0xa3, 0xcd, 0x43, 0x8a, 0xb4, 0x2b, 0xf8, 0xd6, 0x2d, 0x68, 0x03, 0x8c, 0x3f, 0xcb, 0xbe, 0x86, 0x05,
|
||||
0x49, 0x53, 0x00, 0x79, 0x0e, 0x6c, 0x9b, 0xf2, 0x51, 0x0d, 0xab, 0xa5, 0x9d, 0xb3, 0xd5, 0x7e, 0x9d, 0x2b, 0x85, 0xd7, 0xd7, 0x64, 0x04, 0x34, 0xec, 0x75, 0xba, 0xa3, 0x85, 0x1c, 0x74, 0xe5,
|
||||
0x4a, 0x48, 0x73, 0xa3, 0x19, 0xa3, 0xa3, 0xde, 0x35, 0xea, 0x32, 0x57, 0x71, 0xdf, 0xfc, 0xbb, 0x31, 0xec, 0x14, 0x55, 0x0a, 0x4e, 0x02, 0x9c, 0xf0, 0xfe, 0xb9, 0xcd, 0x68, 0x6b, 0x8c, 0x92,
|
||||
0x4a, 0x9b, 0x1c, 0x43, 0x8b, 0xc8, 0xf1, 0x14, 0xbf, 0xaa, 0x82, 0xf5, 0xd5, 0x33, 0xda, 0x31, 0xcc, 0x61, 0x0c, 0x27, 0x67, 0x11, 0x42, 0x2c, 0x74, 0xa1, 0x67, 0xb8, 0xae, 0xed, 0x7c, 0x82,
|
||||
0x4a, 0xac, 0x0a, 0x9e, 0x08, 0x9d, 0xf8, 0xe9, 0xac, 0x67, 0x25, 0xe0, 0xdf, 0xca, 0x3a, 0xc1, 0x1a, 0x17, 0x74, 0x7a, 0x2e, 0x35, 0xf4, 0x3a, 0x2b, 0x38, 0xa5, 0x8f, 0x8a, 0xe2, 0xa2, 0x73,
|
||||
0x4b, 0x59, 0xc6, 0xd8, 0xe9, 0x44, 0x28, 0xc4, 0xcb, 0xdb, 0x0f, 0x30, 0x6f, 0xed, 0x75, 0xb0, 0x99, 0xea, 0x34, 0x94, 0x31, 0xf0, 0x01, 0xaa, 0x81, 0x9c, 0x3b, 0xd0, 0xd1, 0x60, 0x08, 0x12,
|
||||
0x4b, 0x86, 0x68, 0xa5, 0xd4, 0x65, 0xbc, 0xdd, 0x90, 0x00, 0xaa, 0x8d, 0xfc, 0xff, 0x42, 0x04, 0x4f, 0xcb, 0xd0, 0xae, 0xce, 0x32, 0xfc, 0x70, 0x11, 0xa8, 0x3e, 0x91, 0x60, 0xe8, 0x9f, 0x09,
|
||||
0x4c, 0xda, 0xe3, 0x92, 0x0a, 0x51, 0x2c, 0x9c, 0x05, 0x2a, 0x8b, 0x4a, 0xba, 0x90, 0x96, 0x96, 0x9b, 0x0a, 0x01, 0x97, 0xb6, 0x14, 0x03, 0x1e, 0x4c, 0x64, 0xa5, 0xd8, 0x98, 0xcb, 0x09, 0xb9,
|
||||
0x4e, 0xe4, 0x5a, 0x21, 0x7b, 0x38, 0xa8, 0xc1, 0x37, 0x77, 0xdf, 0x08, 0x60, 0xf1, 0x25, 0x5e, 0x52, 0xba, 0xf3, 0xcf, 0x9d, 0x07, 0x53, 0x73, 0xe3, 0x1a, 0xd7, 0xe2, 0xc8, 0x5e, 0x2c, 0xdb,
|
||||
0x4f, 0x02, 0x14, 0xfc, 0xe4, 0xfa, 0x88, 0x97, 0xd0, 0xc8, 0x0a, 0x46, 0xd6, 0xda, 0xb4, 0x12, 0x47, 0x26, 0xd1, 0x36, 0xfc, 0x24, 0x92, 0xef, 0xd0, 0x1b, 0xfe, 0xdf, 0xa3, 0x88, 0x7a, 0x9c,
|
||||
0x4f, 0x93, 0xed, 0x05, 0xad, 0x7e, 0x20, 0xbd, 0xde, 0x62, 0x41, 0xd2, 0x4b, 0x19, 0x6d, 0x63, 0x34, 0xc8, 0xc4, 0x01, 0x0d, 0x92, 0x75, 0x7e, 0x48, 0x68, 0xff, 0x4b, 0xbd, 0x6a, 0x0f, 0x98,
|
||||
0x4f, 0x94, 0xf4, 0x0c, 0x6b, 0x4b, 0xac, 0x7b, 0xf2, 0x19, 0xc7, 0x3d, 0xaf, 0xd0, 0x87, 0x08, 0x79, 0xf1, 0xdb, 0x10, 0xde, 0x6c, 0x86, 0x20, 0xf6, 0xf1, 0x33, 0x3d, 0x7a, 0xa5, 0x45, 0x5a,
|
||||
0x50, 0x87, 0x11, 0x41, 0x45, 0x9a, 0x21, 0xfa, 0xba, 0x3d, 0xbb, 0xf6, 0x3d, 0xa5, 0xaa, 0xc8, 0x86, 0x3f, 0xa3, 0xd8, 0xa9, 0x89, 0x1f, 0x18, 0x2e, 0xd7, 0x2e, 0x3a, 0x74, 0xb6, 0x4f, 0xdc,
|
||||
0x50, 0xf9, 0x34, 0x02, 0xb6, 0x61, 0x27, 0xd8, 0x7b, 0x94, 0x70, 0x67, 0xe9, 0x68, 0x9d, 0xf5, 0xb2, 0xb3, 0x6b, 0x25, 0x38, 0x33, 0xff, 0xe1, 0xe6, 0xce, 0xca, 0x68, 0x5f, 0xae, 0x2d, 0x85,
|
||||
0x52, 0xa3, 0xca, 0x4d, 0xb9, 0x23, 0xc0, 0x64, 0x8a, 0xc0, 0x4b, 0xe8, 0x6c, 0xe0, 0x2d, 0xbc, 0x6a, 0x3a, 0xaa, 0xc8, 0x31, 0x23, 0x66, 0xb1, 0x06, 0x20, 0x5d, 0xec, 0x6e, 0x2c, 0xa2, 0xd9,
|
||||
0x52, 0xce, 0xad, 0xa5, 0x8e, 0x8d, 0x14, 0xab, 0x47, 0xe7, 0x06, 0xdc, 0xd6, 0x26, 0x4d, 0x82, 0xaf, 0xfc, 0x0f, 0x9f, 0xc6, 0x2a, 0xb4, 0x6f, 0x77, 0xbe, 0x46, 0xf2, 0x62, 0xae, 0x1b, 0x17,
|
||||
0x53, 0x48, 0x07, 0x53, 0x29, 0xa1, 0x08, 0x7e, 0xbb, 0x68, 0x9f, 0xcf, 0xc7, 0x75, 0x30, 0x4b, 0x09, 0xc6, 0x78, 0x6a, 0x52, 0x3f, 0x83, 0xe7, 0xbb, 0x90, 0xe2, 0x6d, 0xe0, 0xe6, 0x1f, 0xf7,
|
||||
0x54, 0x06, 0x1f, 0xf5, 0x0d, 0x91, 0x29, 0x6f, 0x2f, 0x44, 0xd8, 0xb3, 0x38, 0xae, 0xed, 0xfb, 0xbe, 0x86, 0xdf, 0x49, 0xdb, 0x5d, 0xe8, 0xa4, 0x51, 0x91, 0xaa, 0xa9, 0x31, 0xf5, 0xbc, 0xf6,
|
||||
0x54, 0x08, 0x01, 0xdd, 0x34, 0x5d, 0xc1, 0xc3, 0x3e, 0xf4, 0x31, 0xb3, 0x5b, 0xf4, 0xc0, 0xe6, 0x8b, 0xd3, 0x19, 0xb5, 0x77, 0xb9, 0xab, 0xe1, 0xa9, 0xcf, 0xf1, 0xcb, 0xc3, 0x9f, 0x54, 0x8f,
|
||||
0x54, 0xc7, 0xd9, 0xc2, 0x86, 0x72, 0xa1, 0x30, 0x6e, 0x43, 0xed, 0x7f, 0xee, 0xd3, 0x8b, 0x29, 0x5f, 0x8e, 0xec, 0x27, 0x92, 0x51, 0xf9, 0x96, 0xfa, 0x29, 0x3f, 0x68, 0xfc, 0x6c, 0xfb, 0x12,
|
||||
0x56, 0xb3, 0xda, 0x72, 0x59, 0xeb, 0x1b, 0xec, 0x44, 0x19, 0x9a, 0x7e, 0xbf, 0x74, 0xc6, 0xfe, 0x91, 0x2c, 0x8f, 0xe9, 0xbf, 0x4a, 0x20, 0xa7, 0x61, 0x0c, 0x5e, 0x9b, 0xc0, 0xb6, 0x01, 0xcd,
|
||||
0x56, 0xfb, 0x79, 0xaa, 0xb2, 0x6e, 0xe9, 0xd0, 0xe0, 0xca, 0x37, 0x2f, 0xb8, 0x6a, 0x8b, 0xb4, 0x59, 0xac, 0xbc, 0x50, 0x5d, 0x0a, 0xb3, 0x5e, 0x6a, 0x63, 0x2a, 0x3d, 0x5f, 0x88, 0xdc, 0xb3,
|
||||
0x57, 0x69, 0x2f, 0xc2, 0xb8, 0x0d, 0x80, 0x9a, 0x3b, 0xe4, 0x09, 0xb4, 0x44, 0x75, 0xdd, 0xed, 0x72, 0x25, 0xc7, 0x6f, 0xdd, 0x5f, 0xf0, 0x9e, 0x4e, 0xd7, 0xd3, 0x30, 0xa5, 0x87, 0x33, 0xa5,
|
||||
0x57, 0xae, 0xab, 0x53, 0xdb, 0x02, 0xcc, 0xd1, 0xe3, 0x07, 0xad, 0x3b, 0xe5, 0x24, 0xeb, 0x50, 0x7d, 0x03, 0x39, 0xbb, 0x2a, 0xab, 0x3b, 0xc9, 0xb6, 0x53, 0x08, 0x8b, 0x7e, 0x79, 0x0f, 0xcc,
|
||||
0x57, 0xe6, 0x91, 0x3a, 0xfa, 0xcc, 0x52, 0x22, 0xbd, 0x76, 0xcd, 0xaf, 0x31, 0xf8, 0xed, 0x88, 0x89, 0x54, 0x64, 0x25, 0x53, 0x74, 0xef, 0x09, 0x7a, 0x82, 0xd7, 0xf5, 0x9a, 0xd3, 0x95, 0x96,
|
||||
0x58, 0x68, 0x98, 0xc6, 0x0c, 0xff, 0x53, 0x9b, 0x76, 0xd2, 0x3d, 0xbf, 0x2c, 0x92, 0xe4, 0x10, 0x5f, 0x6a, 0x75, 0x49, 0xe1, 0x3f, 0x53, 0xd2, 0x93, 0x70, 0x8b, 0x79, 0x3c, 0xa9, 0x0d, 0x2d,
|
||||
0x58, 0x90, 0xfa, 0x22, 0x71, 0x21, 0xc7, 0x6d, 0x90, 0xed, 0x9e, 0x63, 0xc8, 0x7e, 0x3a, 0x65, 0x33, 0xee, 0xa0, 0xf6, 0xf0, 0xa1, 0xa2, 0x3f, 0x1f, 0xc4, 0x45, 0x13, 0x9b, 0xc6, 0xbc, 0xdf,
|
||||
0x5a, 0x18, 0x4e, 0x74, 0x06, 0x57, 0xe2, 0x18, 0xd6, 0x35, 0x16, 0x82, 0x86, 0xf0, 0xf7, 0x0b, 0xb5, 0x67, 0x2e, 0x4e, 0xdb, 0x78, 0x71, 0x75, 0x50, 0xc7, 0x06, 0x86, 0xc2, 0x32, 0xea, 0x5b,
|
||||
0x5a, 0x47, 0xb0, 0xb1, 0x1d, 0x2f, 0xd9, 0xcd, 0x39, 0xc6, 0x27, 0xd1, 0xe6, 0xbf, 0x4a, 0xfe, 0xd9, 0x60, 0x1a, 0xa1, 0x5d, 0x6a, 0x5d, 0x84, 0xfb, 0x10, 0xf3, 0x97, 0x55, 0xd2, 0xd3, 0x23,
|
||||
0x5a, 0xaf, 0xc9, 0xf5, 0xf9, 0x8d, 0xb7, 0x5f, 0x85, 0x19, 0xd8, 0x65, 0x29, 0x24, 0x93, 0x29, 0x39, 0x76, 0x0f, 0x00, 0xdf, 0x88, 0x27, 0xfa, 0x2a, 0x6e, 0x36, 0xdb, 0x26, 0x5f, 0x21, 0xf8,
|
||||
0x5b, 0x24, 0x8e, 0x91, 0x3d, 0x71, 0x85, 0x3d, 0x3d, 0xa5, 0xae, 0xdd, 0x8d, 0x9a, 0x4b, 0xc5, 0x7a, 0x91, 0x71, 0x26, 0x57, 0x38, 0x17, 0xfb, 0x5f, 0xcb, 0x2d, 0x86, 0xa2, 0xf1, 0xc8, 0x86,
|
||||
0x5b, 0x89, 0xf1, 0xaa, 0x24, 0x35, 0xa0, 0x3d, 0x18, 0xd9, 0xb2, 0x03, 0xd1, 0x7f, 0xb4, 0xfb, 0xa4, 0xf8, 0xf5, 0x07, 0x6c, 0xf1, 0xf9, 0xb8, 0xd6, 0xd9, 0xb8, 0x26, 0x22, 0x22, 0x35, 0xc1,
|
||||
0x5c, 0x2a, 0xfe, 0x34, 0xbd, 0x8a, 0x7a, 0xeb, 0xbb, 0x43, 0x9c, 0x25, 0x1d, 0xfb, 0x6a, 0x42, 0x4f, 0x00, 0xe5, 0x35, 0xac, 0x4d, 0xf6, 0x1e, 0xc1, 0x97, 0x45, 0xb6, 0xf1, 0x0e, 0x89, 0x3a,
|
||||
0x5c, 0x39, 0xf0, 0xe5, 0xe0, 0xe7, 0xfa, 0x3b, 0xe0, 0x50, 0x90, 0x81, 0x3b, 0x13, 0xd1, 0x61, 0xac, 0xaf, 0x48, 0x49, 0x4f, 0xde, 0x62, 0x33, 0xb4, 0x52, 0xc4, 0x16, 0xd2, 0x9c, 0xdd, 0xbe,
|
||||
0x5c, 0x58, 0x05, 0x19, 0x6a, 0x85, 0xe9, 0x37, 0x89, 0x45, 0x70, 0x17, 0xd4, 0xf9, 0xeb, 0x68, 0x28, 0xb9, 0x7c, 0x41, 0xcb, 0x9b, 0xa6, 0xd3, 0xdc, 0x1f, 0xcc, 0x11, 0x5f, 0x52, 0x7a, 0x55,
|
||||
0x5d, 0x1e, 0x9a, 0xcb, 0xbb, 0x4a, 0x7d, 0x02, 0x4b, 0x68, 0x52, 0xdf, 0x02, 0x59, 0x70, 0xe2, 0xce, 0xd6, 0x6f, 0xf6, 0x22, 0xee, 0x01, 0x9c, 0xd0, 0xed, 0x7f, 0xd8, 0x41, 0xcc, 0xad, 0x02,
|
||||
0x5e, 0x2b, 0xb7, 0xbc, 0x8b, 0x16, 0xe0, 0xb9, 0xdd, 0xff, 0x75, 0x60, 0x66, 0x68, 0xe6, 0x9d, 0x76, 0xaf, 0x12, 0x19, 0xc1, 0x71, 0x80, 0xef, 0x0a, 0x5b, 0x9b, 0x38, 0x3f, 0x00, 0xb9, 0x95,
|
||||
0x5e, 0x67, 0xbf, 0x24, 0x0b, 0x1d, 0x05, 0xf6, 0xf6, 0x18, 0x90, 0x88, 0x68, 0xa4, 0x94, 0xc5, 0x0a, 0x30, 0xab, 0x25, 0x5b, 0x06, 0x61, 0x9f, 0xa2, 0x84, 0x11, 0xeb, 0x26, 0x0f, 0x67, 0x4a,
|
||||
0x5e, 0xb2, 0xc7, 0x68, 0x43, 0xb2, 0x53, 0xac, 0xbc, 0xec, 0xbb, 0x84, 0x76, 0x76, 0x97, 0x12, 0x8f, 0x00, 0x0c, 0x18, 0x35, 0x8c, 0x78, 0xc5, 0xba, 0xf1, 0x35, 0xa5, 0x99, 0x6c, 0x03, 0x7f,
|
||||
0x60, 0x78, 0xc0, 0xfa, 0x37, 0xd9, 0xd3, 0x5d, 0xad, 0xac, 0x7a, 0xd9, 0x0e, 0x90, 0xa3, 0xa9, 0x5c, 0x44, 0x98, 0x5a, 0x3d, 0x30, 0x5b, 0xd2, 0x2a, 0x5d, 0x83, 0x8e, 0xd4, 0x54, 0x91, 0xee,
|
||||
0x61, 0x53, 0x5c, 0xaa, 0x14, 0x47, 0x61, 0xfc, 0x48, 0xcc, 0x9d, 0x7a, 0x83, 0x5d, 0xfa, 0xf0, 0x20, 0xb5, 0x69, 0xed, 0xfc, 0x7f, 0xa6, 0x28, 0xf9, 0x83, 0xd5, 0x8a, 0x3a, 0xc2, 0x5f, 0x2a,
|
||||
0x61, 0xce, 0xc4, 0xa3, 0x77, 0xbf, 0x59, 0x02, 0xc0, 0xfe, 0xae, 0xe3, 0x70, 0x34, 0xbf, 0x97, 0xd5, 0xbc, 0x6e, 0x06, 0x15, 0xe2, 0x3a, 0x1c, 0xdf, 0xba, 0xe6, 0xe3, 0xf5, 0xfb, 0x3c, 0xfd,
|
||||
0x62, 0xb7, 0x9f, 0xb4, 0xa0, 0x40, 0x52, 0xfc, 0xb4, 0x98, 0xa9, 0x7f, 0x22, 0xa3, 0x56, 0x76, 0x42, 0xd4, 0xbc, 0x47, 0xd1, 0xc2, 0xff, 0x9a, 0x06, 0x31, 0x1c, 0x8c, 0x61, 0x48, 0xe9, 0x07,
|
||||
0x63, 0x1f, 0x08, 0x57, 0xb4, 0x18, 0x45, 0x36, 0x2c, 0x90, 0xc6, 0x98, 0x0b, 0x4b, 0x10, 0xc4, 0xb6, 0x28, 0xe2, 0x3d, 0xbe, 0x24, 0xb6, 0xe9, 0x6c, 0x12, 0x8a, 0xe3, 0xdc, 0xb0, 0xd5, 0xac,
|
||||
0x63, 0x3f, 0x98, 0x06, 0xbc, 0x96, 0xa8, 0x31, 0xcc, 0x2c, 0x8d, 0x52, 0x1d, 0x71, 0xe9, 0xeb, 0xd0, 0x21, 0x80, 0xda, 0xba, 0x1a, 0x50, 0x97, 0x8e, 0xf6, 0xb7, 0x2e, 0x50, 0x34, 0xe9, 0xef,
|
||||
0x64, 0xcc, 0xc8, 0x86, 0xeb, 0x99, 0xc3, 0x0a, 0xa8, 0x08, 0xe5, 0xca, 0x9b, 0xd3, 0x71, 0x57, 0x7b, 0xaf, 0x9d, 0x3f, 0xa0, 0xe4, 0x50, 0x11, 0x84, 0x64, 0xf5, 0x14, 0xb4, 0x7a, 0x02, 0x8a,
|
||||
0x65, 0x62, 0x5a, 0x14, 0x3d, 0x22, 0x0e, 0xa1, 0x84, 0xdb, 0xd5, 0xcd, 0xfb, 0x1b, 0x9e, 0x9c, 0x3b, 0xd9, 0x65, 0x42, 0x94, 0xea, 0xa2, 0xb9, 0x86, 0x28, 0xbc, 0x27, 0x3e, 0xbc, 0x18, 0xb5,
|
||||
0x65, 0x82, 0xdc, 0xcb, 0x8b, 0x30, 0x5e, 0xfe, 0x0b, 0xbb, 0xaf, 0xdc, 0xc7, 0xd2, 0x95, 0xa6, 0xa8, 0xbf, 0x1d, 0xf0, 0x39, 0x7e, 0x1a, 0x8a, 0xc7, 0x36, 0xe9, 0x09, 0x8a, 0x2a, 0x64, 0xc0,
|
||||
0x65, 0xb2, 0xe7, 0xcc, 0x18, 0xd9, 0x03, 0xc3, 0x31, 0xdf, 0x11, 0x52, 0xdf, 0x73, 0xca, 0x0d, 0xc9, 0x32, 0xd2, 0x9f, 0x17, 0x99, 0x74, 0x81, 0xc5, 0x6f, 0x30, 0x87, 0xb2, 0xdd, 0x31, 0x47,
|
||||
0x65, 0xf3, 0xc0, 0xa0, 0x1b, 0x84, 0x02, 0xd3, 0x62, 0xb9, 0x72, 0x2e, 0x98, 0xf7, 0x5e, 0x5e, 0x99, 0x1e, 0x6c, 0x18, 0x6e, 0x93, 0x4f, 0x7b, 0x2b, 0x2e, 0x6b, 0xe6, 0xde, 0xc8, 0x00, 0xec,
|
||||
0x66, 0xaa, 0x13, 0xa0, 0xed, 0xc2, 0x19, 0x38, 0x4d, 0x9c, 0x42, 0x5d, 0x39, 0x27, 0xe6, 0xed, 0x4a, 0x5d, 0x19, 0x40, 0xc5, 0xe7, 0xcd, 0x4d, 0xac, 0x88, 0xf5, 0x77, 0x01, 0x03, 0xf2, 0xf1,
|
||||
0x66, 0xd0, 0x80, 0x3e, 0x25, 0x50, 0xd9, 0xe7, 0x90, 0x82, 0x9a, 0xe1, 0xb5, 0xf8, 0x15, 0x47, 0xcc, 0x9b, 0xfb, 0xe6, 0x9b, 0x51, 0x81, 0x70, 0x68, 0xec, 0xb5, 0xda, 0xbb, 0x7a, 0x89, 0xfc,
|
||||
0x67, 0x30, 0xc9, 0x11, 0xe6, 0xd9, 0x10, 0x09, 0x42, 0x0d, 0x20, 0x2f, 0xb6, 0xf3, 0x94, 0x56, 0x8a, 0x06, 0xaa, 0x97, 0xe9, 0xf3, 0x3f, 0x30, 0xc7, 0xe9, 0x2a, 0xaa, 0x71, 0x33, 0x2d, 0x68,
|
||||
0x68, 0x73, 0xd2, 0xf6, 0x1c, 0x29, 0xbd, 0x52, 0xe9, 0x54, 0xee, 0xff, 0x59, 0x77, 0xaa, 0x83, 0x67, 0x43, 0x99, 0x97, 0x81, 0x1a, 0x62, 0xff, 0x21, 0x2c, 0x94, 0x81, 0x33, 0xc6, 0x8d, 0x97,
|
||||
0x68, 0xee, 0x46, 0x32, 0xc7, 0xbe, 0x1c, 0x66, 0xc8, 0x3e, 0x89, 0xdd, 0x93, 0xea, 0xee, 0x12, 0x94, 0x15, 0x9a, 0xbf, 0x45, 0xb4, 0xc2, 0xc7, 0x2d, 0x7d, 0xc7, 0x49, 0x9a, 0xa2, 0xa0, 0x43,
|
||||
0x69, 0x1b, 0xa3, 0x41, 0x4e, 0x78, 0x62, 0x25, 0x81, 0xbc, 0x51, 0x9b, 0xaf, 0x0b, 0xcb, 0x16, 0xfb, 0x26, 0x2d, 0x3a, 0xbb, 0xd8, 0x63, 0x9f, 0x3e, 0x0e, 0xca, 0x2a, 0x29, 0xf9, 0x94, 0x06,
|
||||
0x6a, 0x0e, 0x82, 0x46, 0x54, 0xb7, 0x47, 0x91, 0x52, 0x05, 0x8c, 0xf7, 0x38, 0xa3, 0x78, 0xe6, 0x29, 0x48, 0x38, 0x74, 0xb6, 0xdb, 0xd6, 0x7e, 0x0d, 0x8c, 0x33, 0x27, 0xb2, 0xfc, 0xac, 0x64,
|
||||
0x6a, 0x16, 0xad, 0xa3, 0xfe, 0x0c, 0x54, 0x68, 0xf0, 0xa4, 0x3f, 0xb2, 0xf5, 0x97, 0xa4, 0x2f, 0x3d, 0xa3, 0x21, 0x8c, 0x88, 0xee, 0x81, 0x9b, 0xf7, 0x99, 0x11, 0x0c, 0xf7, 0xa7, 0x9b, 0x6c,
|
||||
0x6b, 0x54, 0x49, 0x7f, 0xf9, 0x91, 0x5a, 0x69, 0x77, 0x42, 0x8b, 0xdf, 0x8f, 0x45, 0xb1, 0x16, 0xd8, 0x74, 0xc4, 0xf8, 0xa8, 0x36, 0xb5, 0xbd, 0xfc, 0x37, 0x3d, 0x05, 0xf4, 0xc0, 0xef, 0x87,
|
||||
0x6b, 0x8e, 0xec, 0x82, 0x9f, 0x03, 0x73, 0x93, 0x10, 0x99, 0xf0, 0x70, 0xcb, 0xd4, 0xe2, 0xe1, 0x38, 0x0c, 0xd5, 0x64, 0x42, 0x01, 0xd0, 0x5d, 0x80, 0xd8, 0x6b, 0x1e, 0x7e, 0xd0, 0xb0, 0x8b,
|
||||
0x6c, 0xe1, 0xf2, 0x98, 0x6f, 0x0c, 0x46, 0x68, 0x3b, 0xa0, 0x7d, 0x29, 0x6d, 0x0a, 0x84, 0x44, 0x8e, 0xcf, 0x76, 0xc6, 0x9d, 0xb1, 0x83, 0xfe, 0x29, 0xc3, 0x6e, 0xed, 0x8f, 0x8e, 0x8f, 0x2f,
|
||||
0x6c, 0xfd, 0xdb, 0x62, 0x03, 0xf2, 0x54, 0xd3, 0x8a, 0x5b, 0xcd, 0xd4, 0x17, 0x3d, 0x51, 0x64, 0x7a, 0x48, 0x7c, 0xa7, 0x0a, 0xb2, 0x13, 0x26, 0xac, 0xa0, 0xa0, 0x3b, 0xb3, 0xd2, 0xba, 0xc0,
|
||||
0x6d, 0x17, 0x4d, 0xc1, 0x67, 0x3f, 0x7c, 0xfb, 0x6f, 0x1e, 0xa7, 0x5d, 0x71, 0x73, 0x9a, 0xfd, 0xe2, 0xb7, 0x84, 0xe2, 0x14, 0xe4, 0x1a, 0xe6, 0xf5, 0xaa, 0x30, 0xf6, 0x22, 0xa4, 0x00, 0xc4,
|
||||
0x6d, 0xbb, 0xea, 0xd2, 0x3e, 0x8c, 0x86, 0x0c, 0xf8, 0xb4, 0x7f, 0x74, 0xfb, 0xfc, 0xa5, 0x20, 0x4d, 0xe3, 0xe2, 0x8b, 0x88, 0x13, 0x13, 0xbb, 0x1d, 0x1e, 0xcc, 0xdc, 0x47, 0x47, 0x93, 0x4e,
|
||||
0x6d, 0xea, 0xd1, 0x32, 0x57, 0xdf, 0xc3, 0xcc, 0xc6, 0xa4, 0xb3, 0x70, 0x16, 0xba, 0x91, 0x75, 0x5f, 0xe9, 0xe0, 0xec, 0x1f, 0x41, 0x50, 0x30, 0x94, 0x2e, 0x5a, 0xbc, 0x47, 0xf0, 0x7c, 0x88,
|
||||
0x6e, 0xfe, 0xfe, 0x0b, 0x5b, 0x01, 0x47, 0x8b, 0x7b, 0x94, 0x4c, 0x10, 0xd3, 0xa8, 0xac, 0xa2, 0xcc, 0xa4, 0x20, 0x88, 0x88, 0xe2, 0x05, 0x9f, 0x8a, 0x06, 0xcb, 0x58, 0x24, 0xd7, 0xba, 0xb0,
|
||||
0x6f, 0x53, 0xcd, 0x5b, 0xf4, 0x34, 0xb1, 0x9b, 0x4e, 0x14, 0xca, 0x12, 0x7c, 0x59, 0x67, 0x52, 0x07, 0x9d, 0x98, 0x9f, 0xcc, 0x98, 0xbb, 0x7d, 0x7c, 0xf3, 0x15, 0x56, 0x19, 0xec, 0x34, 0x7d,
|
||||
0x70, 0x6b, 0x8a, 0x82, 0x06, 0x52, 0x21, 0x2d, 0x3a, 0x5f, 0x57, 0x30, 0x3c, 0x9c, 0xb2, 0xb8, 0x0b, 0x9e, 0x79, 0xdc, 0xf2, 0x62, 0x1f, 0x29, 0x31, 0x8a, 0xf2, 0x34, 0x64, 0x19, 0xed, 0xfa,
|
||||
0x70, 0xa1, 0x45, 0x0a, 0xf2, 0xad, 0x39, 0x55, 0x69, 0xad, 0x0a, 0xfe, 0xb1, 0xd9, 0xc1, 0x25, 0x32, 0x4e, 0xe9, 0x0a, 0xec, 0x39, 0xc2, 0x58, 0x88, 0x01, 0x34, 0xd4, 0x89, 0x2d, 0x51, 0xab,
|
||||
0x71, 0xa5, 0x71, 0x6d, 0xec, 0xf0, 0x9f, 0xe8, 0xbc, 0xbc, 0xc7, 0x32, 0x25, 0xfe, 0x1e, 0x70, 0x12, 0x07, 0x6c, 0xea, 0x39, 0xb4, 0x9e, 0x9e, 0x72, 0xaf, 0xa2, 0x91, 0xb1, 0xfb, 0x71, 0x7f,
|
||||
0x71, 0xb6, 0x01, 0xee, 0x37, 0x46, 0xda, 0x71, 0x77, 0x72, 0x6d, 0xb8, 0x4f, 0x5b, 0x41, 0x7c, 0x97, 0x21, 0x58, 0x3d, 0x2d, 0x88, 0xad, 0x85, 0x7b, 0xf3, 0x68, 0xa5, 0x4f, 0xf7, 0x6b, 0xfa,
|
||||
0x72, 0xc2, 0x6f, 0x82, 0x7c, 0xeb, 0x92, 0x98, 0x97, 0x98, 0x96, 0x1b, 0xc6, 0xae, 0x74, 0x8d, 0x14, 0x1e, 0x05, 0xd3, 0xeb, 0xcf, 0xb6, 0x5d, 0x90, 0x41, 0xb2, 0x66, 0xc9, 0x20, 0xbe, 0x82,
|
||||
0x73, 0x1a, 0x31, 0xcc, 0x36, 0xc5, 0xa7, 0xd7, 0x44, 0x5f, 0x96, 0x44, 0xce, 0x4e, 0x85, 0x0e, 0x99, 0xcc, 0x79, 0x62, 0xef, 0x6e, 0x2d, 0xe9, 0x87, 0x21, 0x44, 0x7a, 0x14, 0x38, 0xd8, 0x05,
|
||||
0x73, 0x6a, 0xfb, 0x5d, 0xf2, 0x9e, 0xc9, 0xc8, 0x85, 0x32, 0xbe, 0x9c, 0x62, 0x0e, 0xf8, 0x09, 0x01, 0xbf, 0x23, 0xe7, 0x2f, 0x2d, 0x34, 0x88, 0xb7, 0x57, 0xaf, 0xf1, 0x7e, 0x73, 0x4a, 0xce,
|
||||
0x73, 0xba, 0xeb, 0x8e, 0xb0, 0xb6, 0x40, 0x56, 0xa7, 0xbc, 0x30, 0x96, 0x42, 0xfd, 0xc5, 0x89, 0xbf, 0x21, 0x99, 0x28, 0xa9, 0x06, 0x66, 0x6d, 0x10, 0x7e, 0x65, 0xe8, 0xb0, 0xdb, 0xf4, 0x96,
|
||||
0x74, 0x90, 0xad, 0x46, 0xb3, 0xae, 0xa3, 0x2d, 0xd2, 0x1c, 0x46, 0xa7, 0xa4, 0x2f, 0xf4, 0x18, 0x3f, 0xfa, 0xa7, 0xc4, 0x86, 0xc7, 0x5c, 0x64, 0x38, 0xad, 0xf9, 0x36, 0xe5, 0x12, 0xb9, 0xa5,
|
||||
0x74, 0xb3, 0x9c, 0x20, 0x6d, 0xc8, 0xa1, 0x1c, 0xd1, 0x96, 0xd5, 0x99, 0x8d, 0x29, 0x96, 0xb6, 0xad, 0x47, 0x7d, 0x72, 0xea, 0xf8, 0x6e, 0x19, 0xa3, 0xdc, 0x14, 0xec, 0x0e, 0xab, 0x0f, 0x1e,
|
||||
0x75, 0xe7, 0x8c, 0x19, 0x7f, 0xf9, 0x1f, 0x57, 0x47, 0x35, 0xa3, 0xa6, 0x06, 0xe5, 0x68, 0x62, 0xe9, 0xe0, 0xb8, 0x4d, 0xf0, 0xcf, 0x69, 0xf7, 0xc7, 0xf4, 0x3c, 0xbc, 0x17, 0x1a, 0xb3, 0x71,
|
||||
0x77, 0xcd, 0xcf, 0xc9, 0x64, 0x4f, 0x8f, 0x80, 0xff, 0x40, 0x7c, 0xde, 0x31, 0x6a, 0xc2, 0x35, 0xdd, 0xd1, 0xad, 0xa9, 0xc3, 0xb6, 0xa5, 0xaa, 0x95, 0x44, 0xdb, 0x2d, 0x64, 0xb7, 0x9f, 0xed,
|
||||
0x78, 0x03, 0xf1, 0x2e, 0x7e, 0x1b, 0x70, 0x63, 0x50, 0x2e, 0xb8, 0xe2, 0x23, 0xa9, 0x01, 0x3e, 0x2b, 0x61, 0x12, 0x5a, 0x88, 0x8b, 0x74, 0xd6, 0x14, 0x65, 0xb5, 0x1d, 0xe5, 0x32, 0x76, 0xba,
|
||||
0x78, 0x17, 0x64, 0x10, 0x21, 0x88, 0xa8, 0xb4, 0xb1, 0x73, 0xd4, 0xa8, 0xf5, 0xec, 0x94, 0xd8, 0x28, 0x64, 0x71, 0x56, 0x09, 0x7f, 0x99, 0x35, 0x7a, 0x58, 0x1e, 0x62, 0x4b, 0x37, 0x75, 0x09,
|
||||
0x78, 0x36, 0x46, 0x5b, 0xdf, 0xfa, 0xe7, 0x68, 0xef, 0xae, 0xdc, 0xba, 0xa8, 0xb5, 0x78, 0x7b, 0xaf, 0x51, 0xb2, 0x79, 0x2a, 0x02, 0x0e, 0x80, 0xe3, 0x41, 0xa3, 0xf8, 0x24, 0xff, 0x82, 0xca,
|
||||
0x78, 0x83, 0x83, 0xa4, 0xc7, 0x33, 0xbb, 0x87, 0xd2, 0xbf, 0x51, 0x67, 0x3d, 0xc7, 0x3e, 0x92, 0xdf, 0x15, 0xab, 0x7d, 0x51, 0xdc, 0x71, 0x56, 0x27, 0xae, 0x77, 0x68, 0x6d, 0x8d, 0x23, 0xbc,
|
||||
0x78, 0xb4, 0xed, 0xca, 0xab, 0xc8, 0xd9, 0x09, 0x3e, 0x20, 0xe2, 0x17, 0x80, 0x2c, 0xae, 0xb4, 0xf0, 0x9e, 0x23, 0xa3, 0x39, 0x4c, 0x4a, 0xcc, 0x6e, 0x87, 0xe8, 0xf3, 0x53, 0x95, 0x31, 0x0f,
|
||||
0x7a, 0x02, 0x94, 0xba, 0x07, 0xa2, 0xae, 0xe3, 0x64, 0x8a, 0xfc, 0x0d, 0xaf, 0x2e, 0xfd, 0x52, 0x6a, 0x5b, 0x76, 0x34, 0x9e, 0xc9, 0x06, 0xf8, 0x19, 0xc0, 0x3b, 0xc2, 0x17, 0x25, 0x76, 0x38,
|
||||
0x7a, 0xb5, 0xff, 0x84, 0xb7, 0xb8, 0x0a, 0x43, 0x23, 0x66, 0xe3, 0xbb, 0xcc, 0x19, 0x8e, 0xd3, 0x82, 0xc9, 0xfd, 0x59, 0x2c, 0xd5, 0xdd, 0x21, 0x01, 0x38, 0xd2, 0xf9, 0x29, 0x7c, 0xc1, 0xf6,
|
||||
0x7b, 0x94, 0xf0, 0x50, 0x5f, 0x37, 0xb1, 0x9b, 0x43, 0x2a, 0xba, 0x08, 0xbe, 0x2e, 0x3e, 0x00, 0x30, 0x38, 0xc0, 0x2c, 0xeb, 0x53, 0x1e, 0x16, 0x9d, 0x46, 0x0d, 0xb6, 0x0c, 0x35, 0x16, 0x49,
|
||||
0x7b, 0xc9, 0xcb, 0x54, 0x63, 0xce, 0x0f, 0x01, 0x1f, 0xb5, 0x08, 0x5e, 0xb8, 0xba, 0x77, 0xd1, 0xac, 0xd2, 0x83, 0xc4, 0x3f, 0x4a, 0x57, 0x60, 0x3c, 0xc1, 0x13, 0xf2, 0x2c, 0xeb, 0xc5, 0x79,
|
||||
0x7c, 0x09, 0xd8, 0xb9, 0x0b, 0x72, 0xb7, 0xc2, 0xcc, 0xf1, 0xa4, 0x13, 0xe3, 0x35, 0xc2, 0xd1, 0xa2, 0x5d, 0x75, 0xbb, 0x85, 0x41, 0xf9, 0xbc, 0x16, 0xb4, 0xc4, 0xe2, 0x6b, 0xda, 0x68, 0x55,
|
||||
0x7c, 0x73, 0x72, 0xa6, 0x0d, 0x71, 0xe0, 0x48, 0x79, 0xb8, 0x93, 0x0c, 0x16, 0x49, 0x44, 0xd9, 0x6d, 0x37, 0x53, 0xe0, 0xa2, 0x92, 0x4a, 0x31, 0x23, 0x1d, 0x1d, 0x5f, 0xb9, 0x78, 0x82, 0xf2,
|
||||
0x7d, 0x0b, 0x74, 0xae, 0x42, 0xdf, 0x73, 0xa0, 0xc2, 0xc9, 0xca, 0x64, 0xf6, 0xc8, 0x38, 0x13, 0xd3, 0xd6, 0xa5, 0xc4, 0xb0, 0x2b, 0xc4, 0x7f, 0x56, 0x6c, 0xed, 0xd5, 0x68, 0x2c, 0x69, 0x1a,
|
||||
0x7e, 0xac, 0x80, 0xa9, 0x15, 0xc8, 0x4c, 0xd4, 0xaf, 0xec, 0x63, 0x89, 0x04, 0xd9, 0x4e, 0xb1, 0x68, 0xa8, 0x55, 0x79, 0x51, 0xa4, 0xd5, 0x39, 0xb0, 0x71, 0x30, 0x28, 0x55, 0x2b, 0x6b, 0x8c,
|
||||
0x7f, 0x29, 0x2b, 0xce, 0x8d, 0xc9, 0x7b, 0x60, 0x1e, 0xf1, 0xea, 0x72, 0xbd, 0xf7, 0xd9, 0x6a, 0x12, 0xa8, 0x77, 0x82, 0xbb, 0x1b, 0x1c, 0x54, 0x7f, 0x85, 0xc5, 0x5c, 0x7b, 0x3f, 0xf0, 0x35,
|
||||
0x7f, 0x3b, 0xdd, 0x2e, 0x92, 0xae, 0x41, 0x7b, 0x21, 0x43, 0xcc, 0x99, 0x3c, 0x7f, 0xe4, 0x8d, 0x93, 0x63, 0xff, 0xa6, 0x5c, 0x9c, 0xc4, 0x61, 0xb6, 0xa4, 0x07, 0xa7, 0x79, 0x99, 0x81, 0x74,
|
||||
0x7f, 0x49, 0xcc, 0xb3, 0x09, 0x32, 0x3b, 0x1c, 0x7a, 0xb1, 0x1c, 0x93, 0xc9, 0x55, 0xb8, 0xc7, 0x44, 0xf0, 0xa2, 0xb7, 0x5c, 0x31, 0x1f, 0x49, 0x5e, 0x18, 0x90, 0x60, 0x70, 0x50, 0x00, 0x27,
|
||||
0x7f, 0x96, 0x02, 0xc1, 0x23, 0xa0, 0x90, 0xbb, 0x0c, 0x4c, 0x3b, 0x69, 0x66, 0x2b, 0xc5, 0x2d, 0x67, 0x5a, 0x0a, 0x4e, 0xd4, 0x44, 0xd1, 0xc1, 0xe0, 0xe2, 0x6c, 0x2b, 0x0d, 0xc3, 0x76, 0x0b,
|
||||
0x7f, 0x96, 0x47, 0x30, 0xcf, 0xb7, 0xb8, 0xce, 0xa2, 0x84, 0xe2, 0xe8, 0x10, 0x21, 0x2f, 0xf9, 0xb0, 0xee, 0x18, 0x22, 0x7f, 0x64, 0x42, 0x7a, 0x09, 0x5d, 0x68, 0x86, 0x49, 0x3d, 0xb0, 0xc4,
|
||||
0x7f, 0xc7, 0x19, 0x6e, 0xbb, 0xfa, 0x0d, 0x79, 0x47, 0xde, 0x66, 0xf3, 0x71, 0x58, 0xdf, 0x23, 0x82, 0x1f, 0x15, 0x6f, 0x72, 0x4f, 0xc3, 0xcc, 0x90, 0x6f, 0x16, 0xe8, 0xeb, 0xfa, 0x3e, 0x9f,
|
||||
0x7f, 0xdd, 0xfe, 0x06, 0xc4, 0x4d, 0xc4, 0x30, 0x2d, 0xa5, 0x45, 0x77, 0x35, 0x3c, 0x18, 0xfd, 0xbe, 0x11, 0xb4, 0x1c, 0xb3, 0xe6, 0x06, 0x4e, 0xc1, 0xc1, 0x16, 0xee, 0x10, 0x2f, 0xe0, 0x80,
|
||||
0x80, 0x04, 0x23, 0xce, 0xb7, 0xe4, 0x75, 0x96, 0x21, 0xa6, 0x2c, 0x72, 0x9b, 0xab, 0xc8, 0x1f, 0x53, 0x25, 0x9d, 0x95, 0xf7, 0x64, 0x57, 0x22, 0x4a, 0xd6, 0x01, 0x54, 0x2b, 0x7b, 0x26, 0xd4,
|
||||
0x80, 0x4e, 0x35, 0x4c, 0x63, 0x68, 0xbb, 0x27, 0xa9, 0x0f, 0xae, 0x8e, 0x49, 0x8a, 0x57, 0x05, 0x2b, 0x29, 0x34, 0x18, 0x25, 0x9a, 0x01, 0x9c, 0x4f, 0x53, 0xa2, 0x00, 0x72, 0x54, 0x49, 0x0f,
|
||||
0x80, 0x55, 0xed, 0xee, 0xb1, 0x85, 0x61, 0x92, 0x7d, 0xd5, 0x95, 0x6b, 0xe9, 0x07, 0x0c, 0x45, 0x03, 0xfe, 0xc7, 0x83, 0xaa, 0x96, 0xf1, 0x66, 0xf5, 0xf9, 0x3f, 0xdb, 0xc3, 0xc2, 0xab, 0x43,
|
||||
0x80, 0xb4, 0xd9, 0x69, 0x31, 0xbf, 0x0d, 0x02, 0xfd, 0x91, 0xa6, 0x1e, 0x19, 0xd1, 0x4f, 0x1d, 0xa4, 0x52, 0xe6, 0x6d, 0xb2, 0x40, 0x8c, 0xa8, 0x60, 0x4d, 0x41, 0x1f, 0x92, 0x65, 0x9f, 0x0a,
|
||||
0x81, 0x2e, 0xb0, 0xfa, 0x2d, 0xf1, 0x3a, 0x88, 0x95, 0x49, 0x72, 0x9c, 0xad, 0xbf, 0x17, 0x20, 0xb6, 0x8f, 0x6c, 0x9e, 0x21, 0x95, 0x57, 0x41, 0xb7, 0x28, 0x02, 0x59, 0x0a, 0xf1, 0xb5, 0xca,
|
||||
0x81, 0x5d, 0x98, 0xae, 0xe4, 0x98, 0xcf, 0x27, 0xfd, 0x66, 0x48, 0xc7, 0xe0, 0x2c, 0xfc, 0x0a, 0x4a, 0x88, 0xaa, 0x73, 0x23, 0x7c, 0xbb, 0x23, 0x52, 0xfe, 0x38, 0x38, 0x4a, 0x72, 0x68, 0x3d,
|
||||
0x81, 0xa8, 0xb2, 0xc9, 0x75, 0x1a, 0xeb, 0x1f, 0xab, 0xa7, 0xdb, 0xde, 0x5e, 0xe9, 0x69, 0x1d, 0xc0, 0xea, 0xee, 0x2a, 0x31, 0xc3, 0x8b, 0x14, 0x91, 0xa8, 0x14, 0x67, 0x56, 0xa6, 0xb7, 0x70,
|
||||
0x82, 0x5a, 0xcc, 0xe0, 0x63, 0x4b, 0x91, 0x81, 0x8f, 0x57, 0xce, 0x96, 0xb8, 0x31, 0x4e, 0xce, 0xe7, 0x37, 0x3b, 0xd2, 0x0d, 0xa7, 0x7f, 0xb0, 0x8b, 0x9b, 0x96, 0xd6, 0x6e, 0xb6, 0x51, 0x45,
|
||||
0x82, 0xac, 0xba, 0x48, 0xd5, 0x23, 0x6c, 0xcf, 0xf7, 0x65, 0x9a, 0xfc, 0x14, 0x59, 0x4d, 0xee, 0x90, 0x2b, 0xd6, 0x08, 0x2e, 0xf1, 0xa3, 0x0a, 0x0b, 0x9b, 0x50, 0x86, 0x28, 0xcf, 0x34, 0xf4,
|
||||
0x83, 0x58, 0x81, 0xf2, 0xa5, 0x57, 0x2d, 0x70, 0x59, 0xb5, 0xc8, 0x63, 0x50, 0x18, 0x55, 0x28, 0x92, 0xe9, 0x45, 0x62, 0x6f, 0x11, 0x5f, 0xc9, 0xca, 0x07, 0xac, 0xf7, 0xbd, 0xe8, 0x57, 0xa4,
|
||||
0x83, 0x98, 0x94, 0xed, 0x39, 0x1b, 0x7c, 0x88, 0xe9, 0x95, 0xf8, 0x45, 0xca, 0x15, 0x2f, 0x65, 0xbf, 0x88, 0x18, 0x50, 0xd7, 0x68, 0xe3, 0xef, 0x38, 0x80, 0x83, 0x8b, 0x52, 0x84, 0x6a, 0x74,
|
||||
0x84, 0xd7, 0x5f, 0x7a, 0x89, 0x13, 0xd6, 0x6d, 0xb9, 0x46, 0xea, 0xf1, 0x48, 0x0e, 0xad, 0xde, 0xc3, 0x06, 0x3d, 0x27, 0xa6, 0xf6, 0x25, 0xf0, 0x40, 0xb4, 0x06, 0x71, 0x8a, 0xbc, 0xac, 0x44,
|
||||
0x85, 0x25, 0x57, 0x00, 0x89, 0x09, 0x31, 0xc5, 0xb7, 0x1a, 0x73, 0xdf, 0xf0, 0x9e, 0xa5, 0x12, 0x5c, 0xd7, 0x02, 0xea, 0x65, 0xf4, 0x5b, 0x40, 0x54, 0xc1, 0x46, 0x3e, 0x00, 0x17, 0x3f, 0xdc,
|
||||
0x86, 0xe9, 0x38, 0x4c, 0x41, 0xf9, 0x33, 0x9d, 0x9b, 0x0f, 0x80, 0xb4, 0x80, 0x55, 0xd0, 0x2b, 0xe5, 0xff, 0x90, 0x88, 0x60, 0xf2, 0xce, 0xf6, 0x33, 0x59, 0xe0, 0xd8, 0xb7, 0x93, 0x7a, 0x27,
|
||||
0x87, 0x17, 0x6a, 0x15, 0xe7, 0x66, 0xbd, 0x06, 0x52, 0x8e, 0xd9, 0x1a, 0x61, 0x48, 0x1c, 0x3b, 0x3c, 0xde, 0x65, 0xee, 0x95, 0x11, 0x54, 0x03, 0xf9, 0xff, 0xc6, 0xd3, 0xa2, 0x6d, 0x43, 0xd0,
|
||||
0x88, 0x06, 0xcf, 0x0c, 0x7b, 0xd5, 0xdf, 0x7e, 0x01, 0xd1, 0x20, 0xf5, 0x67, 0x34, 0x11, 0x3b, 0xe9, 0x16, 0xe1, 0x83, 0x75, 0x55, 0x77, 0xbd, 0x48, 0x02, 0x6c, 0x25, 0xdb, 0x26, 0x86, 0x80,
|
||||
0x88, 0x10, 0xb3, 0x70, 0x03, 0xe7, 0xcd, 0xda, 0x02, 0x66, 0x63, 0x96, 0x8a, 0xa9, 0xe1, 0xb9, 0xcc, 0xcc, 0x96, 0xee, 0xd9, 0x85, 0x28, 0xcf, 0x5a, 0x97, 0x5b, 0xde, 0x7b, 0x80, 0x84, 0xb7,
|
||||
0x89, 0x4d, 0x78, 0x39, 0x36, 0x8f, 0x32, 0x98, 0xcc, 0x91, 0x5a, 0xe8, 0x74, 0x2e, 0xf3, 0x30, 0xd7, 0xa2, 0x66, 0x99, 0xf4, 0x59, 0x47, 0x8c, 0xf2, 0x2c, 0x2b, 0x6b, 0xb2, 0x85, 0x01, 0x66,
|
||||
0x89, 0xf3, 0xd1, 0xf6, 0xe4, 0x85, 0xc3, 0x34, 0xcd, 0x05, 0x9d, 0x09, 0x95, 0xe3, 0xcd, 0xfd, 0xc0, 0x05, 0x71, 0xb1, 0x84, 0x98, 0x54, 0x84, 0x7a, 0x44, 0xdc, 0x55, 0x48, 0xe2, 0xdc, 0xfb,
|
||||
0x8a, 0x03, 0x96, 0x0b, 0xde, 0xa6, 0xa4, 0x95, 0x3a, 0xc5, 0x0a, 0x2b, 0xbf, 0x93, 0x17, 0xbe, 0x22, 0x8c, 0x2e, 0xbb, 0xc2, 0x99, 0xe1, 0xe9, 0x0c, 0xc7, 0xc6, 0xeb, 0x18, 0xf4, 0x3b, 0x94,
|
||||
0x8a, 0x30, 0x5c, 0x5f, 0xbe, 0x7c, 0x56, 0xf9, 0xe3, 0x21, 0x4d, 0x7a, 0xdb, 0x8f, 0x17, 0x63, 0x41, 0xf4, 0x02, 0x0f, 0x23, 0x4f, 0x3c, 0x14, 0xe5, 0x23, 0x35, 0x96, 0x7a, 0x2d, 0x36, 0x5f,
|
||||
0x8a, 0xa5, 0x09, 0xfb, 0x46, 0x1c, 0x09, 0x9a, 0x3c, 0x1b, 0x80, 0x6d, 0x28, 0x1a, 0x1e, 0x12, 0x75, 0x77, 0x1e, 0xda, 0x0b, 0x0e, 0x3f, 0x7d, 0x95, 0xe0, 0xc1, 0x1b, 0x3c, 0x17, 0x34, 0xeb,
|
||||
0x8c, 0x03, 0x49, 0xd7, 0x08, 0x57, 0x1a, 0xe5, 0xaa, 0x21, 0xc1, 0x13, 0x63, 0x48, 0x23, 0x32, 0x07, 0x32, 0x97, 0xd8, 0x68, 0xf2, 0x90, 0x58, 0x91, 0x65, 0x29, 0xef, 0xc5, 0x20, 0xef, 0x70,
|
||||
0x8c, 0xb4, 0xfd, 0xae, 0x88, 0xf4, 0xf4, 0x92, 0xac, 0x6c, 0x87, 0x71, 0x66, 0x02, 0x36, 0x6d, 0xf1, 0xac, 0x84, 0x22, 0x4b, 0x85, 0xab, 0x2d, 0x39, 0x49, 0xf5, 0xae, 0xe7, 0x9c, 0xef, 0xeb,
|
||||
0x8d, 0x53, 0x32, 0xb3, 0x50, 0x57, 0x7a, 0xb7, 0xb1, 0x98, 0x7f, 0x93, 0xfd, 0xa1, 0x04, 0xb2, 0x09, 0x0f, 0x6a, 0x62, 0xe2, 0x62, 0x21, 0x42, 0x64, 0xf5, 0x54, 0xb6, 0x16, 0x3e, 0x80, 0x50,
|
||||
0x8d, 0x93, 0xd6, 0x0c, 0x69, 0x19, 0x59, 0x65, 0x14, 0x76, 0xe5, 0xdc, 0x46, 0x4b, 0xe1, 0x2a, 0x85, 0xfa, 0x52, 0x80, 0xb6, 0xf5, 0x24, 0xd4, 0xa1, 0xc3, 0xfc, 0xc9, 0xd0, 0x48, 0xcf, 0xad,
|
||||
0x8e, 0x53, 0xef, 0xdc, 0x15, 0xf8, 0x52, 0xce, 0xe5, 0xa6, 0xe9, 0x29, 0x31, 0xbc, 0x42, 0xe6, 0x16, 0x3c, 0xd3, 0x0f, 0xf6, 0x49, 0xcc, 0xa7, 0xe8, 0x72, 0x52, 0xc3, 0xa4, 0x59, 0x96, 0x0b,
|
||||
0x8e, 0xc2, 0x54, 0x0c, 0xed, 0xdd, 0x59, 0x2e, 0x61, 0x6a, 0xf4, 0x38, 0x6d, 0xa9, 0xea, 0xf7, 0x68, 0x55, 0xef, 0x0a, 0x79, 0x2e, 0x26, 0xfc, 0x14, 0x9b, 0x32, 0xe9, 0x51, 0xd7, 0x6c, 0x85,
|
||||
0x8e, 0xd8, 0xaa, 0x03, 0x19, 0x9d, 0xe7, 0xd5, 0x41, 0xcc, 0xbb, 0x30, 0x09, 0xa2, 0xb1, 0xff, 0x57, 0x52, 0x19, 0x66, 0x2d, 0x8b, 0x23, 0xfb, 0xa7, 0xfd, 0xff, 0x02, 0xd8, 0x0a, 0xbd, 0x29,
|
||||
0x8e, 0xde, 0x77, 0x32, 0x28, 0x4d, 0xab, 0x4a, 0xa3, 0x84, 0x60, 0x6c, 0xa0, 0x7b, 0xe2, 0x9e, 0x72, 0xfd, 0xed, 0x09, 0x45, 0x97, 0x26, 0x1a, 0x2f, 0x64, 0x73, 0x49, 0x4a, 0x8a, 0xca, 0x0a,
|
||||
0x8f, 0xdb, 0x08, 0x51, 0xb7, 0x63, 0x9b, 0x32, 0x93, 0x01, 0x9b, 0xf0, 0xa8, 0xdb, 0xd6, 0xb7, 0xdd, 0x57, 0x91, 0x0a, 0xc0, 0xcc, 0x02, 0x24, 0x85, 0x2c, 0x33, 0x81, 0x88, 0x0f, 0x2a, 0x45,
|
||||
0x90, 0x63, 0xf5, 0xfb, 0xc5, 0xe5, 0x7a, 0xb6, 0xde, 0x6c, 0x94, 0x88, 0x14, 0x60, 0x20, 0xe1, 0x72, 0xb1, 0x76, 0xd5, 0xab, 0x57, 0xd4, 0xc8, 0x9f, 0x0f, 0x60, 0x0e, 0x17, 0xfe, 0x2d, 0xe2,
|
||||
0x90, 0xa4, 0x83, 0x52, 0x6b, 0x42, 0x38, 0xc5, 0x5b, 0xc5, 0xde, 0xd2, 0x89, 0xd7, 0xc1, 0xd3, 0x76, 0x10, 0x9b, 0x9d, 0x5f, 0x3e, 0x93, 0x52, 0x9e, 0xda, 0x75, 0xc4, 0xd4, 0x51, 0x52, 0x3a,
|
||||
0x90, 0xae, 0xc5, 0xc4, 0x99, 0x56, 0x74, 0xa8, 0x49, 0xc1, 0xd1, 0x38, 0x44, 0x63, 0xf3, 0xb0, 0x2b, 0x5a, 0xa6, 0x25, 0xa5, 0xc3, 0x20, 0xfc, 0x4f, 0xe7, 0xd9, 0xbb, 0x58, 0xa6, 0x23, 0x98,
|
||||
0x91, 0x41, 0xea, 0x1a, 0x4e, 0x6b, 0xf1, 0xf4, 0xd7, 0x2c, 0x28, 0xa1, 0xd0, 0xd1, 0x24, 0xa9, 0x28, 0xd5, 0xa7, 0xd3, 0x6b, 0x14, 0xfc, 0x7e, 0x7e, 0x53, 0xef, 0x44, 0x23, 0x60, 0xff, 0x99,
|
||||
0x91, 0x50, 0x09, 0xd1, 0xcf, 0x9d, 0x68, 0xb9, 0xe5, 0x30, 0x64, 0xde, 0x82, 0xd4, 0xb7, 0x0b, 0x58, 0xd2, 0xf0, 0x14, 0xa0, 0x38, 0x05, 0xcc, 0x40, 0x64, 0x27, 0xd3, 0x23, 0xd9, 0xfc, 0x35,
|
||||
0x91, 0x65, 0x6a, 0xa4, 0xef, 0x49, 0x3b, 0x38, 0x24, 0xa0, 0xb7, 0x26, 0x32, 0x48, 0xe4, 0xe2, 0xd6, 0x57, 0xa5, 0xc8, 0x48, 0x8d, 0x88, 0x0c, 0xb6, 0x5b, 0x01, 0x73, 0x09, 0x32, 0xfb, 0x53,
|
||||
0x91, 0x72, 0x1a, 0xa7, 0x62, 0x66, 0xb5, 0xbb, 0x2f, 0x80, 0x09, 0xf1, 0x18, 0x85, 0x10, 0xa3, 0x6e, 0x54, 0xaf, 0xd5, 0x6e, 0x96, 0x73, 0x87, 0xea, 0x7d, 0x0b, 0x11, 0x4d, 0x78, 0x20, 0x89,
|
||||
0x91, 0x97, 0x1c, 0x14, 0x97, 0xbf, 0x8e, 0x5b, 0xc6, 0x84, 0x39, 0xac, 0xc4, 0x8d, 0x63, 0xeb, 0xb8, 0xfa, 0xab, 0xfd, 0x76, 0x4d, 0xcb, 0xe8, 0x2f, 0x3b, 0xa9, 0x77, 0xca, 0xc8, 0xcf, 0x6a,
|
||||
0x91, 0xd5, 0x6d, 0x76, 0x5b, 0x02, 0x0b, 0x99, 0xb7, 0x71, 0x65, 0x82, 0xe3, 0xc3, 0x80, 0x14, 0x7f, 0xf0, 0xac, 0xdd, 0xf6, 0x3b, 0xb0, 0x9a, 0xcd, 0xed, 0x0c, 0x02, 0x49, 0xe5, 0xcc, 0x8c,
|
||||
0x92, 0x18, 0x5c, 0x26, 0x42, 0x85, 0x74, 0x1f, 0xa7, 0xf1, 0x98, 0xca, 0xd8, 0xf3, 0x07, 0xc6, 0x08, 0x91, 0xad, 0x93, 0x2d, 0x9e, 0x3c, 0x2a, 0x08, 0xd9, 0x25, 0x46, 0xff, 0x70, 0x99, 0xed,
|
||||
0x92, 0xf8, 0x58, 0xf6, 0xa0, 0x2b, 0xd2, 0x01, 0x46, 0x18, 0xb0, 0x5d, 0x77, 0x59, 0xe3, 0x4e, 0x77, 0x81, 0xb1, 0x5c, 0x34, 0xc8, 0x81, 0x4b, 0xa4, 0xc9, 0x30, 0xb3, 0x20, 0xf8, 0xdb, 0x09,
|
||||
0x93, 0x35, 0xc9, 0xdd, 0x70, 0x01, 0xa2, 0xec, 0x4e, 0x32, 0x2a, 0xb6, 0xa2, 0xd1, 0x1e, 0x6c, 0x4c, 0xd4, 0xef, 0x16, 0x44, 0xc0, 0x0d, 0x63, 0x14, 0xb7, 0xba, 0x5a, 0x26, 0xf9, 0xeb, 0x7d,
|
||||
0x93, 0xf5, 0x23, 0x3e, 0x99, 0x70, 0xa7, 0xdb, 0x1e, 0x4c, 0x9a, 0xa2, 0xde, 0x24, 0x04, 0x63, 0x67, 0x28, 0xe7, 0xc6, 0x6c, 0x03, 0xf2, 0xbb, 0xe7, 0x4b, 0x18, 0xb2, 0x0a, 0x93, 0xba, 0x96,
|
||||
0x94, 0x14, 0xf5, 0xfa, 0x58, 0x53, 0x97, 0x8c, 0x07, 0xfc, 0x6b, 0xb1, 0x7a, 0x1c, 0xa9, 0x46, 0x0f, 0xe4, 0x43, 0xff, 0xca, 0x02, 0x1f, 0xa5, 0x2c, 0x86, 0x72, 0xa9, 0x44, 0x60, 0xf4, 0x4f,
|
||||
0x94, 0x1a, 0x51, 0x23, 0x9e, 0xd4, 0x16, 0xa7, 0x88, 0xb5, 0x05, 0x9d, 0xd6, 0x47, 0x63, 0x1b, 0x16, 0xe5, 0x06, 0xc8, 0xf6, 0xad, 0x87, 0xb1, 0xd5, 0xf3, 0xb8, 0xc9, 0x71, 0x99, 0xa1, 0x60,
|
||||
0x94, 0x70, 0x78, 0xf9, 0x7c, 0x61, 0x96, 0x96, 0x8c, 0x3a, 0xe9, 0x9c, 0x9a, 0x5d, 0x58, 0x66, 0x7e, 0x86, 0x88, 0x2c, 0xf6, 0xc8, 0xc9, 0xd5, 0x89, 0x67, 0xa4, 0x96, 0xbb, 0x7a, 0xf4, 0x3c,
|
||||
0x95, 0x04, 0x9f, 0x0e, 0x41, 0x37, 0xc7, 0x90, 0xb0, 0xd2, 0x76, 0x71, 0x95, 0xe5, 0x6f, 0x73, 0x80, 0x7d, 0x12, 0x3a, 0xdc, 0xf8, 0xf6, 0xe7, 0xbf, 0x2d, 0x4d, 0x99, 0x1d, 0x30, 0x5f, 0x89,
|
||||
0x95, 0x8c, 0x0d, 0xb6, 0x51, 0xf4, 0xe4, 0xcc, 0xd0, 0x62, 0x44, 0x62, 0x63, 0x61, 0x8c, 0x87, 0x79, 0x10, 0xe0, 0x82, 0x57, 0xec, 0x6d, 0x9b, 0xcd, 0xd8, 0xbf, 0x1e, 0x33, 0x13, 0x4f, 0xfb,
|
||||
0x96, 0xe4, 0x50, 0x94, 0x50, 0xd3, 0x80, 0xda, 0xc3, 0x62, 0xff, 0x8e, 0x29, 0x55, 0x89, 0x12, 0x8a, 0x1f, 0x1c, 0xe5, 0x58, 0x85, 0xd2, 0x0d, 0x89, 0xc2, 0x7b, 0xa2, 0xa9, 0xd0, 0x09, 0x09,
|
||||
0x97, 0x83, 0xb5, 0xee, 0x44, 0x92, 0xe9, 0xe8, 0x91, 0xc6, 0x55, 0xf1, 0xf4, 0x80, 0x35, 0x95, 0x9d, 0xad, 0x45, 0x3c, 0x0e, 0x62, 0x3a, 0xf0, 0xfe, 0x7b, 0xf2, 0xc0, 0xa5, 0x78, 0x85, 0xe3,
|
||||
0x97, 0xa5, 0x1a, 0x09, 0x44, 0x44, 0x62, 0x0d, 0xf3, 0x8c, 0xd8, 0xc6, 0x51, 0x2c, 0xac, 0x90, 0x9a, 0x75, 0xfd, 0x43, 0x7a, 0xe1, 0xe4, 0xd2, 0x29, 0x29, 0x80, 0x76, 0x61, 0x23, 0x81, 0x27,
|
||||
0x97, 0xa8, 0xc5, 0xba, 0x11, 0xd6, 0x1f, 0xef, 0xbb, 0x5d, 0x6a, 0x05, 0xda, 0x4e, 0x15, 0xba, 0x47, 0x2d, 0xc4, 0xc6, 0xcd, 0x49, 0x72, 0xfc, 0x1a, 0x03, 0x5d, 0xe3, 0x21, 0x34, 0x2f, 0xe4,
|
||||
0x98, 0xcc, 0x8b, 0x91, 0xfe, 0xc5, 0x25, 0x2f, 0x62, 0xe8, 0x18, 0x43, 0xd9, 0xd5, 0xd8, 0xac, 0x2a, 0x2f, 0x25, 0x3a, 0xa3, 0x81, 0x52, 0xb3, 0x23, 0x6a, 0x50, 0x92, 0x20, 0x0e, 0xd2, 0x90,
|
||||
0x99, 0x28, 0x20, 0xe6, 0xec, 0x8c, 0x41, 0xda, 0xae, 0x4b, 0xd8, 0xab, 0x48, 0xf5, 0x82, 0x68, 0xe9, 0x43, 0xa6, 0x70, 0xd3, 0x5c, 0xa5, 0xe2, 0xbd, 0xcd, 0x3e, 0x7c, 0x4c, 0x94, 0xa0, 0x72,
|
||||
0x99, 0x2d, 0x35, 0x9a, 0xa7, 0xa5, 0xf7, 0x89, 0xd2, 0x68, 0xb9, 0x4c, 0x11, 0xb9, 0x48, 0x5a, 0x6b, 0x1c, 0xe6, 0x43, 0x62, 0xb0, 0xed, 0xb4, 0x44, 0x1c, 0xcc, 0x18, 0x7c, 0x39, 0x64, 0x7b,
|
||||
0x99, 0x54, 0xa1, 0xa9, 0x9d, 0x55, 0xe8, 0xb1, 0x89, 0xab, 0x1b, 0xca, 0x41, 0x4b, 0x91, 0xf6, 0xa0, 0x17, 0x19, 0x1f, 0x6c, 0x40, 0xa8, 0x6b, 0x6f, 0x3e, 0xf3, 0x68, 0xdd, 0x86, 0x00, 0x31,
|
||||
0x99, 0x59, 0xed, 0x4e, 0x05, 0xe5, 0x48, 0xb5, 0x9f, 0x21, 0x93, 0x08, 0xa4, 0x55, 0x63, 0xea, 0x85, 0xbb, 0x22, 0x4c, 0x1a, 0xd9, 0x6d, 0xec, 0x0e, 0x96, 0xc0, 0xe7, 0x1f, 0xfc, 0xcd, 0x81,
|
||||
0x99, 0x6c, 0x1d, 0x55, 0x95, 0x5d, 0xfb, 0x36, 0x98, 0x86, 0x9b, 0xdc, 0x2a, 0x70, 0x0e, 0x6b, 0xcc, 0x76, 0x24, 0x68, 0x71, 0x6b, 0x5c, 0xbd, 0xa7, 0x29, 0x5c, 0xf9, 0x88, 0x41, 0x22, 0x0a,
|
||||
0x99, 0xb2, 0xbd, 0x1f, 0xcf, 0x17, 0xb5, 0x2c, 0x64, 0xe8, 0x50, 0x6b, 0x97, 0xfa, 0x10, 0xcf, 0x8b, 0x63, 0x97, 0xc9, 0xd0, 0x5d, 0x8d, 0x54, 0x3f, 0x86, 0x89, 0x3b, 0x21, 0x0d, 0xba, 0x62,
|
||||
0x99, 0xd7, 0xad, 0xa0, 0xd6, 0x7e, 0x52, 0x33, 0x10, 0x8d, 0xbd, 0x76, 0x70, 0x2f, 0x4b, 0x16, 0x80, 0x87, 0xcf, 0xc4, 0xec, 0x65, 0x49, 0x4d, 0x6c, 0xa8, 0xab, 0xa8, 0x58, 0xfe, 0xba, 0xda,
|
||||
0x9a, 0x22, 0x81, 0x8e, 0x84, 0xca, 0x5c, 0xde, 0xc6, 0xf7, 0xfd, 0xf0, 0xa1, 0x0b, 0x9f, 0xf2, 0x30, 0xa5, 0x3a, 0x5c, 0x18, 0xf4, 0xe9, 0x17, 0x9c, 0x90, 0xa3, 0xfd, 0x26, 0x8c, 0xd6, 0x22,
|
||||
0x9a, 0xf9, 0x25, 0x41, 0xe6, 0x3e, 0xac, 0xbc, 0x57, 0x84, 0xbb, 0x44, 0xdb, 0x66, 0xf9, 0xb6, 0x07, 0x26, 0x17, 0x4f, 0x4e, 0xc1, 0x78, 0xc6, 0xce, 0x32, 0xea, 0xf6, 0x47, 0xee, 0xbc, 0xa2,
|
||||
0x9b, 0xaf, 0x4f, 0x76, 0xd7, 0x6b, 0xf5, 0xd6, 0xa8, 0x97, 0xbf, 0xbd, 0x5f, 0x42, 0x9b, 0xa1, 0x4d, 0x04, 0xe0, 0x8b, 0x48, 0xc3, 0xee, 0x8d, 0x76, 0x93, 0x0a, 0x82, 0x8f, 0xff, 0x38, 0x91,
|
||||
0x9c, 0x25, 0x9f, 0xcb, 0x30, 0x1d, 0x5f, 0xc7, 0x39, 0x7e, 0xd5, 0x75, 0x99, 0x63, 0xe0, 0xef, 0x6b, 0x36, 0xe4, 0x20, 0x57, 0xfd, 0x73, 0x04, 0x6e, 0x6b, 0xd0, 0x8b, 0x14, 0x9f, 0x75, 0x1c,
|
||||
0x9d, 0x00, 0xae, 0x4c, 0xd4, 0x7a, 0x41, 0xc7, 0x83, 0xdc, 0x48, 0xf3, 0x42, 0xc0, 0x76, 0xc2, 0xc1, 0x6f, 0x34, 0x13, 0xf4, 0xd2, 0xdf, 0x50, 0xd1, 0x81, 0xca, 0x3b, 0xb5, 0xad, 0x85, 0x9d,
|
||||
0x9d, 0xd2, 0xdc, 0xb7, 0x2f, 0x5e, 0x74, 0x16, 0x27, 0xf2, 0xe9, 0xe0, 0x3a, 0xb1, 0x85, 0x03, 0xa3, 0x40, 0x3c, 0xf6, 0xa9, 0x04, 0xa4, 0x79, 0xa4, 0xdb, 0x05, 0xd9, 0x7e, 0x22, 0x50, 0xa9,
|
||||
0x9d, 0xeb, 0xca, 0x15, 0x9f, 0x78, 0x92, 0xd5, 0x6c, 0x94, 0x61, 0x4c, 0x46, 0x9c, 0xf3, 0x7c, 0x8d, 0xa0, 0x35, 0x68, 0x3b, 0x12, 0x51, 0xfc, 0x4e, 0x6e, 0xc0, 0xef, 0x2e, 0xee, 0x72, 0x0e,
|
||||
0x9e, 0x08, 0x46, 0x4c, 0xef, 0x99, 0x31, 0x47, 0x3c, 0x38, 0x4d, 0xb7, 0x72, 0x78, 0x99, 0x7a, 0xe9, 0x2d, 0x50, 0x36, 0x8c, 0x8d, 0x2b, 0x9d, 0x6a, 0xea, 0x6e, 0x33, 0x23, 0xa2, 0xbb, 0xe7,
|
||||
0x9e, 0x0d, 0x90, 0x74, 0xf1, 0x46, 0x46, 0x1f, 0x9a, 0xce, 0xe7, 0xd2, 0x7f, 0x2c, 0x7d, 0xd8, 0xbe, 0xe7, 0x3e, 0xb6, 0x2a, 0xc6, 0x2c, 0xf8, 0x7f, 0x03, 0xbe, 0xe0, 0xc4, 0x51, 0x65, 0x28,
|
||||
0x9e, 0xbd, 0xa9, 0x55, 0x4a, 0xd5, 0xbb, 0x9e, 0x3d, 0x5c, 0xe7, 0x00, 0xf7, 0xc8, 0x6d, 0x4f, 0x5b, 0x0d, 0x78, 0x2b, 0xf1, 0xdb, 0xf3, 0x0a, 0x6a, 0x72, 0x34, 0x74, 0x9a, 0x5d, 0xd5, 0x17,
|
||||
0x9e, 0xd3, 0x3f, 0x0f, 0xbc, 0x18, 0x0b, 0xc0, 0x32, 0xf8, 0x90, 0x9c, 0xa2, 0xc4, 0xab, 0x34, 0x18, 0xed, 0xc3, 0x3a, 0x45, 0xa5, 0x0d, 0x25, 0x21, 0xa3, 0xb5, 0x87, 0x6a, 0xa3, 0xea, 0x2c,
|
||||
0x9f, 0x13, 0x6f, 0x15, 0x2a, 0x21, 0x88, 0x5d, 0x57, 0x45, 0x19, 0x55, 0x4c, 0x7b, 0x64, 0xc1, 0x5f, 0x01, 0x4e, 0x41, 0x3c, 0xde, 0x6a, 0xd1, 0x60, 0xf2, 0x09, 0x1e, 0xba, 0x9e, 0x64, 0x24,
|
||||
0x9f, 0x18, 0x63, 0xed, 0x57, 0x17, 0xc3, 0x94, 0xb4, 0x2e, 0xf1, 0x0a, 0x66, 0x07, 0xb1, 0x44, 0xa6, 0x5b, 0xa1, 0x1f, 0xb6, 0x57, 0x9d, 0xf9, 0x4b, 0x8e, 0xb2, 0xf0, 0xc4, 0xcd, 0x60, 0xc1,
|
||||
0x9f, 0x2b, 0x71, 0xec, 0x2f, 0xec, 0xc9, 0x3e, 0x4e, 0xde, 0xae, 0x24, 0xb3, 0x2f, 0x88, 0x57, 0xfa, 0x36, 0xa8, 0x1a, 0x72, 0x72, 0xde, 0xfd, 0x54, 0x35, 0xd2, 0x9f, 0xa3, 0xbf, 0x82, 0x8e,
|
||||
0x9f, 0xa4, 0xd5, 0x02, 0x3f, 0xd4, 0x3e, 0xca, 0xff, 0x42, 0x00, 0xba, 0x7e, 0x8d, 0x43, 0x53, 0x25, 0x9d, 0x2b, 0x7e, 0x5e, 0x72, 0xb5, 0x09, 0x6e, 0xff, 0x80, 0x27, 0xd6, 0x6d, 0x10, 0x43,
|
||||
0xa0, 0x10, 0x7a, 0x56, 0x4e, 0x93, 0x98, 0x9c, 0x57, 0x04, 0x4f, 0xd1, 0x8a, 0xa8, 0x5b, 0xeb, 0x12, 0x58, 0x10, 0x1a, 0xc3, 0xd9, 0xf6, 0xe1, 0x0b, 0xf1, 0x2c, 0x1c, 0x65, 0x73, 0xbc, 0x2b,
|
||||
0xa1, 0x09, 0xe7, 0x1a, 0xe3, 0xa0, 0x37, 0x6c, 0xa0, 0x05, 0x9a, 0x42, 0x12, 0x50, 0x50, 0x8e, 0xdb, 0x2b, 0xb6, 0x24, 0xb6, 0x51, 0x7a, 0x29, 0x1f, 0x51, 0xe2, 0x49, 0xf1, 0x6b, 0x5c, 0xe7,
|
||||
0xa1, 0xa5, 0x9c, 0xc2, 0x78, 0x42, 0x46, 0xad, 0x69, 0x3b, 0x1d, 0xf1, 0x51, 0x45, 0x46, 0x42, 0x32, 0x4e, 0x89, 0xc8, 0x98, 0x56, 0x6a, 0x59, 0x90, 0x68, 0x91, 0xf4, 0x80, 0x89, 0xec, 0xe9,
|
||||
0xa2, 0x24, 0x71, 0xb1, 0xd0, 0x4c, 0x11, 0xca, 0x89, 0x5e, 0x8c, 0x07, 0x8c, 0x22, 0x17, 0x18, 0xc9, 0x6c, 0x40, 0x30, 0x9d, 0x64, 0xcf, 0x84, 0x14, 0x47, 0x59, 0xca, 0x7d, 0xfb, 0xd0, 0xd0,
|
||||
0xa3, 0x30, 0xfd, 0xe6, 0x5c, 0x06, 0x7a, 0x5f, 0x0b, 0x75, 0xc8, 0x0d, 0x0a, 0x30, 0x07, 0x67, 0xc3, 0x01, 0xeb, 0x75, 0xe0, 0xcf, 0x9b, 0x4e, 0xe2, 0x40, 0xf0, 0xd6, 0x0b, 0x3d, 0xc5, 0x03,
|
||||
0xa3, 0x72, 0xda, 0x66, 0xe1, 0x5d, 0x45, 0x6d, 0xc4, 0x20, 0x0b, 0xd3, 0x90, 0x8e, 0x09, 0x43, 0xba, 0x4e, 0xaf, 0x86, 0x4f, 0x7a, 0x35, 0x06, 0x2b, 0x6b, 0x17, 0x04, 0x32, 0x0d, 0x09, 0x0a,
|
||||
0xa4, 0x8b, 0x5e, 0x31, 0x47, 0x7d, 0xa2, 0x48, 0x68, 0x0a, 0x89, 0x35, 0xd1, 0xe5, 0xe6, 0x30, 0xe6, 0xfd, 0xe2, 0x22, 0x77, 0xf9, 0x63, 0x5d, 0xa7, 0xd6, 0xf7, 0xf9, 0xaa, 0x17, 0xe3, 0x4a,
|
||||
0xa4, 0xb3, 0xfe, 0xe3, 0x24, 0xd2, 0x5c, 0x53, 0xfb, 0x5c, 0xb4, 0x86, 0x30, 0xdc, 0x80, 0xdd, 0x7e, 0xe7, 0x8c, 0x1a, 0xac, 0x8c, 0x8d, 0xee, 0xa9, 0x27, 0x39, 0x69, 0x97, 0xe3, 0x3b, 0xce,
|
||||
0xa4, 0xd9, 0x78, 0xb7, 0xc4, 0xbd, 0xa1, 0x54, 0x35, 0xd5, 0x08, 0xf8, 0xb9, 0x59, 0x2e, 0xc2, 0xa5, 0xad, 0xfb, 0x12, 0xea, 0x7b, 0xad, 0x14, 0x6a, 0x35, 0xec, 0xb5, 0x30, 0x94, 0x64, 0x2f,
|
||||
0xa5, 0xbc, 0xfc, 0x74, 0x8d, 0xa4, 0x15, 0xbd, 0x7f, 0x00, 0xb6, 0x69, 0xe1, 0x23, 0x7c, 0x98, 0x98, 0xa6, 0xd0, 0x35, 0x17, 0xcc, 0x80, 0xb3, 0x62, 0x6f, 0x0b, 0xe3, 0x26, 0x04, 0x6b, 0x28,
|
||||
0xa5, 0xe0, 0xc1, 0xc1, 0xfd, 0xeb, 0xe6, 0x1c, 0x4d, 0xdb, 0xb6, 0x6c, 0x57, 0xeb, 0x23, 0xbc, 0xaa, 0x86, 0xc3, 0x6b, 0xab, 0x99, 0x00, 0xad, 0x10, 0x34, 0x2a, 0x49, 0x71, 0x12, 0x8e, 0xac,
|
||||
0xa5, 0xe4, 0x76, 0xc4, 0xba, 0x2e, 0xd8, 0xef, 0x8c, 0x30, 0xf2, 0x47, 0xf3, 0xe1, 0x3a, 0xfa, 0x5c, 0x7e, 0x3a, 0x5a, 0x95, 0x2e, 0x4b, 0x83, 0x25, 0xc2, 0x2f, 0x33, 0xf7, 0xf2, 0x36, 0x21,
|
||||
0xa6, 0x08, 0xa8, 0x7f, 0x51, 0xbd, 0xf7, 0x53, 0x2b, 0x4b, 0x80, 0xfa, 0x95, 0xea, 0xdf, 0xdf, 0x1b, 0xf8, 0xb0, 0xcb, 0xb5, 0x8a, 0x7d, 0x39, 0x39, 0xc9, 0xf1, 0x1c, 0x12, 0xe7, 0x1c, 0x85,
|
||||
0xa6, 0xf1, 0x3f, 0x3b, 0xb8, 0x13, 0x2d, 0x24, 0x85, 0x91, 0xf6, 0x76, 0x2c, 0xed, 0x6d, 0x3a, 0x55, 0xef, 0xd8, 0x81, 0x2d, 0xb9, 0x73, 0x04, 0x49, 0xe2, 0x67, 0xcb, 0x64, 0x47, 0x14, 0x5b,
|
||||
0xa7, 0xb7, 0x88, 0xa7, 0x84, 0x96, 0x07, 0x34, 0x8c, 0x0d, 0xe9, 0x04, 0x19, 0x89, 0xf7, 0xd6, 0x7e, 0xc3, 0x02, 0xf0, 0xce, 0x8d, 0x7f, 0xde, 0x5e, 0x43, 0x48, 0x01, 0xf0, 0x12, 0xb5, 0xb1,
|
||||
0xa7, 0xdf, 0xcc, 0x3a, 0x8d, 0x6a, 0xb3, 0x0f, 0x93, 0xf3, 0x17, 0x48, 0xdb, 0xc8, 0xea, 0x38, 0x41, 0x5c, 0xf5, 0x2b, 0xb9, 0xad, 0x80, 0x85, 0x67, 0x2c, 0xd9, 0xab, 0x89, 0x38, 0xd5, 0xde,
|
||||
0xa8, 0xa3, 0x30, 0x0e, 0x33, 0xa0, 0xa2, 0x69, 0x28, 0x39, 0xcc, 0xba, 0x84, 0x80, 0x3c, 0x5e, 0x74, 0x2d, 0x12, 0x50, 0x1b, 0x6d, 0x58, 0xc4, 0x6e, 0xb8, 0x7f, 0x32, 0x01, 0x7f, 0x2c, 0xff,
|
||||
0xa9, 0x24, 0xd3, 0xca, 0xd6, 0xda, 0x42, 0xb7, 0x39, 0x9b, 0x96, 0xa0, 0x95, 0xa0, 0x6f, 0x18, 0xf6, 0xb1, 0xab, 0xa5, 0xb8, 0x73, 0xb0, 0xd5, 0xf3, 0xa0, 0xee, 0x21, 0x73, 0xb4, 0x8b, 0x6c,
|
||||
0xa9, 0x83, 0xe7, 0x3e, 0x57, 0xbd, 0xf0, 0x14, 0xc9, 0xa2, 0x93, 0x31, 0x29, 0x0e, 0xe8, 0x7d, 0xf3, 0x7f, 0x97, 0xc8, 0x1d, 0xbc, 0xc4, 0x3c, 0x6c, 0x93, 0x3f, 0xe2, 0x20, 0x9c, 0x0b, 0xd5,
|
||||
0xa9, 0xce, 0x29, 0x69, 0xa8, 0x39, 0x82, 0xf8, 0x0b, 0x6b, 0x26, 0x85, 0x56, 0x8a, 0x7d, 0x6f, 0x8e, 0x58, 0xbc, 0xb5, 0xfa, 0xba, 0xa2, 0xf8, 0x16, 0x80, 0x92, 0x17, 0x55, 0x18, 0xa0, 0xc9,
|
||||
0xab, 0x31, 0x1e, 0x73, 0x71, 0x12, 0xe4, 0xd3, 0x4a, 0xbf, 0x54, 0x58, 0x36, 0xbc, 0x67, 0x16, 0x37, 0x66, 0x3e, 0x93, 0x73, 0x8c, 0xef, 0xa3, 0x74, 0x05, 0x21, 0x4c, 0xe8, 0xc9, 0x2a, 0x58,
|
||||
0xab, 0xee, 0x52, 0x28, 0x92, 0xfa, 0x10, 0xb2, 0x22, 0x08, 0xb4, 0xd1, 0x54, 0x01, 0x84, 0x61, 0x7b, 0xc9, 0x87, 0x5c, 0x9e, 0x03, 0xe5, 0x35, 0x3b, 0x4f, 0xf4, 0x76, 0x57, 0x7d, 0x91, 0x8b,
|
||||
0xad, 0x16, 0xde, 0x1e, 0x2b, 0xa2, 0x71, 0x96, 0x39, 0x51, 0x24, 0x68, 0x3b, 0x80, 0xef, 0xc1, 0x86, 0xee, 0x7e, 0x51, 0xd4, 0x34, 0xf8, 0xff, 0x67, 0xd9, 0x73, 0xf4, 0x6e, 0x8e, 0x60, 0x2f,
|
||||
0xad, 0x3b, 0xe5, 0x89, 0xc0, 0x47, 0x4e, 0x97, 0xde, 0x5b, 0xb2, 0xbf, 0x33, 0x53, 0x49, 0x48, 0xb7, 0x6b, 0xb8, 0x03, 0x76, 0xdf, 0xdc, 0x58, 0xb1, 0xfe, 0xd7, 0x67, 0xb5, 0xa1, 0x5b, 0xfc,
|
||||
0xad, 0xcc, 0x0b, 0x6f, 0xd6, 0xdc, 0x59, 0x11, 0xbf, 0x42, 0xf0, 0x36, 0xc0, 0x33, 0xfc, 0x3e, 0x43, 0xf0, 0x7a, 0x83, 0x12, 0xe9, 0x1d, 0x0d, 0x8d, 0x32, 0x79, 0x3b, 0x62, 0x94, 0x0c, 0x7e,
|
||||
0xae, 0x1d, 0xca, 0x8a, 0xab, 0x7c, 0x4b, 0xdd, 0x21, 0xc5, 0xaa, 0x19, 0xa3, 0x23, 0xf5, 0x97, 0xbd, 0x18, 0x50, 0x44, 0x5d, 0x76, 0x69, 0x5c, 0xb2, 0x91, 0x0c, 0xcc, 0xb5, 0xf1, 0x63, 0xb8,
|
||||
0xaf, 0x3b, 0xbf, 0x0c, 0x27, 0x5b, 0xdd, 0x5e, 0xbd, 0x8a, 0x87, 0xf0, 0x02, 0x63, 0x84, 0x74, 0x85, 0x57, 0x2f, 0x8a, 0x98, 0x3d, 0xef, 0x0e, 0xae, 0x98, 0x95, 0xcd, 0x93, 0xd7, 0xff, 0xc3,
|
||||
0xaf, 0x79, 0xb1, 0x40, 0x64, 0x60, 0x1b, 0xc0, 0x98, 0x7d, 0x47, 0x47, 0xaf, 0x1e, 0x91, 0x4a, 0x22, 0x8c, 0x05, 0xd6, 0x22, 0xce, 0xda, 0x03, 0xb7, 0xa4, 0xf6, 0x70, 0x14, 0xfe, 0xe7, 0x67,
|
||||
0xaf, 0x93, 0xd5, 0xa2, 0x23, 0x8f, 0x01, 0xd5, 0x95, 0xa1, 0xbc, 0x20, 0x92, 0xf0, 0xab, 0x29, 0xa5, 0x50, 0xb2, 0xb9, 0x6b, 0xde, 0x73, 0x56, 0xeb, 0xf6, 0x4d, 0x8f, 0x04, 0x23, 0x49, 0x58,
|
||||
0xb1, 0x33, 0xde, 0x42, 0xa3, 0x73, 0x76, 0xf5, 0xd9, 0x14, 0x39, 0xaf, 0x3d, 0x61, 0xd3, 0x82, 0x01, 0xf1, 0x03, 0x77, 0xc3, 0x6d, 0xac, 0xd9, 0xc2, 0x61, 0x0f, 0x52, 0xaa, 0x12, 0x4a, 0x91,
|
||||
0xb1, 0x49, 0xb2, 0x9e, 0x82, 0x11, 0xe2, 0x48, 0x27, 0xfb, 0xe0, 0x16, 0x8d, 0x30, 0xcb, 0x26, 0x19, 0xcd, 0x33, 0x65, 0xbd, 0x6f, 0x81, 0x73, 0xe7, 0xa7, 0x31, 0xc5, 0xf7, 0x02, 0xdc, 0xd9,
|
||||
0xb2, 0xbe, 0xae, 0xca, 0xc1, 0xbd, 0xe4, 0x09, 0xf8, 0x29, 0x33, 0xd8, 0x0f, 0xa3, 0xbf, 0x5f, 0xa0, 0xd1, 0xff, 0x8d, 0x1f, 0x97, 0xe5, 0x26, 0x0b, 0xb2, 0x5c, 0x0f, 0xbb, 0xa3, 0x5c, 0xa7,
|
||||
0xb3, 0x44, 0xd2, 0xf3, 0x3e, 0x30, 0xa2, 0x5e, 0xb9, 0x27, 0xe4, 0xc1, 0xa4, 0x19, 0xd0, 0x19, 0xac, 0xcf, 0xa8, 0x24, 0x9a, 0x5c, 0xe6, 0x22, 0xb8, 0xe7, 0xc7, 0xd8, 0xd5, 0x80, 0x7a, 0x00,
|
||||
0xb3, 0xe5, 0x06, 0x34, 0x0f, 0xbf, 0x6b, 0x57, 0x86, 0x97, 0x33, 0x93, 0x07, 0x9f, 0x24, 0xb6, 0x6b, 0xa4, 0x65, 0x07, 0xe3, 0x5e, 0x91, 0x1d, 0xb0, 0x36, 0x2a, 0x2a, 0xcd, 0xe9, 0x70, 0x49,
|
||||
0xb3, 0xea, 0xfd, 0xeb, 0x6e, 0x28, 0x09, 0xbd, 0x72, 0x73, 0x0e, 0x4f, 0xc7, 0x89, 0x6b, 0x9d, 0x94, 0x54, 0x3c, 0xa3, 0x60, 0xe9, 0x62, 0x9b, 0x63, 0xc0, 0x39, 0xff, 0x91, 0x27, 0x4b, 0xeb,
|
||||
0xb4, 0x20, 0x50, 0x9d, 0x0d, 0x69, 0xb2, 0x94, 0x63, 0x3f, 0xd7, 0xae, 0x2c, 0x36, 0xb2, 0xb5, 0x49, 0xd4, 0x5a, 0x6a, 0x86, 0x3e, 0xf1, 0x68, 0x43, 0xa1, 0x11, 0x6a, 0x11, 0x12, 0x7f, 0x56,
|
||||
0xb4, 0x93, 0x8e, 0xd2, 0xff, 0x00, 0x1b, 0x73, 0xef, 0x31, 0xe5, 0xbb, 0xbe, 0xbe, 0x1d, 0x6d, 0xbb, 0x7d, 0x98, 0x88, 0xa9, 0xfb, 0xe5, 0x25, 0x1a, 0x52, 0xa5, 0xed, 0x01, 0x66, 0x52, 0xcf,
|
||||
0xb5, 0x25, 0x31, 0xc8, 0x43, 0x51, 0xeb, 0x69, 0x5a, 0x8a, 0xff, 0x0b, 0x7a, 0x5b, 0xdf, 0x93, 0x97, 0x2c, 0xde, 0xdf, 0xaf, 0x40, 0x67, 0x74, 0x54, 0x25, 0xd7, 0x5e, 0x21, 0xcd, 0x0c, 0xbb,
|
||||
0xb6, 0x32, 0xa6, 0x28, 0x6c, 0x6f, 0xaa, 0x66, 0x43, 0xec, 0x34, 0x31, 0x1e, 0x0b, 0x97, 0x10, 0xa3, 0x50, 0x8f, 0xc9, 0x52, 0xe9, 0xa0, 0x42, 0x63, 0xc3, 0x31, 0x79, 0xe3, 0x28, 0x14, 0xf8,
|
||||
0xb6, 0x7d, 0xb8, 0xd5, 0x3c, 0x92, 0x5f, 0xeb, 0xad, 0xaf, 0xce, 0x43, 0x56, 0x20, 0x6c, 0x85, 0xf7, 0x3e, 0x22, 0x45, 0x6e, 0xae, 0x4e, 0xd6, 0xee, 0x77, 0xf6, 0xa9, 0xe1, 0x1a, 0x07, 0x8c,
|
||||
0xb7, 0xd3, 0xe3, 0xc4, 0xa9, 0x30, 0xff, 0xfc, 0xdb, 0x18, 0x46, 0x19, 0x53, 0x4e, 0xf7, 0xc3, 0xd4, 0x54, 0x35, 0xef, 0x97, 0xf7, 0x98, 0x86, 0x11, 0x71, 0x4f, 0x55, 0x23, 0xb2, 0x07, 0xe5,
|
||||
0xb7, 0xea, 0x2f, 0xbd, 0x3f, 0xee, 0xda, 0x30, 0x99, 0x12, 0xb2, 0x76, 0x7b, 0xa8, 0x0d, 0xd0, 0x37, 0x81, 0x3e, 0x80, 0xfe, 0xd1, 0x7c, 0xda, 0x79, 0xef, 0x7f, 0x62, 0xb6, 0xd1, 0x95, 0x3b,
|
||||
0xb8, 0xd6, 0xb5, 0xe7, 0x85, 0x7b, 0x45, 0x83, 0x0e, 0x01, 0x7c, 0x7b, 0xe3, 0xd8, 0x56, 0xad, 0xeb, 0x97, 0xc7, 0x29, 0x0e, 0xb0, 0x66, 0x5a, 0x3d, 0x47, 0x3a, 0x4b, 0xeb, 0x51, 0xdc, 0xf3,
|
||||
0xb9, 0x3f, 0x06, 0x99, 0x59, 0x8f, 0x8b, 0x20, 0xfa, 0x0d, 0xac, 0xc1, 0x2c, 0xfc, 0xfc, 0x1f, 0x25, 0x68, 0x79, 0x3f, 0x6e, 0x77, 0x9e, 0x04, 0x79, 0x5e, 0x6d, 0x7c, 0x22, 0x53, 0x0f, 0x75,
|
||||
0xb9, 0x79, 0x15, 0xda, 0x9f, 0x05, 0x27, 0x7f, 0xa5, 0x68, 0x7f, 0x8c, 0x41, 0x13, 0x2d, 0xf6, 0x91, 0x52, 0x51, 0x7f, 0x2b, 0xa2, 0x52, 0xd4, 0x66, 0x39, 0x5b, 0x40, 0xd4, 0xf2, 0xd1, 0x55,
|
||||
0xb9, 0xb2, 0x0e, 0x93, 0x3e, 0x2b, 0x6c, 0x33, 0xc9, 0xff, 0x08, 0x8e, 0x22, 0x4d, 0x80, 0x20, 0x28, 0xf2, 0x9a, 0x4c, 0xeb, 0xe5, 0x0a, 0xb5, 0xd7, 0x46, 0x02, 0x79, 0x11, 0xa4, 0x54, 0xff,
|
||||
0xba, 0xdf, 0xf5, 0xe4, 0xf0, 0xfe, 0xa7, 0x11, 0x70, 0x1c, 0xa8, 0xfb, 0x22, 0xe4, 0xc4, 0x38, 0x21, 0xe3, 0x1e, 0x21, 0x0c, 0xf5, 0x2d, 0x1d, 0x4f, 0x74, 0xdd, 0x50, 0xf1, 0xd0, 0x39, 0xbc,
|
||||
0xbb, 0x01, 0xda, 0x03, 0x33, 0xbb, 0x63, 0x9c, 0x7e, 0x1c, 0x80, 0x6d, 0xb0, 0x56, 0x1d, 0xc9, 0x8a, 0x53, 0x16, 0xf2, 0x2f, 0xef, 0x10, 0x90, 0xfb, 0x8d, 0x0b, 0xe4, 0x6d, 0xae, 0x49, 0x9a,
|
||||
0xbb, 0x1d, 0xd1, 0x6d, 0x53, 0x00, 0x08, 0x63, 0x6f, 0x23, 0x23, 0x03, 0xa7, 0xa8, 0x6f, 0x3d, 0xff, 0x96, 0x9f, 0x84, 0x88, 0x15, 0xc0, 0x57, 0x4b, 0x12, 0xc2, 0xd7, 0x87, 0xfe, 0xc9, 0x3f,
|
||||
0xbb, 0x44, 0xfd, 0x8c, 0xd0, 0x4a, 0xbc, 0x3b, 0x54, 0xe5, 0xcc, 0xea, 0x97, 0xef, 0x81, 0xe7, 0x0f, 0xd3, 0x93, 0x3c, 0x34, 0x28, 0x8d, 0x8b, 0x86, 0xf6, 0xec, 0xb4, 0xf3, 0xed, 0x1f, 0xde,
|
||||
0xbc, 0x75, 0xf9, 0x10, 0xff, 0x32, 0x0f, 0x5c, 0xb5, 0x99, 0x9e, 0x66, 0xbb, 0xd4, 0x03, 0x4f, 0x4a, 0xe5, 0x37, 0xa4, 0x2f, 0xdf, 0xef, 0x35, 0x16, 0x1c, 0x53, 0x48, 0xe3, 0x66, 0xe2, 0x16,
|
||||
0xbd, 0x88, 0x23, 0x55, 0xbf, 0x68, 0x13, 0xcf, 0x88, 0xec, 0x0b, 0x83, 0xb6, 0x13, 0x36, 0x91, 0x10, 0x0f, 0x48, 0x03, 0x81, 0xac, 0x06, 0x53, 0x1c, 0x3d, 0x59, 0x09, 0xcf, 0x1f, 0xb6, 0x26,
|
||||
0xbd, 0xd0, 0x11, 0x26, 0xe9, 0xd8, 0x57, 0x10, 0xd3, 0xfe, 0x75, 0xaf, 0x1c, 0xc1, 0x70, 0x2a, 0x29, 0xf0, 0x81, 0xb4, 0xf6, 0xfd, 0xf6, 0xa2, 0xb2, 0x13, 0x5c, 0x02, 0x97, 0xa9, 0xce, 0xc5,
|
||||
0xbd, 0xd4, 0x08, 0x6c, 0x01, 0x9f, 0x5d, 0x38, 0x84, 0x53, 0xc6, 0xd9, 0x34, 0x75, 0xd3, 0x9a, 0x57, 0x65, 0x72, 0xba, 0xff, 0x75, 0x61, 0x2c, 0x32, 0x1b, 0x46, 0xa3, 0x5a, 0x53, 0x29, 0xb1,
|
||||
0xbe, 0x43, 0x5d, 0xf7, 0xcd, 0x28, 0xaa, 0x2a, 0x7c, 0x8d, 0xb4, 0xfc, 0x81, 0x73, 0x47, 0x5b, 0x77, 0xe5, 0xab, 0xf3, 0x92, 0xf7, 0x6b, 0x7c, 0x76, 0xfa, 0x3f, 0x69, 0x8c, 0xb7, 0x1a, 0x9a,
|
||||
0xbe, 0xf7, 0x66, 0x3b, 0xe5, 0xea, 0x4d, 0xbf, 0xd8, 0x68, 0x6e, 0x24, 0x70, 0x1e, 0x03, 0x6f, 0x4c, 0x03, 0xfb, 0x7f, 0xcd, 0x67, 0xa6, 0xc5, 0x66, 0xed, 0x94, 0xce, 0x09, 0xc4, 0x44, 0x70,
|
||||
0xbf, 0x55, 0x0c, 0x6f, 0x82, 0x6c, 0x96, 0x46, 0x15, 0x52, 0xe6, 0x65, 0xf5, 0x3a, 0x4f, 0x27, 0x5a, 0x14, 0x83, 0x8f, 0xd6, 0x4c, 0xcf, 0x77, 0x3d, 0x19, 0x4b, 0x78, 0xce, 0x33, 0xe9, 0x07,
|
||||
0xbf, 0xca, 0xa4, 0x14, 0x45, 0xf2, 0x0b, 0x54, 0xae, 0xa6, 0x50, 0xd0, 0x3d, 0x7c, 0x39, 0xb7, 0x7c, 0xd8, 0x2a, 0x7a, 0x14, 0x82, 0x4d, 0xc5, 0x5a, 0xa5, 0x87, 0xc4, 0xc0, 0xf7, 0x42, 0xa3,
|
||||
0xc0, 0x53, 0x0b, 0xad, 0xc4, 0xd0, 0x66, 0xd5, 0xc4, 0xb8, 0xb9, 0x55, 0x02, 0x3e, 0x9e, 0xfa, 0x7f, 0xb9, 0x33, 0x7e, 0xcb, 0x7e, 0x12, 0x98, 0xe7, 0xcb, 0xa1, 0x72, 0xd8, 0x68, 0x04, 0x85,
|
||||
0xc0, 0x5b, 0x92, 0x50, 0xbd, 0xa8, 0xe8, 0x6b, 0x6e, 0x5c, 0x6a, 0x8c, 0x58, 0x4f, 0x0f, 0x61, 0xb4, 0xa3, 0xd2, 0x43, 0x68, 0x99, 0x65, 0xb5, 0xa9, 0x55, 0xa2, 0xcb, 0x19, 0x8d, 0x1e, 0x99,
|
||||
0xc1, 0x27, 0xf0, 0xee, 0xfc, 0x2e, 0x45, 0x19, 0x89, 0xd8, 0x8e, 0x4d, 0x1d, 0xa8, 0xa3, 0xb0, 0x8c, 0xa9, 0xd5, 0x88, 0x49, 0x87, 0xa6, 0x15, 0x7e, 0x04, 0xe9, 0xa7, 0x1c, 0x01, 0xad, 0xfc,
|
||||
0xc1, 0x54, 0x7c, 0xf9, 0x02, 0x57, 0x02, 0x07, 0xa9, 0x69, 0x4b, 0x6b, 0x8e, 0x35, 0x3f, 0xe4, 0x14, 0x19, 0xdb, 0x6a, 0x38, 0x02, 0x22, 0x1d, 0xdf, 0x10, 0xfb, 0x8f, 0x86, 0x94, 0x78, 0x04,
|
||||
0xc2, 0x16, 0x14, 0xe2, 0x07, 0xb1, 0x99, 0x1d, 0x3d, 0x6d, 0xf8, 0x42, 0x00, 0x97, 0x18, 0x65, 0x2d, 0x24, 0x1a, 0x8d, 0x92, 0x6e, 0x22, 0x1b, 0x85, 0xd0, 0x69, 0xf1, 0x61, 0x5e, 0x27, 0xa2,
|
||||
0xc2, 0x46, 0x97, 0x59, 0xc1, 0x94, 0x7e, 0x14, 0xf4, 0xb6, 0x5f, 0x72, 0xa9, 0xf5, 0xb3, 0xaf, 0x8b, 0x6f, 0x6e, 0x72, 0x7b, 0x68, 0xbb, 0x0d, 0x91, 0x38, 0x5c, 0xbf, 0x42, 0x17, 0x6a, 0x8a,
|
||||
0xc2, 0xcc, 0x91, 0x55, 0x56, 0x17, 0x17, 0x1a, 0x7d, 0x8a, 0xf5, 0x7d, 0xee, 0x52, 0x9b, 0x44, 0x3a, 0x41, 0xa1, 0xfa, 0xd3, 0xd4, 0x03, 0x2d, 0xbd, 0xb8, 0x14, 0xda, 0xd6, 0xc2, 0x68, 0x8e,
|
||||
0xc3, 0x29, 0x7e, 0x35, 0xc3, 0xa9, 0xef, 0xc4, 0xc0, 0x51, 0x70, 0x6a, 0xab, 0x77, 0xd2, 0x9a, 0x26, 0xe6, 0x2d, 0x9a, 0x38, 0xde, 0x25, 0x6d, 0xff, 0xeb, 0x77, 0xa0, 0xee, 0xc8, 0x66, 0x6a,
|
||||
0xc3, 0x2e, 0x05, 0xee, 0xf5, 0x4d, 0x7e, 0xaa, 0x0d, 0xd8, 0x9f, 0xe0, 0xf4, 0xd1, 0xa8, 0xd9, 0x76, 0x71, 0xfb, 0x45, 0x6f, 0x62, 0x99, 0x04, 0x7c, 0x31, 0x92, 0xc3, 0xe3, 0x72, 0x4b, 0xca,
|
||||
0xc3, 0x50, 0x5b, 0xf3, 0xec, 0x10, 0xa5, 0x1d, 0xac, 0xe4, 0x17, 0xc7, 0x6b, 0x8b, 0xd1, 0x09, 0x39, 0xa0, 0x65, 0xd1, 0xf3, 0x4e, 0x75, 0xb8, 0xa3, 0x06, 0x5e, 0xe3, 0x1c, 0xc6, 0x9b, 0x96,
|
||||
0xc4, 0x2d, 0x11, 0xc7, 0x0c, 0xcf, 0x5e, 0x8c, 0xf3, 0xfb, 0x91, 0xfd, 0xf2, 0x1d, 0x88, 0x40, 0x21, 0xad, 0x83, 0x6c, 0xa6, 0x8a, 0xdf, 0x2c, 0xbb, 0x79, 0x95, 0xc1, 0x0b, 0xf5, 0x88, 0xd4,
|
||||
0xc4, 0x52, 0xab, 0x84, 0x60, 0x73, 0xdf, 0x5a, 0xce, 0x25, 0xcc, 0xa6, 0x4d, 0x6b, 0x7a, 0x09, 0xd9, 0x06, 0x30, 0x8a, 0x1a, 0x65, 0xeb, 0x52, 0x40, 0xe3, 0xc4, 0xeb, 0xca, 0xa9, 0xcc, 0x0c,
|
||||
0xc4, 0x70, 0x16, 0x1a, 0x06, 0xe6, 0xb4, 0x52, 0x25, 0x3a, 0x62, 0x35, 0x36, 0x92, 0x49, 0x79, 0xcd, 0xd1, 0x18, 0x38, 0xe0, 0x8d, 0x8e, 0x4d, 0xc8, 0x6f, 0x76, 0x37, 0x32, 0xe6, 0x4b, 0x0b,
|
||||
0xc4, 0xeb, 0xdc, 0x43, 0x04, 0x8c, 0x43, 0xf5, 0xf1, 0x1c, 0x59, 0xea, 0xd0, 0x51, 0xa3, 0x58, 0x5a, 0x07, 0xfa, 0xfc, 0xe9, 0x85, 0xcf, 0xed, 0x8b, 0x27, 0xb7, 0x3a, 0x54, 0x92, 0xf9, 0xb2,
|
||||
0xc5, 0x5b, 0xe4, 0xa2, 0xa6, 0xac, 0x57, 0x4a, 0x9d, 0x46, 0xf1, 0xe1, 0xc5, 0x4c, 0xac, 0x29, 0xd2, 0x9d, 0xcd, 0x7b, 0x90, 0x40, 0x38, 0x9e, 0x71, 0x57, 0xbb, 0x32, 0xc4, 0x59, 0x1c, 0x4c,
|
||||
0xc6, 0x9d, 0x64, 0xa5, 0xb8, 0x39, 0xe4, 0x1b, 0xa1, 0x67, 0x42, 0x52, 0x7e, 0x17, 0x05, 0x6a, 0x18, 0xce, 0x3c, 0x27, 0x6f, 0xd2, 0x6e, 0x34, 0x90, 0x1a, 0x1b, 0xc7, 0xd0, 0xe3, 0x22, 0x19,
|
||||
0xc8, 0x05, 0x60, 0x3c, 0x4f, 0xa0, 0x38, 0x77, 0x6e, 0x42, 0xf2, 0x63, 0xc6, 0x04, 0xb4, 0x9d, 0x96, 0x84, 0x03, 0x22, 0xe1, 0x92, 0x2d, 0x56, 0x06, 0xa9, 0xb0, 0xbb, 0xb5, 0xbf, 0xfe, 0x6f,
|
||||
0xc8, 0x75, 0xae, 0x8a, 0x8d, 0xb5, 0x44, 0x1a, 0x57, 0x71, 0x72, 0x86, 0x9a, 0x4e, 0xc6, 0xe7, 0x1d, 0xac, 0xe7, 0xa8, 0x75, 0xf4, 0x2a, 0x2f, 0xbb, 0xa4, 0xb5, 0x2f, 0x29, 0x34, 0x99, 0xde,
|
||||
0xc9, 0x99, 0xeb, 0x66, 0x39, 0x35, 0x06, 0xc8, 0x14, 0x9c, 0x35, 0xc8, 0xa8, 0xce, 0x87, 0x67, 0x18, 0x95, 0xd6, 0x51, 0x67, 0xe4, 0xb0, 0x14, 0x0b, 0x54, 0xda, 0x72, 0xa9, 0x2d, 0x7c, 0x88,
|
||||
0xc9, 0xec, 0x35, 0x04, 0x06, 0xf2, 0x6e, 0x55, 0x9a, 0xff, 0xb4, 0x03, 0x0d, 0xe2, 0xeb, 0xde, 0x54, 0x35, 0x05, 0x4c, 0x35, 0xa9, 0x98, 0x60, 0x5b, 0x8f, 0xcf, 0x04, 0x97, 0x2d, 0x8d, 0x55,
|
||||
0xc9, 0xf9, 0xc0, 0x34, 0x34, 0x99, 0x7f, 0xbd, 0x0f, 0xbb, 0x69, 0x8d, 0xac, 0x55, 0x62, 0x64, 0xeb, 0xe9, 0x67, 0xf9, 0x48, 0xa9, 0x79, 0x78, 0xa0, 0xc3, 0x2e, 0xf8, 0x5f, 0x94, 0xb1, 0x88,
|
||||
0xca, 0x65, 0xa9, 0xb2, 0x91, 0x5d, 0x9a, 0x05, 0x5a, 0x40, 0x7b, 0xc0, 0x69, 0x89, 0x36, 0x34, 0x9a, 0x04, 0xe3, 0xdb, 0x69, 0x1e, 0x17, 0x84, 0x19, 0xfb, 0xa7, 0x01, 0xaa, 0xd8, 0xde, 0x55,
|
||||
0xcb, 0x34, 0x00, 0x11, 0xaf, 0xeb, 0x0d, 0x74, 0xc4, 0xa5, 0x88, 0xb3, 0x6e, 0xba, 0xa4, 0x41, 0x96, 0x16, 0x08, 0xe8, 0xd2, 0xfa, 0x80, 0xdc, 0xa8, 0xc1, 0x38, 0x72, 0xc8, 0x50, 0x79, 0x6b,
|
||||
0xcb, 0x67, 0x22, 0x99, 0x5d, 0x48, 0x21, 0xae, 0xaa, 0x98, 0x71, 0xc1, 0xb9, 0x78, 0x2a, 0x02, 0xed, 0x2f, 0x3d, 0x2b, 0xc6, 0xc1, 0xaa, 0xfd, 0x3e, 0x6b, 0x76, 0x73, 0xa2, 0x10, 0xa8, 0xfb,
|
||||
0xcb, 0x7b, 0xba, 0xbe, 0x6e, 0x9a, 0x11, 0x8c, 0x42, 0x0b, 0xe4, 0x29, 0x41, 0x32, 0xa8, 0x8b, 0xc4, 0x94, 0x96, 0x9d, 0x95, 0xb9, 0x88, 0x44, 0x80, 0xbd, 0x4f, 0x68, 0xab, 0x94, 0xfb, 0x2c,
|
||||
0xcb, 0x95, 0xa4, 0xd2, 0xe0, 0xe0, 0x2a, 0x5b, 0x56, 0xd0, 0x59, 0xc9, 0xf2, 0x23, 0xc2, 0x32, 0x67, 0x53, 0xea, 0x8c, 0x44, 0xd2, 0xe3, 0xfa, 0x6c, 0x44, 0x86, 0x62, 0x9b, 0xe3, 0x87, 0xa9,
|
||||
0xcb, 0x99, 0x4b, 0x40, 0x05, 0x90, 0xb6, 0x6c, 0xbf, 0x55, 0xfc, 0x66, 0x35, 0x55, 0xca, 0xf0, 0xd4, 0xf1, 0xce, 0x26, 0x74, 0x64, 0xd0, 0x45, 0x2c, 0x23, 0x61, 0xe0, 0x5e, 0xe1, 0xcd, 0x50,
|
||||
0xcb, 0xcb, 0xb8, 0xe8, 0x1f, 0x1c, 0xfe, 0xe4, 0xd0, 0x2d, 0x65, 0x48, 0x10, 0x80, 0xec, 0xde, 0x62, 0x52, 0x83, 0x44, 0xc5, 0x37, 0x2b, 0x09, 0xfe, 0xd4, 0xee, 0x3c, 0xa1, 0xe1, 0x43, 0x30,
|
||||
0xcc, 0x20, 0x2e, 0x8f, 0x27, 0x53, 0xec, 0x75, 0xc9, 0xee, 0xaa, 0xc6, 0x5c, 0x9d, 0x39, 0xee, 0xa6, 0xfa, 0xed, 0x57, 0x06, 0x64, 0xe9, 0x30, 0xe3, 0x81, 0x59, 0x76, 0xcd, 0x33, 0x2d, 0x91,
|
||||
0xcc, 0x73, 0x96, 0xd1, 0xc3, 0x06, 0xad, 0xfc, 0xe4, 0x9e, 0x70, 0xd7, 0xda, 0xf3, 0x2d, 0x09, 0x3a, 0x8f, 0x2f, 0xeb, 0xe2, 0xac, 0x05, 0x76, 0xba, 0x85, 0x37, 0x70, 0xe1, 0x1b, 0x3e, 0xf2,
|
||||
0xcc, 0x8e, 0xec, 0x6e, 0xb9, 0x21, 0x2c, 0xbf, 0x89, 0x7a, 0x5a, 0xce, 0x7e, 0x8a, 0xbe, 0xec, 0xe1, 0x07, 0x9f, 0x1a, 0x6d, 0xef, 0x0a, 0x78, 0x95, 0x91, 0xcb, 0x15, 0x47, 0xf1, 0xf0, 0x84,
|
||||
0xce, 0x1a, 0xf9, 0xfc, 0xce, 0x6a, 0xd1, 0x9c, 0x00, 0xd8, 0x23, 0x6b, 0x23, 0xb0, 0x3c, 0xf8, 0x3c, 0x59, 0x3c, 0x61, 0x84, 0xa0, 0x82, 0x66, 0xe5, 0x8f, 0xe9, 0x5c, 0x6c, 0xaa, 0x4d, 0x13,
|
||||
0xce, 0x65, 0xc2, 0x95, 0x21, 0xcd, 0x84, 0x98, 0xfa, 0xd9, 0x62, 0xe5, 0xf7, 0x0d, 0x55, 0xc5, 0x04, 0x43, 0x66, 0xec, 0x09, 0xc7, 0x61, 0xa6, 0x0c, 0xc7, 0xc4, 0xa2, 0x00, 0x17, 0x76, 0xa4,
|
||||
0xce, 0x8c, 0x44, 0xe1, 0x85, 0xfa, 0xaa, 0x03, 0x95, 0x9c, 0xf2, 0x32, 0x29, 0x60, 0x78, 0x54, 0xef, 0x7e, 0x31, 0x6e, 0xd0, 0x77, 0x3d, 0x66, 0xd7, 0xbe, 0x5e, 0x0a, 0x48, 0x06, 0x1d, 0xe5,
|
||||
0xce, 0xf7, 0x5d, 0x1d, 0xa8, 0xe9, 0x91, 0xac, 0x96, 0xd3, 0x6f, 0x8a, 0x14, 0x56, 0x28, 0x49, 0x20, 0x7f, 0x9d, 0xd5, 0x0f, 0xc6, 0x30, 0x28, 0xba, 0x83, 0x27, 0x7d, 0x5c, 0x27, 0xd0, 0x0b,
|
||||
0xcf, 0x13, 0xa2, 0x43, 0xc1, 0xcd, 0x2e, 0x3c, 0x8c, 0xeb, 0x7e, 0x70, 0x10, 0x03, 0x87, 0xce, 0xcb, 0xfb, 0x83, 0x05, 0x25, 0xbb, 0xf9, 0xd0, 0xb7, 0x0c, 0x79, 0xad, 0xf3, 0xe8, 0x41, 0x28,
|
||||
0xcf, 0x3f, 0x7c, 0x24, 0xaf, 0x6d, 0x46, 0xe1, 0x33, 0xbb, 0x6a, 0x93, 0x69, 0x02, 0xa4, 0x74, 0x13, 0x39, 0x4b, 0x2a, 0x8a, 0xdd, 0xc6, 0x3a, 0x88, 0x90, 0xc7, 0x5e, 0xb7, 0xc3, 0xa6, 0xc7,
|
||||
0xcf, 0x7f, 0x9e, 0x7d, 0x09, 0x10, 0x23, 0xa1, 0xa1, 0xc3, 0xf5, 0xcb, 0xf7, 0xdd, 0xac, 0xf7, 0xb1, 0x8f, 0x03, 0xa4, 0xd0, 0x79, 0x61, 0xf7, 0x15, 0x06, 0xfe, 0x9d, 0xf4, 0x38, 0x8e, 0xee,
|
||||
0xcf, 0xd2, 0xa8, 0xf2, 0x3b, 0xbc, 0xe7, 0x42, 0x4f, 0x4a, 0x6e, 0x27, 0xde, 0xf3, 0x68, 0xf1, 0x7b, 0x08, 0x6f, 0xfa, 0x22, 0x65, 0x28, 0x90, 0x0f, 0xa0, 0x92, 0x73, 0x6e, 0x70, 0x5e, 0xf9,
|
||||
0xd0, 0x69, 0xa0, 0x7b, 0x5a, 0xcd, 0xe0, 0x04, 0xfe, 0x72, 0x86, 0x55, 0x80, 0x41, 0xf1, 0xf1, 0x23, 0xdd, 0x88, 0xbb, 0x13, 0x95, 0xe5, 0xe4, 0x53, 0xf6, 0x2f, 0x48, 0xef, 0x37, 0xd1, 0x99,
|
||||
0xd0, 0x84, 0xac, 0x3f, 0xcd, 0x80, 0x89, 0x3b, 0x18, 0x78, 0x65, 0x3c, 0x8b, 0xa9, 0xb7, 0x1f, 0xb9, 0xc5, 0x3e, 0x25, 0x84, 0x3a, 0x98, 0x9e, 0xf5, 0x1a, 0x9b, 0x44, 0xc7, 0xea, 0xfc, 0xbc,
|
||||
0xd1, 0x4e, 0xe5, 0x61, 0x6d, 0xc8, 0xec, 0x74, 0xd6, 0x95, 0xaf, 0x08, 0xda, 0xcc, 0x78, 0xbb, 0xef, 0xaf, 0xa7, 0xa9, 0x7a, 0x5c, 0xfe, 0xab, 0x9b, 0x96, 0x1e, 0x86, 0xce, 0x9e, 0xdd, 0x37,
|
||||
0xd2, 0x8a, 0xec, 0x97, 0xe2, 0x8a, 0x38, 0xd9, 0x4b, 0xe6, 0x53, 0x69, 0xe4, 0x3d, 0x01, 0xf6, 0x26, 0x61, 0x95, 0xd6, 0x11, 0x3e, 0x7e, 0xd1, 0x7a, 0x69, 0x30, 0xa3, 0x09, 0x28, 0x88, 0x00,
|
||||
0xd3, 0x72, 0xc0, 0xd0, 0xf4, 0xfd, 0xc9, 0xf5, 0x2e, 0x9e, 0x1f, 0x23, 0xfc, 0x56, 0xee, 0x72, 0x41, 0x4a, 0x17, 0xf3, 0x50, 0xd0, 0xce, 0xa6, 0xc2, 0x6a, 0x35, 0xa6, 0xc3, 0x21, 0x7a, 0x13,
|
||||
0xd4, 0x17, 0xc0, 0x04, 0x52, 0x5c, 0x7b, 0xb5, 0x75, 0x23, 0x83, 0x62, 0x78, 0xce, 0xe1, 0x20, 0xfd, 0x66, 0x14, 0x79, 0x83, 0xba, 0x73, 0x8a, 0xac, 0x01, 0x1e, 0x24, 0xbe, 0x75, 0xe6, 0xe2,
|
||||
0xd4, 0x24, 0x11, 0x90, 0xcd, 0x5a, 0x36, 0x9d, 0x8c, 0x34, 0x4c, 0x66, 0x0e, 0x24, 0xf3, 0x02, 0x7f, 0xb8, 0xe7, 0x06, 0x4f, 0xab, 0x33, 0x77, 0x0e, 0x93, 0xfa, 0x76, 0x5f, 0xfb, 0x15, 0x2e,
|
||||
0xd4, 0x55, 0xa3, 0xc0, 0x84, 0xdf, 0x64, 0xcf, 0x66, 0xdc, 0x1d, 0x2b, 0xab, 0x35, 0x2c, 0x74, 0xaa, 0xf6, 0x60, 0x35, 0x05, 0x8d, 0xf1, 0x14, 0x3e, 0xfb, 0xdd, 0x42, 0x98, 0xaa, 0x45, 0x27,
|
||||
0xd4, 0x65, 0xd6, 0x3b, 0x03, 0x84, 0xf1, 0x6a, 0x16, 0x10, 0xb0, 0xa8, 0x6c, 0x5d, 0x73, 0xb3, 0x6a, 0x33, 0x70, 0x98, 0x28, 0xde, 0x8f, 0xe2, 0x6d, 0xba, 0xc6, 0xdc, 0x6e, 0xfa, 0x00, 0x7d,
|
||||
0xd4, 0x72, 0xd0, 0xdc, 0xba, 0x3f, 0x5d, 0xd6, 0x1b, 0xe3, 0x93, 0x12, 0x44, 0x71, 0x7b, 0xf2, 0x23, 0x0b, 0xab, 0xd3, 0x0e, 0x9e, 0x2f, 0x6b, 0x28, 0x80, 0xbf, 0xcd, 0xc8, 0xfd, 0x66, 0x65,
|
||||
0xd5, 0xbc, 0x11, 0xfb, 0x61, 0x9b, 0xfc, 0xed, 0x64, 0x24, 0x9b, 0x93, 0x0c, 0x78, 0x5e, 0xad, 0x5f, 0xca, 0x39, 0x27, 0xf0, 0xce, 0x3c, 0x5e, 0xfd, 0x3f, 0x1d, 0x9a, 0xf0, 0x4b, 0x37, 0xbf,
|
||||
0xd6, 0xee, 0x8d, 0xb7, 0x82, 0xe3, 0x6c, 0xaf, 0xfb, 0x4d, 0x9f, 0x82, 0x07, 0x90, 0x04, 0x87, 0xde, 0x93, 0x0a, 0xab, 0xcc, 0x1d, 0x19, 0x6f, 0xa4, 0x55, 0xfb, 0xfd, 0x6f, 0x37, 0x27, 0x3d,
|
||||
0xd7, 0x59, 0x30, 0x8d, 0x04, 0x7e, 0x92, 0x06, 0x00, 0x6b, 0x51, 0xb5, 0x77, 0x0f, 0xa2, 0x5e, 0xf5, 0xc1, 0x24, 0xb8, 0xac, 0xc6, 0xb0, 0x13, 0x9f, 0x58, 0x83, 0x76, 0x5f, 0xe3, 0x0d, 0xea,
|
||||
0xd7, 0x96, 0x51, 0xaa, 0x3a, 0x04, 0x91, 0xd3, 0x3b, 0x79, 0x79, 0xf5, 0xb4, 0x19, 0x36, 0xf8, 0xac, 0xef, 0xba, 0x99, 0xbb, 0xa1, 0x0e, 0x05, 0xfd, 0x6f, 0x54, 0xe2, 0x85, 0x9c, 0xc5, 0x89,
|
||||
0xd8, 0x60, 0xd3, 0xdc, 0x4d, 0x9a, 0x41, 0x2e, 0x8f, 0xe8, 0x03, 0x61, 0x00, 0xbd, 0xa7, 0x63, 0x7b, 0x57, 0xa0, 0x16, 0x8c, 0xa8, 0x11, 0x78, 0x1e, 0xd4, 0xa0, 0x08, 0x15, 0xa9, 0x7e, 0x0c,
|
||||
0xd8, 0x78, 0x17, 0xf7, 0x63, 0x09, 0xb1, 0xe4, 0x20, 0x54, 0x78, 0x08, 0xcb, 0x57, 0x3a, 0xea, 0x0c, 0x8e, 0x7d, 0xe1, 0x41, 0x23, 0x79, 0x3a, 0x42, 0x38, 0x85, 0x82, 0x18, 0x42, 0x86, 0xb7,
|
||||
0xd8, 0x9a, 0x11, 0xd1, 0x6c, 0x48, 0x8d, 0xd4, 0xfb, 0xbc, 0x54, 0x1d, 0x4b, 0x07, 0xfa, 0xf8, 0x67, 0x0d, 0x66, 0x09, 0x94, 0x48, 0x8f, 0xe5, 0x4b, 0x1f, 0xbf, 0xf2, 0x70, 0x4e, 0x42, 0x88,
|
||||
0xd8, 0xd4, 0xe6, 0xdd, 0xf6, 0xe4, 0x2d, 0x74, 0xa6, 0xa5, 0x36, 0xea, 0x62, 0xfd, 0x12, 0x17, 0xe4, 0x29, 0x0b, 0x14, 0x5c, 0x9e, 0x5c, 0x36, 0x95, 0xa3, 0x1b, 0x42, 0xef, 0xb5, 0xf5, 0xa4,
|
||||
0xd9, 0x66, 0x8a, 0xb5, 0x27, 0x85, 0x08, 0x67, 0x86, 0xc1, 0x34, 0xb5, 0xe4, 0xbd, 0xdb, 0xf7, 0x24, 0x52, 0x81, 0x3b, 0x69, 0x73, 0x22, 0x9a, 0xb9, 0x2a, 0xa1, 0xa5, 0x4d, 0x20, 0x1b, 0xf5,
|
||||
0xda, 0x35, 0x60, 0xfd, 0x0c, 0x32, 0xb5, 0x4c, 0x83, 0xd4, 0xf2, 0xff, 0x86, 0x90, 0x03, 0xd2, 0x08, 0x93, 0x69, 0xac, 0xf2, 0xc8, 0x96, 0x08, 0xf8, 0xaf, 0xa7, 0x43, 0x6b, 0xfa, 0x46, 0x55,
|
||||
0xda, 0x99, 0x43, 0x27, 0x71, 0x74, 0x96, 0x0b, 0x0d, 0x7d, 0x3f, 0x0d, 0x65, 0x61, 0x76, 0xf3, 0x72, 0x3e, 0xd2, 0xf0, 0x3a, 0x90, 0x51, 0x8b, 0xeb, 0x3c, 0x6c, 0x20, 0x2b, 0x88, 0xcc, 0x14,
|
||||
0xda, 0xf8, 0x70, 0x06, 0xf2, 0x65, 0x39, 0x09, 0xe3, 0x9a, 0x52, 0xb7, 0xec, 0xb2, 0x34, 0x48, 0x4e, 0x7a, 0xc8, 0x4a, 0xc2, 0x1e, 0xb5, 0x93, 0x54, 0xc1, 0xba, 0xfc, 0xdd, 0xf0, 0x8d, 0x9c,
|
||||
0xdb, 0x1e, 0x5c, 0x61, 0x52, 0xa2, 0x8d, 0x3e, 0xb6, 0xb1, 0xaf, 0xea, 0xad, 0x49, 0x74, 0xf3, 0x65, 0x4a, 0xc6, 0xfb, 0xbe, 0x76, 0x9d, 0x87, 0x0a, 0xbb, 0x74, 0xed, 0xe6, 0x32, 0xb9, 0xe5,
|
||||
0xdb, 0xaf, 0x9e, 0x05, 0x6d, 0x3d, 0x5b, 0x38, 0xb6, 0x85, 0x53, 0x30, 0x4a, 0xbc, 0x88, 0x82, 0x7e, 0xbc, 0x00, 0xf8, 0x0c, 0xb9, 0xc7, 0xe1, 0x97, 0xcd, 0xbc, 0x58, 0x22, 0xcd, 0x31, 0x6c,
|
||||
0xdb, 0xb4, 0x24, 0xcb, 0x8a, 0xd3, 0x5e, 0xe6, 0x85, 0x46, 0x09, 0x26, 0x45, 0xc4, 0x68, 0x9d, 0x60, 0x27, 0xa9, 0x7f, 0xed, 0xf3, 0xc5, 0xaf, 0x84, 0x2b, 0x95, 0x72, 0xf1, 0x27, 0x69, 0x97,
|
||||
0xdc, 0x7c, 0xc8, 0xd1, 0xdc, 0x11, 0xe3, 0x04, 0xab, 0xdf, 0x6e, 0x62, 0x27, 0x83, 0x8f, 0x35, 0xb2, 0x23, 0xb7, 0x80, 0xf0, 0x30, 0xde, 0x7b, 0x34, 0x1e, 0x88, 0xa3, 0xf6, 0xa3, 0x61, 0xb4,
|
||||
0xdc, 0x8a, 0xff, 0x7f, 0xaa, 0x9d, 0x1a, 0x00, 0xa3, 0xe3, 0x2e, 0xef, 0xbf, 0x89, 0x9b, 0x30, 0x59, 0xcb, 0xb3, 0x13, 0xa4, 0x8b, 0x82, 0xfa, 0x9c, 0x8d, 0x93, 0x1f, 0xd5, 0x8f, 0xb6, 0x9d,
|
||||
0xdc, 0xcc, 0x3c, 0xe1, 0xc0, 0x0e, 0xe4, 0xb0, 0xb1, 0x04, 0x87, 0xd3, 0x72, 0xa0, 0xfa, 0x47, 0xf5, 0xc2, 0x6f, 0x57, 0xa3, 0x59, 0xbe, 0x7b, 0x27, 0x80, 0x1e, 0x14, 0x4e, 0xac, 0xba, 0xc4,
|
||||
0xdd, 0x59, 0xaf, 0x56, 0x08, 0x44, 0x06, 0xe3, 0x8c, 0x63, 0xfb, 0xe0, 0x85, 0x0f, 0x30, 0xa0, 0xcd, 0x12, 0x77, 0x46, 0x2a, 0x21, 0x92, 0x59, 0x0f, 0xb0, 0x5b, 0xc2, 0x59, 0xe6, 0x12, 0x73,
|
||||
0xdd, 0x5e, 0x4e, 0x9f, 0x20, 0xce, 0x8b, 0xf8, 0xf3, 0x51, 0x22, 0x61, 0xf1, 0x76, 0xec, 0xdd, 0x04, 0x6c, 0x07, 0x9d, 0x32, 0x58, 0x5d, 0x9b, 0x25, 0x9a, 0xfe, 0x0a, 0x28, 0xc9, 0x73, 0xdf,
|
||||
0xdd, 0xa0, 0x12, 0x1d, 0xcf, 0x16, 0x7d, 0xb1, 0xe2, 0x62, 0x2d, 0x10, 0xf4, 0x54, 0x70, 0x18, 0x37, 0xac, 0x6a, 0xf3, 0x04, 0xa0, 0x3e, 0xc0, 0x6b, 0x30, 0x27, 0x90, 0x49, 0x88, 0xc5, 0x6b,
|
||||
0xdd, 0xf3, 0xe4, 0x26, 0x14, 0x19, 0x94, 0x4f, 0x7c, 0x2f, 0x8b, 0x92, 0xf6, 0xd1, 0x4c, 0x35, 0x06, 0x0b, 0x4f, 0x94, 0x81, 0x8c, 0xc4, 0x18, 0x3f, 0x0c, 0x07, 0x27, 0x06, 0xde, 0xf7, 0x26,
|
||||
0xde, 0x7f, 0x76, 0x6e, 0x44, 0x54, 0xda, 0x11, 0x8a, 0x6c, 0x42, 0xbe, 0xe4, 0x76, 0xc4, 0xbb, 0x66, 0xf6, 0x60, 0xbf, 0xdb, 0x88, 0xdb, 0x57, 0x2c, 0x46, 0x21, 0xc4, 0x3e, 0xc1, 0x83, 0x6e,
|
||||
0xdf, 0x02, 0xaa, 0xb4, 0x83, 0x87, 0xa9, 0xe1, 0xd4, 0xc6, 0x52, 0x28, 0x08, 0x9c, 0xb6, 0xab, 0xe1, 0x96, 0xc8, 0xf4, 0xb3, 0x96, 0xc7, 0xe4, 0xbb, 0xc3, 0x95, 0xde, 0x13, 0x69, 0x77, 0xf6,
|
||||
0xdf, 0x6e, 0xc4, 0xf5, 0x0b, 0xe2, 0xa4, 0xb7, 0x65, 0x7f, 0x03, 0x97, 0xbe, 0xd4, 0x83, 0xbe, 0x14, 0x3a, 0x18, 0x88, 0x36, 0x15, 0x80, 0x0a, 0x65, 0xa6, 0x4b, 0x7e, 0x84, 0xd9, 0xb8, 0x58,
|
||||
0xdf, 0x91, 0xac, 0x85, 0xa9, 0x4f, 0xcd, 0x0c, 0xfb, 0x81, 0x55, 0xbd, 0x7c, 0xbe, 0xfa, 0xac, 0x14, 0xb8, 0xc5, 0xee, 0x73, 0x97, 0xfe, 0x2c, 0xc8, 0x59, 0x84, 0x45, 0x9e, 0x2e, 0xa1, 0x4e,
|
||||
0xe0, 0x51, 0xb7, 0x88, 0xec, 0xba, 0xed, 0xa5, 0x30, 0x46, 0xc7, 0x0e, 0x6a, 0xf6, 0x05, 0x8f, 0x95, 0x22, 0x2c, 0x04, 0x61, 0x57, 0xb8, 0xc4, 0xc1, 0xb9, 0xc2, 0xcf, 0xc6, 0x5f, 0x46, 0xe5,
|
||||
0xe0, 0x60, 0xda, 0x09, 0x56, 0x1a, 0xe0, 0x0d, 0xcf, 0xb1, 0x76, 0x9d, 0x6e, 0x8e, 0x84, 0x68, 0x68, 0xa1, 0xe9, 0x9a, 0x54, 0xb1, 0x4a, 0xa5, 0xd0, 0x68, 0x9f, 0x28, 0x40, 0xce, 0xc6, 0xdf,
|
||||
0xe1, 0x1b, 0xdb, 0xfb, 0xac, 0x47, 0x36, 0x91, 0x8c, 0x49, 0x77, 0x98, 0xd6, 0xed, 0x01, 0x8f, 0x52, 0x97, 0x26, 0xa6, 0xb1, 0x89, 0x4b, 0xe0, 0x65, 0x8d, 0x1b, 0x95, 0x19, 0x53, 0x8b, 0x22,
|
||||
0xe2, 0x26, 0xd6, 0xf3, 0xa3, 0x32, 0x23, 0x8f, 0xee, 0x8a, 0x42, 0xa8, 0xfd, 0x57, 0xe8, 0xb0, 0x09, 0x72, 0x5d, 0xb5, 0xf8, 0xdf, 0x4d, 0xc1, 0xcb, 0x54, 0xf1, 0x7c, 0x6f, 0x47, 0xa9, 0xc7,
|
||||
0xe2, 0x4b, 0x31, 0x5a, 0x55, 0x16, 0x71, 0x48, 0x3d, 0x8b, 0x90, 0x73, 0xb3, 0x2d, 0xe1, 0x1b, 0x4d, 0xe1, 0xeb, 0x2e, 0xab, 0x21, 0x1a, 0xfd, 0x2d, 0x9c, 0x31, 0x9f, 0xf5, 0x5e, 0x08, 0xd0,
|
||||
0xe2, 0xcf, 0x88, 0x1c, 0xf0, 0x71, 0x95, 0x45, 0x45, 0x05, 0x04, 0x7d, 0x74, 0x81, 0x0e, 0xd7, 0x9a, 0xe2, 0x0d, 0xfd, 0x0f, 0x15, 0x93, 0xaf, 0xbb, 0xf0, 0x82, 0x70, 0xa4, 0x86, 0xc0, 0x38,
|
||||
0xe3, 0x6d, 0xfc, 0x71, 0x9d, 0x21, 0x14, 0xc2, 0xe3, 0x9a, 0xea, 0x88, 0x84, 0x9e, 0x28, 0x45, 0xab, 0x32, 0x6f, 0x6f, 0x7f, 0xe7, 0x4e, 0x0e, 0x53, 0x9b, 0x7e, 0x54, 0xd8, 0x1f, 0x36, 0x31,
|
||||
0xe3, 0x7f, 0xf3, 0xfc, 0x0e, 0xff, 0x20, 0xbf, 0xc1, 0xc0, 0x60, 0xa4, 0xbf, 0x56, 0x88, 0x5e, 0x1e, 0xfd, 0x55, 0xa8, 0xe9, 0xce, 0x3c, 0x5f, 0x48, 0x69, 0x44, 0x4c, 0xac, 0xff, 0xad, 0x0b,
|
||||
0xe3, 0x98, 0x91, 0xf4, 0x8b, 0xbc, 0xc5, 0x93, 0xb8, 0xed, 0x86, 0xce, 0x82, 0xce, 0x66, 0x6f, 0xc1, 0x14, 0x5b, 0x9f, 0xcb, 0xfd, 0x2b, 0x07, 0xba, 0xd0, 0xa8, 0x9b, 0xf4, 0xc7, 0xbf, 0xbf,
|
||||
0xe4, 0x25, 0x72, 0xaf, 0xac, 0x72, 0x0f, 0x5d, 0x4a, 0x1c, 0x7a, 0xaa, 0xf8, 0x02, 0xf0, 0x94, 0xda, 0xce, 0xb6, 0x82, 0xf4, 0xe9, 0x27, 0x83, 0xb2, 0xbb, 0x3f, 0xa0, 0x08, 0x62, 0xaf, 0x7f,
|
||||
0xe6, 0x23, 0x6d, 0xc1, 0xee, 0x07, 0x4c, 0x07, 0x7c, 0x7a, 0x1c, 0x9b, 0x39, 0x65, 0x94, 0x74, 0x30, 0x84, 0x7b, 0xe1, 0x25, 0xf7, 0xae, 0xb7, 0x1d, 0x91, 0xa1, 0x28, 0x13, 0x3a, 0xea, 0x7f,
|
||||
0xe6, 0x37, 0x00, 0x25, 0x26, 0x22, 0x1b, 0xc3, 0x2e, 0x47, 0x74, 0x55, 0xb1, 0x2f, 0x86, 0x4f, 0x20, 0xb2, 0x7c, 0x44, 0x67, 0x9a, 0x2e, 0x78, 0xe5, 0xc5, 0x6d, 0xa1, 0xff, 0xce, 0x8b, 0x41,
|
||||
0xe6, 0x85, 0x6f, 0x13, 0x7f, 0x79, 0x99, 0x2d, 0xc9, 0x4f, 0xa2, 0xf4, 0x32, 0x97, 0xec, 0x32, 0xd2, 0xd9, 0xa7, 0x6f, 0x7b, 0xe6, 0x61, 0x14, 0xc6, 0xa1, 0x3e, 0xfc, 0x3b, 0xcd, 0xf5, 0xc8,
|
||||
0xe6, 0xc6, 0x3c, 0x98, 0x4b, 0xc7, 0x54, 0x73, 0x63, 0x76, 0x56, 0x4a, 0x8f, 0x9a, 0xb1, 0xb7, 0x88, 0x5b, 0x9a, 0xc2, 0xf4, 0x9f, 0x1e, 0xc6, 0xe4, 0x05, 0x30, 0x49, 0xd2, 0x6f, 0x78, 0xf9,
|
||||
0xe7, 0x68, 0x1f, 0x15, 0x31, 0x21, 0xea, 0x1e, 0x67, 0xf7, 0x4b, 0xbc, 0xb0, 0xcd, 0xc5, 0xe5, 0x02, 0x70, 0x2c, 0x1b, 0x8c, 0xc5, 0x5f, 0xb6, 0x5d, 0x70, 0x2d, 0xfb, 0xa9, 0x48, 0xb5, 0xf4,
|
||||
0xe7, 0xc2, 0x0b, 0x3a, 0xb4, 0x81, 0xec, 0x88, 0x55, 0x01, 0xec, 0xa5, 0x29, 0x37, 0x81, 0xd8, 0x4b, 0x5a, 0x1a, 0xc2, 0x4f, 0x88, 0x26, 0x6b, 0x52, 0x70, 0xe7, 0xec, 0xb4, 0xaa, 0x25, 0x38,
|
||||
0xe7, 0xd9, 0xbd, 0xbc, 0xc6, 0x8b, 0x5b, 0xed, 0x59, 0x0c, 0x29, 0xb7, 0x2d, 0xca, 0x2b, 0x96, 0x77, 0x9b, 0x8b, 0x68, 0xb1, 0x2a, 0x47, 0xde, 0xd0, 0x74, 0xb8, 0xf1, 0xb3, 0x2f, 0x8f, 0xbe,
|
||||
0xe8, 0x00, 0x39, 0x5d, 0xbe, 0x0e, 0x04, 0x57, 0x81, 0xe8, 0x00, 0x51, 0x78, 0xb4, 0xba, 0xf5, 0xa2, 0x57, 0xf0, 0x6e, 0x15, 0x91, 0x21, 0xa6, 0x7c, 0x59, 0x5f, 0x6a, 0xe2, 0x25, 0x06, 0xfd,
|
||||
0xe8, 0x08, 0xa3, 0x37, 0xed, 0x69, 0x11, 0xef, 0x56, 0x1c, 0x27, 0xca, 0xba, 0xca, 0xbf, 0x4e, 0xa6, 0xd6, 0xe2, 0x0f, 0xb7, 0x0f, 0x54, 0x13, 0xb1, 0x21, 0xac, 0x25, 0x1a, 0xbc, 0xc1, 0x0c,
|
||||
0xe8, 0x81, 0x86, 0x66, 0xb7, 0xe0, 0x14, 0xb6, 0xe4, 0x82, 0x0a, 0xfa, 0xa8, 0x4d, 0x5a, 0x84, 0xfa, 0x42, 0xcb, 0x5d, 0x26, 0x63, 0xc8, 0x48, 0xd3, 0x58, 0xb2, 0x91, 0x32, 0x74, 0xba, 0x21,
|
||||
0xe9, 0xc7, 0x1b, 0x7c, 0xd5, 0xa4, 0xdf, 0x0b, 0xa4, 0x8d, 0x2c, 0xa4, 0x8e, 0x6c, 0x46, 0x8e, 0x65, 0x72, 0x57, 0xf7, 0x3f, 0x66, 0x01, 0x7d, 0xe4, 0x5e, 0x18, 0xee, 0x74, 0x6e, 0xd7, 0xd5,
|
||||
0xe9, 0xd8, 0x73, 0xcb, 0xce, 0xde, 0x36, 0x34, 0xe0, 0xa4, 0xb3, 0x64, 0x4b, 0x51, 0xe1, 0xc8, 0xa0, 0xa0, 0x48, 0x27, 0x29, 0x92, 0xc7, 0x38, 0x51, 0x3e, 0xbc, 0x96, 0xcd, 0x3e, 0x33, 0x60,
|
||||
0xea, 0x9c, 0x72, 0xc1, 0xce, 0x86, 0x5e, 0x60, 0x44, 0xab, 0xff, 0x57, 0x6f, 0xd7, 0x12, 0xd4, 0xdf, 0x3f, 0x51, 0x14, 0x31, 0x87, 0x53, 0xef, 0xcf, 0xef, 0xed, 0x70, 0xee, 0x58, 0x68, 0x84,
|
||||
0xea, 0xff, 0x8c, 0x85, 0xc2, 0x08, 0xba, 0x4d, 0x5b, 0x6b, 0x80, 0x46, 0xf5, 0xd6, 0x08, 0x17, 0x47, 0xd7, 0x79, 0xba, 0xda, 0x77, 0x68, 0xe6, 0x49, 0xd0, 0x47, 0xff, 0x9b, 0x1f, 0x66, 0x0c,
|
||||
0xed, 0xd2, 0xcb, 0x55, 0x72, 0x6e, 0x10, 0xab, 0xed, 0xec, 0x9d, 0xe8, 0xca, 0x5d, 0xed, 0x28, 0x9a, 0xd7, 0x93, 0xab, 0x3b, 0x69, 0x19, 0xd1, 0x63, 0xc8, 0x75, 0xfe, 0xc1, 0x20, 0x9c, 0xd5,
|
||||
0xee, 0x0a, 0x54, 0xe2, 0xdd, 0x98, 0x48, 0xd7, 0xa2, 0x09, 0xd2, 0xc9, 0x45, 0x44, 0x9a, 0x0b, 0xac, 0x9a, 0x46, 0xc4, 0x5e, 0x5e, 0x03, 0x3c, 0x69, 0x82, 0xd2, 0x92, 0x48, 0x39, 0xac, 0x74,
|
||||
0xee, 0x83, 0xa5, 0x66, 0x49, 0x61, 0x09, 0xa7, 0x4f, 0x6a, 0xc6, 0xe4, 0x10, 0xdf, 0x00, 0xbb, 0x29, 0xa2, 0x90, 0xe0, 0x02, 0x15, 0x16, 0xae, 0x3b, 0x8a, 0x23, 0x28, 0x8e, 0x7e, 0x2e, 0x72,
|
||||
0xee, 0xd7, 0xe0, 0xef, 0xf2, 0xed, 0x55, 0x9e, 0x2a, 0x79, 0xee, 0x36, 0x1f, 0x99, 0x62, 0xaf, 0x3b, 0x1e, 0x99, 0x91, 0x31, 0xe3, 0x0b, 0xb7, 0xfd, 0x07, 0x54, 0x6f, 0xae, 0x0a, 0x72, 0x67,
|
||||
0xef, 0x87, 0xbe, 0x89, 0xa4, 0x13, 0x65, 0x7d, 0xe8, 0x72, 0x14, 0x98, 0x55, 0x2c, 0xf9, 0xe0, 0xf3, 0xc1, 0xf7, 0x1b, 0xc6, 0x2d, 0xfa, 0x63, 0xb9, 0xf2, 0x5b, 0xbc, 0x66, 0xe8, 0x64, 0x94,
|
||||
0xf0, 0x21, 0x74, 0xbb, 0x75, 0xbc, 0x77, 0x4d, 0xf2, 0xd7, 0xa6, 0x3a, 0x0b, 0x0f, 0x7a, 0x04, 0x0c, 0x99, 0x07, 0x39, 0x9f, 0x97, 0xf6, 0x42, 0x74, 0x3d, 0xa9, 0x7d, 0xf3, 0x01, 0x04, 0xc7,
|
||||
0xf0, 0xb3, 0xd0, 0xd4, 0xc5, 0x45, 0x78, 0x80, 0xe2, 0xd9, 0xb7, 0x72, 0x8e, 0xb6, 0x4b, 0xd2, 0x88, 0xb5, 0xd4, 0xa2, 0x6e, 0xc8, 0x83, 0xf3, 0xc0, 0x94, 0x1d, 0x8a, 0xf2, 0x9d, 0x94, 0x66,
|
||||
0xf1, 0x86, 0x3e, 0xc8, 0xb7, 0xf4, 0x3f, 0x94, 0xad, 0x14, 0xfb, 0x0b, 0x8b, 0x4a, 0x69, 0x49, 0x7a, 0x8c, 0x65, 0xec, 0xbc, 0x2a, 0x55, 0xe0, 0xbb, 0x42, 0x0e, 0x77, 0x2b, 0x8c, 0xdc, 0x91,
|
||||
0xf1, 0x97, 0xa1, 0x71, 0xa0, 0x9a, 0xb6, 0x40, 0xaa, 0x8a, 0xc4, 0xff, 0x7d, 0xdf, 0xc8, 0x83, 0x77, 0xa8, 0x9f, 0xdb, 0xb3, 0xfe, 0xe0, 0x14, 0xab, 0xb9, 0x09, 0x7d, 0x92, 0x57, 0x5b, 0x67,
|
||||
0xf1, 0xb4, 0xf6, 0x51, 0x3b, 0x0d, 0x54, 0x4a, 0x68, 0x8d, 0x13, 0xad, 0xc2, 0x91, 0xef, 0xa8, 0xc5, 0x9f, 0x42, 0x0c, 0xa5, 0xdc, 0xb2, 0x3e, 0x0b, 0x5a, 0x06, 0xfa, 0x7e, 0x0d, 0x08, 0x3d,
|
||||
0xf1, 0xca, 0xd3, 0xac, 0x00, 0x5b, 0x57, 0xd6, 0xe2, 0x2e, 0xa5, 0x7b, 0x9e, 0xbe, 0x1e, 0xe9, 0xe5, 0x05, 0x2b, 0xdd, 0xa4, 0x99, 0xf5, 0xf2, 0xc1, 0x36, 0x43, 0x17, 0xde, 0x87, 0xa7, 0x94,
|
||||
0xf2, 0x54, 0x08, 0x77, 0x46, 0xfd, 0xb5, 0xd9, 0xd9, 0xea, 0xe6, 0xdf, 0x45, 0x84, 0x85, 0x75, 0x2b, 0xeb, 0x0f, 0xcf, 0x29, 0x5c, 0x36, 0xd2, 0x73, 0x51, 0x1b, 0x45, 0xf7, 0x48, 0x02, 0x87,
|
||||
0xf2, 0x77, 0xaf, 0x4f, 0x9b, 0xdc, 0x91, 0x8a, 0xe8, 0x9f, 0xa3, 0x5c, 0xc1, 0xb3, 0x4e, 0x34, 0x98, 0x4c, 0x04, 0xae, 0x97, 0x65, 0x32, 0x2c, 0x3c, 0xb0, 0x49, 0x57, 0x4d, 0x36, 0x50, 0x9c,
|
||||
0xf2, 0xa1, 0x6d, 0x35, 0xb5, 0x54, 0x69, 0x41, 0x87, 0xa7, 0x0d, 0x40, 0xca, 0x68, 0x29, 0x59, 0xf4, 0xf3, 0x5c, 0x2c, 0xe0, 0xea, 0xb8, 0xfd, 0x64, 0xf7, 0xac, 0x2a, 0xb9, 0xf5, 0xc2, 0x4a,
|
||||
0xf2, 0xa7, 0x44, 0x64, 0x23, 0x52, 0x48, 0xea, 0x2a, 0x41, 0xea, 0x0d, 0x02, 0x56, 0xe9, 0xcd, 0xd2, 0x4b, 0xb6, 0xb3, 0xe2, 0xa6, 0xf2, 0xfc, 0x7e, 0x0a, 0xad, 0xc8, 0x6e, 0xc5, 0x6c, 0xa1,
|
||||
0xf3, 0x1f, 0xd4, 0x61, 0xc5, 0xe9, 0x95, 0x10, 0x40, 0x3f, 0xc9, 0x7c, 0x1d, 0xa2, 0xd8, 0xa9, 0xcb, 0xe2, 0x70, 0x59, 0x7d, 0x32, 0xba, 0xdf, 0x8f, 0xd6, 0x6b, 0x77, 0x49, 0x5f, 0x8d, 0x94,
|
||||
0xf3, 0x30, 0xf2, 0x3c, 0x09, 0x77, 0x2a, 0x64, 0xe1, 0x47, 0x8a, 0x19, 0xce, 0x00, 0x3f, 0xab, 0xca, 0x4f, 0x52, 0xa9, 0x43, 0x1a, 0x8c, 0x68, 0x03, 0x01, 0x9a, 0xd5, 0x32, 0xd7, 0xdd, 0xc8,
|
||||
0xf3, 0x37, 0x27, 0xb5, 0x4a, 0x99, 0x08, 0xce, 0xc7, 0xed, 0x8d, 0xb5, 0x82, 0xa1, 0x48, 0x24, 0x20, 0xfa, 0x25, 0x7b, 0x61, 0xb5, 0x59, 0xc4, 0x73, 0x43, 0x11, 0x08, 0x72, 0xad, 0xf7, 0xd8,
|
||||
0xf3, 0xd3, 0x89, 0x50, 0xa3, 0xca, 0xcf, 0x61, 0xc9, 0x4d, 0xb9, 0x15, 0x35, 0x76, 0x19, 0x4e, 0x95, 0x3b, 0x57, 0x85, 0x63, 0x71, 0x59, 0xb3, 0xaa, 0x6f, 0x1e, 0x92, 0x32, 0x20, 0xea, 0xd4,
|
||||
0xf4, 0x8e, 0x6d, 0xd8, 0x71, 0x8e, 0x95, 0x3b, 0x60, 0xa2, 0x4f, 0x2c, 0xbe, 0xa6, 0x0a, 0x95, 0x21, 0xde, 0xae, 0x67, 0xdb, 0x25, 0x42, 0x5b, 0x7d, 0x3a, 0xce, 0x3c, 0x51, 0x7d, 0xd9, 0xb7,
|
||||
0xf4, 0xd7, 0xd6, 0xf0, 0xd8, 0x20, 0xf7, 0x49, 0xa4, 0x42, 0xda, 0xb0, 0xa3, 0x4d, 0x53, 0xa7, 0x1c, 0xe4, 0x7d, 0xf5, 0x1d, 0xe0, 0x7e, 0x67, 0x23, 0xab, 0x84, 0x81, 0x08, 0xad, 0x19, 0x45,
|
||||
0xf4, 0xd8, 0xea, 0xd6, 0xc3, 0x25, 0x03, 0x05, 0x38, 0xd1, 0x0e, 0xbb, 0x39, 0xf0, 0xef, 0xdc, 0x2f, 0x55, 0x37, 0x94, 0xc1, 0x4a, 0x5e, 0x45, 0xf9, 0x55, 0x5c, 0x33, 0x59, 0x25, 0xd9, 0xd3,
|
||||
0xf4, 0xdc, 0x5a, 0x40, 0xd2, 0xa9, 0xdb, 0xda, 0xb2, 0x10, 0xba, 0xe0, 0xc5, 0x08, 0xe0, 0x53, 0xae, 0x98, 0x6c, 0x4d, 0xa4, 0x2d, 0x68, 0x76, 0x0a, 0x16, 0x55, 0xd6, 0xfb, 0xae, 0xc0, 0x51,
|
||||
0xf5, 0x1b, 0xc0, 0xb8, 0xfc, 0xe1, 0xba, 0xe7, 0x1b, 0x76, 0xcb, 0x3a, 0xde, 0x28, 0xb7, 0x12, 0x66, 0x9d, 0x4e, 0x93, 0x8f, 0xd3, 0x7c, 0x9f, 0x58, 0x72, 0x49, 0x3a, 0xcc, 0x25, 0xfa, 0xe1,
|
||||
0xf5, 0x58, 0xe0, 0x4e, 0xf9, 0x9b, 0x39, 0xa1, 0x01, 0x2e, 0x8b, 0xc2, 0x68, 0x57, 0x28, 0xd9, 0x83, 0xc6, 0x82, 0xcf, 0x5e, 0x6f, 0x7e, 0x4d, 0x33, 0x5a, 0x66, 0x02, 0x83, 0xd7, 0xc6, 0x66,
|
||||
0xf5, 0xd3, 0x96, 0xfc, 0x5a, 0xd8, 0xb7, 0xea, 0xc2, 0x26, 0x52, 0x12, 0x9d, 0x56, 0x44, 0x9d, 0xc3, 0x0b, 0x69, 0x65, 0xce, 0x3e, 0x41, 0xf5, 0xd7, 0x65, 0x90, 0xe3, 0xb1, 0xec, 0xfe, 0x62,
|
||||
0xf5, 0xe8, 0x92, 0xdd, 0x6e, 0xc4, 0xc2, 0xde, 0xfa, 0x4a, 0x49, 0x5c, 0x09, 0x21, 0x9b, 0x62, 0x13, 0x79, 0xb6, 0x4d, 0xa3, 0xd1, 0xb2, 0xe3, 0x4a, 0xdf, 0x4b, 0x5f, 0x11, 0x02, 0xbd, 0x39,
|
||||
0xf7, 0x49, 0x47, 0x59, 0x0a, 0x87, 0xa0, 0x05, 0x02, 0x3e, 0x9e, 0xf8, 0x9c, 0xdf, 0x0c, 0x38, 0xd8, 0xd5, 0x82, 0xca, 0x41, 0x73, 0xf8, 0x20, 0x1c, 0xeb, 0xc4, 0x43, 0xef, 0x79, 0x67, 0x90,
|
||||
0xf7, 0xe4, 0xc7, 0xfb, 0x10, 0x75, 0x5a, 0xc5, 0x34, 0xbc, 0xdf, 0x61, 0xaa, 0x7f, 0xa1, 0x85, 0x39, 0xe4, 0x2e, 0x06, 0x1c, 0x24, 0x78, 0x91, 0xe9, 0xba, 0x42, 0xe1, 0x72, 0x90, 0xc7, 0x42,
|
||||
0xf8, 0xdd, 0x22, 0x81, 0xc6, 0x7c, 0x59, 0xa0, 0x8f, 0xdd, 0xc9, 0x85, 0x9e, 0x9d, 0x5f, 0xf7, 0x38, 0x02, 0xca, 0xd8, 0x89, 0x75, 0x24, 0x2b, 0xd1, 0x14, 0x86, 0xf1, 0x3c, 0x6d, 0xda, 0x6b,
|
||||
0xf8, 0xf3, 0x8c, 0x4f, 0xeb, 0xe9, 0xd8, 0xe4, 0x5e, 0x71, 0xa4, 0x59, 0xc5, 0xbf, 0xf1, 0x71, 0x75, 0x5c, 0x34, 0x8d, 0x5f, 0x61, 0x9f, 0x3c, 0x6e, 0xf3, 0x0a, 0x3f, 0x8f, 0xd0, 0x2b, 0xd1,
|
||||
0xf9, 0x23, 0xef, 0xa6, 0x61, 0x5c, 0xe9, 0xa9, 0x3e, 0x5d, 0x69, 0x96, 0x3b, 0x30, 0xad, 0xb0, 0x0f, 0x2d, 0x20, 0x59, 0x11, 0x3f, 0x55, 0xba, 0xbc, 0x47, 0x7b, 0xa8, 0x89, 0x84, 0x1f, 0x29,
|
||||
0xfa, 0xbc, 0x37, 0x9d, 0xf3, 0x95, 0xe6, 0xf5, 0x24, 0x72, 0xb4, 0x4f, 0xa5, 0x08, 0x2f, 0x9f, 0x0e, 0x0d, 0xa4, 0x80, 0xf0, 0x51, 0x98, 0xc6, 0x68, 0x14, 0xb7, 0x05, 0x5b, 0x03, 0xf4, 0x46,
|
||||
0xfb, 0x0b, 0xbc, 0x25, 0x6a, 0xea, 0x5c, 0xf9, 0x3d, 0xa9, 0x9c, 0xf2, 0x64, 0x81, 0xcc, 0x42, 0xf4, 0xe7, 0xba, 0x6b, 0x32, 0xdb, 0x63, 0xb8, 0x27, 0x62, 0x08, 0x07, 0xe7, 0x9e, 0x80, 0x5c,
|
||||
0xfc, 0x73, 0x60, 0x34, 0xeb, 0xab, 0x00, 0x47, 0x76, 0x58, 0x1c, 0xe9, 0xa6, 0xc1, 0x12, 0x10, 0x6d, 0xfd, 0xdf, 0xab, 0xb3, 0x15, 0xb1, 0xf0, 0xa4, 0xd0, 0x84, 0x2d, 0x67, 0x30, 0x84, 0x29,
|
||||
0xfd, 0x30, 0x62, 0x35, 0x8e, 0x0e, 0x1d, 0xc4, 0xc3, 0xa6, 0x03, 0x80, 0xef, 0x1b, 0xdf, 0xd4, 0xc5, 0x1f, 0x44, 0x73, 0xb8, 0x60, 0x09, 0x37, 0xd9, 0x21, 0xdf, 0x47, 0x2f, 0xbf, 0x9b, 0x65,
|
||||
0xfd, 0x45, 0x91, 0xad, 0xd2, 0xe5, 0xb0, 0x66, 0x43, 0x63, 0x72, 0x0c, 0x71, 0x49, 0x29, 0x82, 0xd5, 0xb2, 0x23, 0xa1, 0x41, 0xa6, 0x24, 0x82, 0x46, 0xcd, 0x23, 0x81, 0xf6, 0x7e, 0x92, 0x6c,
|
||||
0xfd, 0xbe, 0x6c, 0x45, 0xf2, 0x41, 0x44, 0x21, 0x56, 0x2d, 0x81, 0x2e, 0xb6, 0x7c, 0x5f, 0xa0, 0xcf, 0xd0, 0xd4, 0x0a, 0xfe, 0x2c, 0xf0, 0xcd, 0xdc, 0x5e, 0x09, 0x05, 0x4a, 0xcb, 0x4f, 0xe5,
|
||||
0xfe, 0x0e, 0x58, 0x84, 0x6c, 0x40, 0x71, 0x7f, 0xed, 0xe6, 0xa1, 0xe0, 0xd6, 0xa0, 0x54, 0x6c, 0xbf, 0x8b, 0x8c, 0xf0, 0xb8, 0x22, 0x58, 0xfc, 0x16, 0xd0, 0x5b, 0xab, 0x58, 0x10, 0x7d, 0x34,
|
||||
0xff, 0xd7, 0x68, 0x8e, 0x7d, 0x2b, 0x8c, 0x3c, 0x31, 0x40, 0xb4, 0x15, 0xe7, 0x28, 0xbb, 0xe7, 0x66, 0x3c, 0x54, 0xe2, 0x3b, 0xd2, 0x88, 0xff, 0x2c, 0xf4, 0x61, 0x78, 0x35, 0x08, 0x8f, 0x39,
|
||||
0xff, 0xf4, 0x21, 0xa9, 0xdc, 0xd3, 0xef, 0x38, 0xad, 0x58, 0x5e, 0x8b, 0xac, 0xa4, 0x08, 0xac, 0x2e, 0x4c, 0xdb, 0xdf, 0xa6, 0x79, 0x90, 0x0e, 0xc1, 0x70, 0x89, 0x62, 0x4e, 0x31, 0x0a, 0xda,
|
||||
};
|
||||
|
|
34
src/dev.c
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Device detection and enumeration
|
||||
* Copyright © 2014-2023 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2014-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -384,8 +384,7 @@ BOOL GetOpticalMedia(IMG_SAVE* img_save)
|
|||
FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_FLAG_SEQUENTIAL_SCAN, NULL);
|
||||
if (hDrive == INVALID_HANDLE_VALUE)
|
||||
continue;
|
||||
if (!DeviceIoControl(hDrive, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX,
|
||||
NULL, 0, geometry, sizeof(geometry), &size, NULL))
|
||||
if (!DeviceIoControl(hDrive, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, NULL, 0, geometry, sizeof(geometry), &size, NULL))
|
||||
continue;
|
||||
// Rewritable media usually has a one sector
|
||||
if (DiskGeometry->DiskSize.QuadPart <= 4096)
|
||||
|
@ -416,9 +415,9 @@ BOOL GetOpticalMedia(IMG_SAVE* img_save)
|
|||
/* For debugging user reports of HDDs vs UFDs */
|
||||
//#define FORCED_DEVICE
|
||||
#ifdef FORCED_DEVICE
|
||||
#define FORCED_VID 0x0781
|
||||
#define FORCED_PID 0x55AE
|
||||
#define FORCED_NAME "SanDisk Extreme 55AE SCSI Disk Device"
|
||||
#define FORCED_VID 0x23A9
|
||||
#define FORCED_PID 0xEF18
|
||||
#define FORCED_NAME "SCSI DISK USB Device"
|
||||
#endif
|
||||
|
||||
void ClearDrives(void)
|
||||
|
@ -465,7 +464,7 @@ BOOL GetDevices(DWORD devnum)
|
|||
// Oh, and we also have card devices (e.g. 'SCSI\DiskO2Micro_SD_...') under the SCSI enumerator...
|
||||
const char* scsi_disk_prefix = "SCSI\\Disk";
|
||||
const char* scsi_card_name[] = {
|
||||
"_SD_", "_SDHC_", "_MMC_", "_MS_", "_MSPro_", "_xDPicture_", "_O2Media_"
|
||||
"_SD_", "_SDHC_", "_SDXC_", "_MMC_", "_MS_", "_MSPro_", "_xDPicture_", "_O2Media_"
|
||||
};
|
||||
const char* usb_speed_name[USB_SPEED_MAX] = { "USB", "USB 1.0", "USB 1.1", "USB 2.0", "USB 3.0", "USB 3.1" };
|
||||
const char* windows_sandbox_vhd_label = "PortableBaseLayer";
|
||||
|
@ -594,7 +593,7 @@ BOOL GetDevices(DWORD devnum)
|
|||
uprintf("Could not allocate Device ID list");
|
||||
goto out;
|
||||
}
|
||||
for (s=0, i=0; s<ARRAYSIZE(usbstor_name); s++) {
|
||||
for (s = 0, i = 0; s < ARRAYSIZE(usbstor_name); s++) {
|
||||
list_start[s] = i;
|
||||
if (list_size[s] > 1) {
|
||||
if (CM_Get_Device_ID_ListA(usbstor_name[s], &devid_list[i], list_size[s], ulFlags) != CR_SUCCESS)
|
||||
|
@ -891,13 +890,13 @@ BOOL GetDevices(DWORD devnum)
|
|||
break;
|
||||
}
|
||||
drive_size = GetDriveSize(drive_index);
|
||||
if (drive_size < (MIN_DRIVE_SIZE * MB)) {
|
||||
uprintf("Device eliminated because it is smaller than %d MB", MIN_DRIVE_SIZE);
|
||||
if (drive_size < MIN_DRIVE_SIZE) {
|
||||
uprintf("Device eliminated because it is smaller than %s", SizeToHumanReadable(MIN_DRIVE_SIZE, FALSE, FALSE));
|
||||
safe_free(devint_detail_data);
|
||||
break;
|
||||
}
|
||||
|
||||
if (GetDriveLabel(drive_index, drive_letters, &label)) {
|
||||
if (GetDriveLabel(drive_index, drive_letters, &label, FALSE)) {
|
||||
if ((props.is_SCSI) && (!props.is_UASP) && (!props.is_VHD)) {
|
||||
if (!props.is_Removable) {
|
||||
// Non removables should have been eliminated above, but since we
|
||||
|
@ -928,11 +927,16 @@ BOOL GetDevices(DWORD devnum)
|
|||
uprintf("NOTE: You can enable the listing of Hard Drives under 'advanced drive properties'");
|
||||
safe_free(devint_detail_data);
|
||||
break;
|
||||
} else if ((!enable_HDDs) && (props.is_CARD) && (drive_size > MAX_DEFAULT_LIST_CARD_SIZE * GB)) {
|
||||
uprintf("Device eliminated because it was detected as a card larger than %d GB", MAX_DEFAULT_LIST_CARD_SIZE);
|
||||
} else if ((!enable_HDDs) && (props.is_CARD) && (drive_size > MAX_DEFAULT_LIST_CARD_SIZE)) {
|
||||
uprintf("Device eliminated because it was detected as a card larger than %s",
|
||||
SizeToHumanReadable(MAX_DEFAULT_LIST_CARD_SIZE, FALSE, FALSE));
|
||||
uprintf("To use such a card, check 'List USB Hard Drives' under 'advanced drive properties'");
|
||||
safe_free(devint_detail_data);
|
||||
break;
|
||||
} else if (props.is_VHD && IsMsDevDrive(drive_index)) {
|
||||
uprintf("Device eliminated because it was detected as a Microsoft Dev Drive");
|
||||
safe_free(devint_detail_data);
|
||||
break;
|
||||
}
|
||||
// Windows 10 19H1 mounts a 'PortableBaseLayer' for its Windows Sandbox feature => unlist those
|
||||
if (safe_strcmp(label, windows_sandbox_vhd_label) == 0) {
|
||||
|
@ -982,8 +986,8 @@ BOOL GetDevices(DWORD devnum)
|
|||
safe_free(devint_detail_data);
|
||||
break;
|
||||
}
|
||||
safe_sprintf(&display_msg[strlen(display_msg)], sizeof(display_msg) - strlen(display_msg),
|
||||
"%s [%s]", (right_to_left_mode)?RIGHT_TO_LEFT_MARK:"",
|
||||
safe_sprintf(&display_msg[strlen(display_msg)], sizeof(display_msg) - strlen(display_msg) - 1,
|
||||
"%s [%s]", (right_to_left_mode) ? RIGHT_TO_LEFT_MARK : "",
|
||||
SizeToHumanReadable(drive_size, FALSE, use_fake_units));
|
||||
display_name = display_msg;
|
||||
}
|
||||
|
|
44
src/dos.c
|
@ -2,7 +2,7 @@
|
|||
* Rufus: The Reliable USB Formatting Utility
|
||||
* DOS boot file extraction, from the FAT12 floppy image in diskcopy.dll
|
||||
* (MS WinME DOS) or from the embedded FreeDOS resource files
|
||||
* Copyright © 2011-2023 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2011-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -33,6 +33,7 @@
|
|||
#include "rufus.h"
|
||||
#include "missing.h"
|
||||
#include "resource.h"
|
||||
#include "msapi_utf8.h"
|
||||
|
||||
#include "dos.h"
|
||||
|
||||
|
@ -289,8 +290,9 @@ static BOOL ExtractMSDOS(const char* path)
|
|||
{
|
||||
int i, j;
|
||||
BOOL r = FALSE;
|
||||
HMODULE hDLL = NULL;
|
||||
uint8_t* diskcopy_buffer = NULL;
|
||||
char locale_path[MAX_PATH];
|
||||
char diskcopy_dll_path[MAX_PATH];
|
||||
char* extractlist[] = { "MSDOS SYS", "COMMAND COM", "IO SYS", "MODE COM",
|
||||
"KEYB COM", "KEYBOARDSYS", "KEYBRD2 SYS", "KEYBRD3 SYS", "KEYBRD4 SYS",
|
||||
"DISPLAY SYS", "EGA CPI", "EGA2 CPI", "EGA3 CPI" };
|
||||
|
@ -298,28 +300,22 @@ static BOOL ExtractMSDOS(const char* path)
|
|||
if (path == NULL)
|
||||
return FALSE;
|
||||
|
||||
// There should be a diskcopy.dll in the user's AppData directory.
|
||||
// Since we're working with a known copy of diskcopy.dll, just load it
|
||||
// in memory and point to the known disk image resource buffer.
|
||||
static_sprintf(diskcopy_dll_path, "%s\\%s\\diskcopy.dll", app_data_dir, FILES_DIR);
|
||||
if (read_file(diskcopy_dll_path, &diskcopy_buffer) != DISKCOPY_SIZE) {
|
||||
uprintf("'diskcopy.dll' was either not found or is invalid");
|
||||
goto out;
|
||||
}
|
||||
DiskImage = &diskcopy_buffer[DISKCOPY_IMAGE_OFFSET];
|
||||
DiskImageSize = DISKCOPY_IMAGE_SIZE;
|
||||
|
||||
// Reduce the visible mess by placing all the locale files into a subdir
|
||||
static_strcpy(locale_path, path);
|
||||
static_strcat(locale_path, "LOCALE\\");
|
||||
CreateDirectoryA(locale_path, NULL);
|
||||
|
||||
hDLL = GetLibraryHandle("diskcopy");
|
||||
if (hDLL == NULL) {
|
||||
uprintf("Unable to open 'diskcopy.dll': %s", WindowsErrorString());
|
||||
goto out;
|
||||
}
|
||||
|
||||
DiskImageSize = 0;
|
||||
DiskImage = (BYTE*)GetResource(hDLL, MAKEINTRESOURCEA(1), "BINFILE", "disk image", &DiskImageSize, TRUE);
|
||||
if (DiskImage == NULL)
|
||||
goto out;
|
||||
|
||||
// Sanity check
|
||||
if (DiskImageSize < 700*KB) {
|
||||
uprintf("MS-DOS disk image is too small (%d bytes)", DiskImageSize);
|
||||
goto out;
|
||||
}
|
||||
|
||||
for (i = 0, r = TRUE; r && i < FAT_FN_DIR_ENTRY_LAST; i++) {
|
||||
if (DiskImage[FAT12_ROOTDIR_OFFSET + i * FAT_BYTES_PER_DIRENT] == FAT_DIRENT_DELETED)
|
||||
continue;
|
||||
|
@ -335,7 +331,7 @@ static BOOL ExtractMSDOS(const char* path)
|
|||
r = SetDOSLocale(path, FALSE);
|
||||
|
||||
out:
|
||||
safe_free(DiskImage);
|
||||
safe_free(diskcopy_buffer);
|
||||
return r;
|
||||
}
|
||||
|
||||
|
@ -356,7 +352,7 @@ BOOL ExtractFreeDOS(const char* path)
|
|||
IDR_FD_EGA17_CPX, IDR_FD_EGA18_CPX };
|
||||
char filename[MAX_PATH], locale_path[MAX_PATH];
|
||||
BYTE* res_data;
|
||||
DWORD res_size, Size;
|
||||
DWORD res_size;
|
||||
HANDLE hFile;
|
||||
int i;
|
||||
|
||||
|
@ -370,10 +366,10 @@ BOOL ExtractFreeDOS(const char* path)
|
|||
static_strcat(locale_path, "LOCALE\\");
|
||||
CreateDirectoryA(locale_path, NULL);
|
||||
|
||||
for (i=0; i<ARRAYSIZE(res_name); i++) {
|
||||
for (i = 0; i < ARRAYSIZE(res_name); i++) {
|
||||
res_data = (BYTE*)GetResource(hMainInstance, MAKEINTRESOURCEA(res_id[i]), _RT_RCDATA, res_name[i], &res_size, FALSE);
|
||||
|
||||
static_strcpy(filename, ((i<2)?path:locale_path));
|
||||
static_strcpy(filename, ((i<2) ? path : locale_path));
|
||||
static_strcat(filename, res_name[i]);
|
||||
|
||||
hFile = CreateFileA(filename, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ, NULL,
|
||||
|
@ -383,7 +379,7 @@ BOOL ExtractFreeDOS(const char* path)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
if (!WriteFileWithRetry(hFile, res_data, res_size, &Size, WRITE_RETRIES)) {
|
||||
if (!WriteFileWithRetry(hFile, res_data, res_size, NULL, WRITE_RETRIES)) {
|
||||
uprintf("Could not write file '%s': %s.", filename, WindowsErrorString());
|
||||
safe_closehandle(hFile);
|
||||
return FALSE;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* DOS keyboard locale setup
|
||||
* Copyright © 2011-2021 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2011-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -197,8 +197,8 @@ static kb_list fd_kb_list[] = {
|
|||
static int ms_get_kbdrv(const char* kb)
|
||||
{
|
||||
unsigned int i, j;
|
||||
for (i=0; i<ARRAYSIZE(ms_kb_list); i++) {
|
||||
for (j=0; j<ms_kb_list[i].size; j++) {
|
||||
for (i = 0; i<ARRAYSIZE(ms_kb_list); i++) {
|
||||
for (j = 0; j < ms_kb_list[i].size; j++) {
|
||||
if (safe_strcmp(ms_kb_list[i].list[j], kb) == 0) {
|
||||
return i;
|
||||
}
|
||||
|
@ -210,8 +210,8 @@ static int ms_get_kbdrv(const char* kb)
|
|||
static int fd_get_kbdrv(const char* kb)
|
||||
{
|
||||
unsigned int i, j;
|
||||
for (i=0; i<ARRAYSIZE(fd_kb_list); i++) {
|
||||
for (j=0; j<fd_kb_list[i].size; j++) {
|
||||
for (i = 0; i < ARRAYSIZE(fd_kb_list); i++) {
|
||||
for (j = 0; j < fd_kb_list[i].size; j++) {
|
||||
if (safe_strcmp(fd_kb_list[i].list[j], kb) == 0) {
|
||||
return i;
|
||||
}
|
||||
|
@ -250,7 +250,7 @@ static const char* kb_hr_list[][2] = {
|
|||
{"is", "Icelandic"},
|
||||
{"it", "Italian"},
|
||||
{"jp", "Japanese"},
|
||||
// {"ko", "Korean"}, // Unsupported by FreeDOS?
|
||||
// {"ko", "Korean"}, // Unsupported by FreeDOS
|
||||
{"nl", "Dutch"},
|
||||
{"no", "Norwegian"},
|
||||
{"pl", "Polish"},
|
||||
|
@ -270,7 +270,7 @@ static const char* kb_hr_list[][2] = {
|
|||
{"lv", "Latvian"},
|
||||
{"lt", "Lithuanian"},
|
||||
{"tj", "Tajik"},
|
||||
// {"fa", "Persian"}; // Unsupported by FreeDOS?
|
||||
// {"fa", "Persian"}; // Unsupported by FreeDOS
|
||||
{"vi", "Vietnamese"},
|
||||
{"hy", "Armenian"},
|
||||
{"az", "Azeri"},
|
||||
|
@ -288,7 +288,7 @@ static const char* kb_hr_list[][2] = {
|
|||
static const char* kb_to_hr(const char* kb)
|
||||
{
|
||||
int i;
|
||||
for (i=0; i<ARRAYSIZE(kb_hr_list); i++) {
|
||||
for (i = 0; i < ARRAYSIZE(kb_hr_list); i++) {
|
||||
if (safe_strcmp(kb, kb_hr_list[i][0]) == 0) {
|
||||
return kb_hr_list[i][1];
|
||||
}
|
||||
|
@ -426,7 +426,7 @@ static cp_list cp_hr_list[] = {
|
|||
static const char* cp_to_hr(ULONG cp)
|
||||
{
|
||||
int i;
|
||||
for (i=0; i<ARRAYSIZE(cp_hr_list); i++) {
|
||||
for (i = 0; i < ARRAYSIZE(cp_hr_list); i++) {
|
||||
if (cp_hr_list[i].cp == cp) {
|
||||
return cp_hr_list[i].name;
|
||||
}
|
||||
|
@ -449,13 +449,13 @@ static const char* get_kb(void)
|
|||
// need an KLID which GetKeyboardLayoutNameA() does return ...but only as a
|
||||
// string of an hex value...
|
||||
GetKeyboardLayoutNameA(kbid_str);
|
||||
if (sscanf(kbid_str, "%x", &kbid) == 0) {
|
||||
uprintf("Could not scan keyboard layout name - falling back to US as default\n");
|
||||
if (sscanf(kbid_str, "%x", &kbid) <= 0) {
|
||||
uprintf("Could not scan keyboard layout name - defaulting to US");
|
||||
kbid = 0x00000409;
|
||||
}
|
||||
uprintf("Windows KBID 0x%08x\n", kbid);
|
||||
|
||||
for (pass=0; pass<3; pass++) {
|
||||
for (pass = 0; pass < 3; pass++) {
|
||||
// Some of these return values are defined in
|
||||
// HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes
|
||||
// Others are picked up in FreeDOS official keyboard layouts, v3.0
|
||||
|
@ -748,12 +748,12 @@ static const char* get_kb(void)
|
|||
} else if (pass == 1) {
|
||||
// If we still didn't get a match, use the system's primary language
|
||||
kbid = PRIMARYLANGID(GetSystemDefaultLangID());
|
||||
uprintf("Unable to match KBID, trying LangID 0x%04x\n", kbid);
|
||||
uprintf("Unable to match KBID, trying LangID 0x%04x", kbid);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
uprintf("Unable to match KBID and LangID - defaulting to US\n");
|
||||
uprintf("Unable to match KBID and LangID - defaulting to US");
|
||||
return "us";
|
||||
}
|
||||
|
||||
|
@ -976,14 +976,14 @@ BOOL SetDOSLocale(const char* path, BOOL bFreeDOS)
|
|||
// First handle the codepage
|
||||
kb = get_kb();
|
||||
// We have a keyboard ID, but that doesn't mean it's supported
|
||||
kbdrv = bFreeDOS?fd_get_kbdrv(kb):ms_get_kbdrv(kb);
|
||||
kbdrv = bFreeDOS ? fd_get_kbdrv(kb) : ms_get_kbdrv(kb);
|
||||
if (kbdrv < 0) {
|
||||
uprintf("Keyboard id '%s' is not supported - falling back to 'us'\n", kb);
|
||||
uprintf("Keyboard id '%s' is not supported - falling back to 'us'", kb);
|
||||
kb = "us";
|
||||
kbdrv = bFreeDOS?fd_get_kbdrv(kb):ms_get_kbdrv(kb); // Always succeeds
|
||||
kbdrv = bFreeDOS ? fd_get_kbdrv(kb) : ms_get_kbdrv(kb); // Always succeeds
|
||||
}
|
||||
assert(kbdrv >= 0);
|
||||
uprintf("Will use DOS keyboard '%s' [%s]\n", kb, kb_to_hr(kb));
|
||||
uprintf("Will use DOS keyboard '%s' [%s]", kb, kb_to_hr(kb));
|
||||
|
||||
// Now get a codepage
|
||||
cp = GetOEMCP();
|
||||
|
@ -994,16 +994,16 @@ BOOL SetDOSLocale(const char* path, BOOL bFreeDOS)
|
|||
(char*)&actual_cp, sizeof(actual_cp)))
|
||||
cp = actual_cp;
|
||||
}
|
||||
egadrv = bFreeDOS?fd_get_ega(cp):ms_get_ega(cp);
|
||||
egadrv = bFreeDOS ? fd_get_ega(cp) : ms_get_ega(cp);
|
||||
if (egadrv == NULL) {
|
||||
// We need to use the fallback CP from the keyboard we got above, as 437 is not always available
|
||||
uprintf("Unable to find an EGA file with codepage %d [%s]\n", cp, cp_to_hr(cp));
|
||||
uprintf("Unable to find an EGA file with codepage %d [%s]", cp, cp_to_hr(cp));
|
||||
cp = kbdrv_data[kbdrv].default_cp;
|
||||
egadrv = bFreeDOS?"ega.cpx":"ega.cpi";
|
||||
egadrv = bFreeDOS ? "ega.cpx" : "ega.cpi";
|
||||
} else if (bFreeDOS) {
|
||||
cp = fd_upgrade_cp(cp);
|
||||
}
|
||||
uprintf("Will use codepage %d [%s]\n", cp, cp_to_hr(cp));
|
||||
uprintf("Will use codepage %d [%s]", cp, cp_to_hr(cp));
|
||||
|
||||
if ((cp == 437) && (strcmp(kb, "us") == 0)) {
|
||||
// Nothing much to do if US/US - just notify in autoexec.bat
|
||||
|
@ -1011,14 +1011,14 @@ BOOL SetDOSLocale(const char* path, BOOL bFreeDOS)
|
|||
static_strcat(filename, "\\AUTOEXEC.BAT");
|
||||
fd = fopen(filename, "w+");
|
||||
if (fd == NULL) {
|
||||
uprintf("Unable to create 'AUTOEXEC.BAT': %s.\n", WindowsErrorString());
|
||||
uprintf("Unable to create 'AUTOEXEC.BAT': %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
fprintf(fd, "@echo off\n");
|
||||
fprintf(fd, "set PATH=.;\\;\\LOCALE\n");
|
||||
fprintf(fd, "echo Using %s keyboard with %s codepage [%d]\n", kb_to_hr("us"), cp_to_hr(437), 437);
|
||||
fclose(fd);
|
||||
uprintf("Successfully wrote 'AUTOEXEC.BAT'\n");
|
||||
uprintf("Successfully wrote 'AUTOEXEC.BAT'");
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@ -1027,7 +1027,7 @@ BOOL SetDOSLocale(const char* path, BOOL bFreeDOS)
|
|||
static_strcat(filename, "\\CONFIG.SYS");
|
||||
fd = fopen(filename, "w+");
|
||||
if (fd == NULL) {
|
||||
uprintf("Unable to create 'CONFIG.SYS': %s.\n", WindowsErrorString());
|
||||
uprintf("Unable to create 'CONFIG.SYS': %s.", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
if (bFreeDOS) {
|
||||
|
@ -1045,14 +1045,14 @@ BOOL SetDOSLocale(const char* path, BOOL bFreeDOS)
|
|||
bFreeDOS?"MENU ":"MENUITEM=", bFreeDOS?')':',', kb_to_hr("us"), cp_to_hr(437), 437);
|
||||
fprintf(fd, "%s", bFreeDOS?"MENU\n12?\n":"[1]\ndevice=\\locale\\display.sys con=(ega,,1)\n[2]\n");
|
||||
fclose(fd);
|
||||
uprintf("Successfully wrote 'CONFIG.SYS'\n");
|
||||
uprintf("Successfully wrote 'CONFIG.SYS'");
|
||||
|
||||
// AUTOEXEC.BAT
|
||||
static_strcpy(filename, path);
|
||||
static_strcat(filename, "\\AUTOEXEC.BAT");
|
||||
fd = fopen(filename, "w+");
|
||||
if (fd == NULL) {
|
||||
uprintf("Unable to create 'AUTOEXEC.BAT': %s.\n", WindowsErrorString());
|
||||
uprintf("Unable to create 'AUTOEXEC.BAT': %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
fprintf(fd, "@echo off\n");
|
||||
|
@ -1066,7 +1066,7 @@ BOOL SetDOSLocale(const char* path, BOOL bFreeDOS)
|
|||
fprintf(fd, "keyb %s,,\\locale\\%s\n", kb, kbdrv_data[kbdrv].name);
|
||||
fprintf(fd, ":2\n");
|
||||
fclose(fd);
|
||||
uprintf("Successfully wrote 'AUTOEXEC.BAT'\n");
|
||||
uprintf("Successfully wrote 'AUTOEXEC.BAT'");
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
550
src/drive.c
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Drive access function calls
|
||||
* Copyright © 2011-2023 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2011-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -74,7 +74,7 @@ PF_TYPE_DECL(NTAPI, NTSTATUS, NtQueryVolumeInformationFile, (HANDLE, PIO_STATUS_
|
|||
RUFUS_DRIVE_INFO SelectedDrive;
|
||||
extern BOOL write_as_esp;
|
||||
extern windows_version_t WindowsVersion;
|
||||
uint64_t partition_offset[PI_MAX];
|
||||
int partition_index[PI_MAX];
|
||||
uint64_t persistence_size = 0;
|
||||
|
||||
/*
|
||||
|
@ -90,13 +90,12 @@ uint64_t persistence_size = 0;
|
|||
BOOL SetAutoMount(BOOL enable)
|
||||
{
|
||||
HANDLE hMountMgr;
|
||||
DWORD size;
|
||||
BOOL ret = FALSE;
|
||||
|
||||
hMountMgr = CreateFileA(MOUNTMGR_DOS_DEVICE_NAME, 0, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
if (hMountMgr == INVALID_HANDLE_VALUE)
|
||||
return FALSE;
|
||||
ret = DeviceIoControl(hMountMgr, IOCTL_MOUNTMGR_SET_AUTO_MOUNT, &enable, sizeof(enable), NULL, 0, &size, NULL);
|
||||
ret = DeviceIoControl(hMountMgr, IOCTL_MOUNTMGR_SET_AUTO_MOUNT, &enable, sizeof(enable), NULL, 0, NULL, NULL);
|
||||
CloseHandle(hMountMgr);
|
||||
return ret;
|
||||
}
|
||||
|
@ -137,7 +136,6 @@ static HANDLE GetHandle(char* Path, BOOL bLockDrive, BOOL bWriteAccess, BOOL bWr
|
|||
{
|
||||
int i;
|
||||
BYTE access_mask = 0;
|
||||
DWORD size;
|
||||
uint64_t EndTime;
|
||||
HANDLE hDrive = INVALID_HANDLE_VALUE;
|
||||
char DevPath[MAX_PATH];
|
||||
|
@ -172,8 +170,7 @@ static HANDLE GetHandle(char* Path, BOOL bLockDrive, BOOL bWriteAccess, BOOL bWr
|
|||
uprintf("Warning: Could not obtain exclusive rights. Retrying with write sharing enabled...");
|
||||
bWriteShare = TRUE;
|
||||
// Try to report the process that is locking the drive
|
||||
// We also use bit 6 as a flag to indicate that SearchProcess was called.
|
||||
access_mask = SearchProcess(DevPath, SEARCH_PROCESS_TIMEOUT, TRUE, TRUE, FALSE) | 0x40;
|
||||
access_mask = GetProcessSearch(SEARCH_PROCESS_TIMEOUT, 0x07, FALSE);
|
||||
}
|
||||
Sleep(DRIVE_ACCESS_TIMEOUT / DRIVE_ACCESS_RETRIES);
|
||||
}
|
||||
|
@ -187,25 +184,23 @@ static HANDLE GetHandle(char* Path, BOOL bLockDrive, BOOL bWriteAccess, BOOL bWr
|
|||
}
|
||||
|
||||
if (bLockDrive) {
|
||||
if (DeviceIoControl(hDrive, FSCTL_ALLOW_EXTENDED_DASD_IO, NULL, 0, NULL, 0, &size, NULL)) {
|
||||
if (DeviceIoControl(hDrive, FSCTL_ALLOW_EXTENDED_DASD_IO, NULL, 0, NULL, 0, NULL, NULL)) {
|
||||
uprintf("I/O boundary checks disabled");
|
||||
}
|
||||
|
||||
EndTime = GetTickCount64() + DRIVE_ACCESS_TIMEOUT;
|
||||
do {
|
||||
if (DeviceIoControl(hDrive, FSCTL_LOCK_VOLUME, NULL, 0, NULL, 0, &size, NULL))
|
||||
if (DeviceIoControl(hDrive, FSCTL_LOCK_VOLUME, NULL, 0, NULL, 0, NULL, NULL))
|
||||
goto out;
|
||||
if (IS_ERROR(FormatStatus)) // User cancel
|
||||
if (IS_ERROR(ErrorStatus)) // User cancel
|
||||
break;
|
||||
Sleep(DRIVE_ACCESS_TIMEOUT / DRIVE_ACCESS_RETRIES);
|
||||
} while (GetTickCount64() < EndTime);
|
||||
// If we reached this section, either we didn't manage to get a lock or the user cancelled
|
||||
uprintf("Could not lock access to %s: %s", Path, WindowsErrorString());
|
||||
// See if we can report the processes are accessing the drive
|
||||
if (!IS_ERROR(FormatStatus) && (access_mask == 0))
|
||||
// Double the search process timeout here, as Windows is so bloated with processes
|
||||
// that 10 seconds has become way too small to get much of any results these days...
|
||||
access_mask = SearchProcess(DevPath, 2 * SEARCH_PROCESS_TIMEOUT, TRUE, TRUE, FALSE);
|
||||
if (!IS_ERROR(ErrorStatus) && (access_mask == 0))
|
||||
access_mask = GetProcessSearch(SEARCH_PROCESS_TIMEOUT, 0x07, FALSE);
|
||||
// Try to continue if the only access rights we saw were for read-only
|
||||
if ((access_mask & 0x07) != 0x01)
|
||||
safe_closehandle(hDrive);
|
||||
|
@ -307,15 +302,14 @@ char* GetLogicalName(DWORD DriveIndex, uint64_t PartitionOffset, BOOL bKeepTrail
|
|||
continue;
|
||||
}
|
||||
|
||||
hDrive = CreateFileA(volume_name, GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_WRITE,
|
||||
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
hDrive = CreateFileWithTimeout(volume_name, GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_WRITE,
|
||||
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL, 3000);
|
||||
if (hDrive == INVALID_HANDLE_VALUE) {
|
||||
suprintf("Could not open GUID volume '%s': %s", volume_name, WindowsErrorString());
|
||||
continue;
|
||||
}
|
||||
|
||||
r = DeviceIoControl(hDrive, IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS, NULL, 0,
|
||||
&DiskExtents, sizeof(DiskExtents), &size, NULL);
|
||||
r = DeviceIoControl(hDrive, IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS, NULL, 0, &DiskExtents, sizeof(DiskExtents), &size, NULL);
|
||||
if ((!r) || (size == 0)) {
|
||||
suprintf("Could not get Disk Extents: %s", r ? "(empty data)" : WindowsErrorString());
|
||||
safe_closehandle(hDrive);
|
||||
|
@ -395,7 +389,7 @@ char* AltGetLogicalName(DWORD DriveIndex, uint64_t PartitionOffset, BOOL bKeepTr
|
|||
if (PartitionOffset == 0) {
|
||||
i = 0;
|
||||
} else if (matching_drive) {
|
||||
for (i = 0; (i < MAX_PARTITIONS) && (PartitionOffset != SelectedDrive.PartitionOffset[i]); i++);
|
||||
for (i = 0; (i < MAX_PARTITIONS) && (PartitionOffset != SelectedDrive.Partition[i].Offset); i++);
|
||||
if (i >= MAX_PARTITIONS) {
|
||||
suprintf("Error: Could not find a partition at offset %lld on this disk", PartitionOffset);
|
||||
goto out;
|
||||
|
@ -431,11 +425,11 @@ char* GetExtPartitionName(DWORD DriveIndex, uint64_t PartitionOffset)
|
|||
if (DriveIndex != SelectedDrive.DeviceNumber)
|
||||
goto out;
|
||||
CheckDriveIndex(DriveIndex);
|
||||
for (i = 0; (i < MAX_PARTITIONS) && (PartitionOffset != SelectedDrive.PartitionOffset[i]); i++);
|
||||
for (i = 0; (i < MAX_PARTITIONS) && (PartitionOffset != SelectedDrive.Partition[i].Offset); i++);
|
||||
if (i >= MAX_PARTITIONS)
|
||||
goto out;
|
||||
static_sprintf(volume_name, "\\\\.\\PhysicalDrive%lu %I64u %I64u", DriveIndex,
|
||||
SelectedDrive.PartitionOffset[i], SelectedDrive.PartitionSize[i]);
|
||||
SelectedDrive.Partition[i].Offset, SelectedDrive.Partition[i].Size);
|
||||
ret = safe_strdup(volume_name);
|
||||
out:
|
||||
return ret;
|
||||
|
@ -1009,7 +1003,7 @@ BOOL WaitForLogical(DWORD DriveIndex, uint64_t PartitionOffset)
|
|||
return TRUE;
|
||||
}
|
||||
free(LogicalPath);
|
||||
if (IS_ERROR(FormatStatus)) // User cancel
|
||||
if (IS_ERROR(ErrorStatus)) // User cancel
|
||||
return FALSE;
|
||||
Sleep(DRIVE_ACCESS_TIMEOUT / DRIVE_ACCESS_RETRIES);
|
||||
} while (GetTickCount64() < EndTime);
|
||||
|
@ -1066,13 +1060,12 @@ int GetDriveNumber(HANDLE hDrive, char* path)
|
|||
BOOL s;
|
||||
int r = -1;
|
||||
|
||||
if (!DeviceIoControl(hDrive, IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS, NULL, 0,
|
||||
&DiskExtents, sizeof(DiskExtents), &size, NULL) || (size <= 0) || (DiskExtents.NumberOfDiskExtents < 1) ) {
|
||||
if (!DeviceIoControl(hDrive, IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS, NULL, 0, &DiskExtents, sizeof(DiskExtents), &size, NULL) ||
|
||||
(size <= 0) || (DiskExtents.NumberOfDiskExtents < 1)) {
|
||||
// DiskExtents are NO_GO (which is the case for external USB HDDs...)
|
||||
s = DeviceIoControl(hDrive, IOCTL_STORAGE_GET_DEVICE_NUMBER, NULL, 0, &DeviceNumber, sizeof(DeviceNumber),
|
||||
&size, NULL);
|
||||
s = DeviceIoControl(hDrive, IOCTL_STORAGE_GET_DEVICE_NUMBER, NULL, 0, &DeviceNumber, sizeof(DeviceNumber), &size, NULL);
|
||||
if ((!s) || (size == 0)) {
|
||||
uprintf("Could not get device number for device %s %s", path, s ? "(empty data)" : WindowsErrorString());
|
||||
uuprintf("Could not get device number for device %s %s", path, s ? "(empty data)" : WindowsErrorString());
|
||||
return -1;
|
||||
}
|
||||
r = (int)DeviceNumber.DeviceNumber;
|
||||
|
@ -1149,10 +1142,13 @@ static BOOL _GetDriveLettersAndType(DWORD DriveIndex, char* drive_letters, UINT*
|
|||
continue;
|
||||
|
||||
static_sprintf(logical_drive, "\\\\.\\%c:", toupper(drive[0]));
|
||||
hDrive = CreateFileA(logical_drive, GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_WRITE,
|
||||
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
// This call appears to freeze on some systems and we don't want to spend more
|
||||
// time than needed waiting for unresponsive drives, so use a 3 seconds timeout.
|
||||
hDrive = CreateFileWithTimeout(logical_drive, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE,
|
||||
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL, 3000);
|
||||
if (hDrive == INVALID_HANDLE_VALUE) {
|
||||
// uprintf("Warning: could not open drive %c: %s", toupper(drive[0]), WindowsErrorString());
|
||||
if (GetLastError() == WAIT_TIMEOUT)
|
||||
uprintf("Warning: Time-out while trying to query drive %c", toupper(drive[0]));
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -1181,8 +1177,7 @@ static BOOL _GetDriveLettersAndType(DWORD DriveIndex, char* drive_letters, UINT*
|
|||
// handling to determine if they are fixed or removable.
|
||||
if ((drives_found == 0) && (drive_type != NULL)) {
|
||||
hPhysical = GetPhysicalHandle(DriveIndex + DRIVE_INDEX_MIN, FALSE, FALSE, FALSE);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX,
|
||||
NULL, 0, geometry, sizeof(geometry), &size, NULL);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, NULL, 0, geometry, sizeof(geometry), &size, NULL);
|
||||
safe_closehandle(hPhysical);
|
||||
if (r && size > 0) {
|
||||
if (DiskGeometry->Geometry.MediaType == FixedMedia)
|
||||
|
@ -1311,10 +1306,10 @@ BOOL IsDriveLetterInUse(const char drive_letter)
|
|||
* Return the drive letter and volume label
|
||||
* If the drive doesn't have a volume assigned, space is returned for the letter
|
||||
*/
|
||||
BOOL GetDriveLabel(DWORD DriveIndex, char* letters, char** label)
|
||||
BOOL GetDriveLabel(DWORD DriveIndex, char* letters, char** label, BOOL bSilent)
|
||||
{
|
||||
HANDLE hPhysical;
|
||||
DWORD size, error;
|
||||
DWORD error;
|
||||
static char VolumeLabel[MAX_PATH + 1] = { 0 };
|
||||
char DrivePath[] = "#:\\", AutorunPath[] = "#:\\autorun.inf", *AutorunLabel = NULL;
|
||||
WCHAR VolumeName[MAX_PATH + 1] = { 0 }, FileSystemName[64];
|
||||
|
@ -1344,13 +1339,13 @@ BOOL GetDriveLabel(DWORD DriveIndex, char* letters, char** label)
|
|||
// In the case of card readers with no card, users can get an annoying popup asking them
|
||||
// to insert media. Use IOCTL_STORAGE_CHECK_VERIFY to prevent this
|
||||
hPhysical = GetPhysicalHandle(DriveIndex, FALSE, FALSE, TRUE);
|
||||
if (DeviceIoControl(hPhysical, IOCTL_STORAGE_CHECK_VERIFY, NULL, 0, NULL, 0, &size, NULL))
|
||||
if (DeviceIoControl(hPhysical, IOCTL_STORAGE_CHECK_VERIFY, NULL, 0, NULL, 0, NULL, NULL))
|
||||
AutorunLabel = get_token_data_file("label", AutorunPath);
|
||||
else if (GetLastError() == ERROR_NOT_READY)
|
||||
uprintf("Ignoring 'autorun.inf' label for drive %c: No media", toupper(letters[0]));
|
||||
suprintf("Ignoring 'autorun.inf' label for drive %c: No media", toupper(letters[0]));
|
||||
safe_closehandle(hPhysical);
|
||||
if (AutorunLabel != NULL) {
|
||||
uprintf("Using 'autorun.inf' label for drive %c: '%s'", toupper(letters[0]), AutorunLabel);
|
||||
suprintf("Using 'autorun.inf' label for drive %c: '%s'", toupper(letters[0]), AutorunLabel);
|
||||
static_strcpy(VolumeLabel, AutorunLabel);
|
||||
safe_free(AutorunLabel);
|
||||
*label = VolumeLabel;
|
||||
|
@ -1386,8 +1381,7 @@ uint64_t GetDriveSize(DWORD DriveIndex)
|
|||
if (hPhysical == INVALID_HANDLE_VALUE)
|
||||
return FALSE;
|
||||
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX,
|
||||
NULL, 0, geometry, sizeof(geometry), &size, NULL);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, NULL, 0, geometry, sizeof(geometry), &size, NULL);
|
||||
safe_closehandle(hPhysical);
|
||||
if (!r || size <= 0)
|
||||
return 0;
|
||||
|
@ -1405,8 +1399,7 @@ BOOL IsMediaPresent(DWORD DriveIndex)
|
|||
BYTE geometry[128];
|
||||
|
||||
hPhysical = GetPhysicalHandle(DriveIndex, FALSE, FALSE, TRUE);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX,
|
||||
NULL, 0, geometry, sizeof(geometry), &size, NULL) && (size > 0);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, NULL, 0, geometry, sizeof(geometry), &size, NULL) && (size > 0);
|
||||
safe_closehandle(hPhysical);
|
||||
return r;
|
||||
}
|
||||
|
@ -1509,8 +1502,7 @@ uint64_t GetEspOffset(DWORD DriveIndex)
|
|||
if (hPhysical == INVALID_HANDLE_VALUE)
|
||||
return FALSE;
|
||||
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX,
|
||||
NULL, 0, layout, sizeof(layout), &size, NULL);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX, NULL, 0, layout, sizeof(layout), &size, NULL);
|
||||
if (!r || size <= 0) {
|
||||
uprintf("Could not get layout for drive 0x%02x: %s", DriveIndex, WindowsErrorString());
|
||||
goto out;
|
||||
|
@ -1538,7 +1530,7 @@ static BOOL StoreEspInfo(GUID* guid)
|
|||
static_sprintf(key_name[0], "ToggleEsp%02u", j);
|
||||
str = ReadSettingStr(key_name[0]);
|
||||
if ((str == NULL) || (str[0] == 0))
|
||||
return WriteSettingStr(key_name[0], GuidToString(guid));
|
||||
return WriteSettingStr(key_name[0], GuidToString(guid, TRUE));
|
||||
}
|
||||
// All slots are used => Move every key down and add to last slot
|
||||
// NB: No, we don't care that the slot we remove may not be the oldest.
|
||||
|
@ -1547,7 +1539,7 @@ static BOOL StoreEspInfo(GUID* guid)
|
|||
static_sprintf(key_name[1], "ToggleEsp%02u", j + 1);
|
||||
WriteSettingStr(key_name[0], ReadSettingStr(key_name[1]));
|
||||
}
|
||||
return WriteSettingStr(key_name[1], GuidToString(guid));
|
||||
return WriteSettingStr(key_name[1], GuidToString(guid, TRUE));
|
||||
}
|
||||
|
||||
static GUID* GetEspGuid(uint8_t index)
|
||||
|
@ -1694,7 +1686,7 @@ BOOL ToggleEsp(DWORD DriveIndex, uint64_t PartitionOffset)
|
|||
}
|
||||
|
||||
DriveLayout->PartitionEntry[esp_index].RewritePartition = TRUE; // Just in case
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_SET_DRIVE_LAYOUT_EX, (BYTE*)DriveLayout, dl_size, NULL, 0, &dl_size, NULL);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_SET_DRIVE_LAYOUT_EX, (BYTE*)DriveLayout, dl_size, NULL, 0, NULL, NULL);
|
||||
if (!r) {
|
||||
uprintf("Could not set drive layout: %s", WindowsErrorString());
|
||||
goto out;
|
||||
|
@ -1868,8 +1860,7 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
|
|||
return FALSE;
|
||||
|
||||
SelectedDrive.nPartitions = 0;
|
||||
memset(SelectedDrive.PartitionOffset, 0, sizeof(SelectedDrive.PartitionOffset));
|
||||
memset(SelectedDrive.PartitionSize, 0, sizeof(SelectedDrive.PartitionSize));
|
||||
memset(SelectedDrive.Partition, 0, sizeof(SelectedDrive.Partition));
|
||||
// Populate the filesystem data
|
||||
FileSystemName[0] = 0;
|
||||
volume_name = GetLogicalName(DriveIndex, 0, TRUE, FALSE);
|
||||
|
@ -1882,8 +1873,7 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
|
|||
if (hPhysical == INVALID_HANDLE_VALUE)
|
||||
return FALSE;
|
||||
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX,
|
||||
NULL, 0, geometry, sizeof(geometry), &size, NULL);
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, NULL, 0, geometry, sizeof(geometry), &size, NULL);
|
||||
if (!r || size <= 0) {
|
||||
suprintf("Could not get geometry for drive 0x%02x: %s", DriveIndex, WindowsErrorString());
|
||||
safe_closehandle(hPhysical);
|
||||
|
@ -1905,8 +1895,7 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
|
|||
suprintf("Cylinders: %" PRIi64 ", Tracks per cylinder: %d, Sectors per track: %d",
|
||||
DiskGeometry->Geometry.Cylinders, DiskGeometry->Geometry.TracksPerCylinder, DiskGeometry->Geometry.SectorsPerTrack);
|
||||
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX,
|
||||
NULL, 0, layout, sizeof(layout), &size, NULL );
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX, NULL, 0, layout, sizeof(layout), &size, NULL );
|
||||
if (!r || size <= 0) {
|
||||
suprintf("Could not get layout for drive 0x%02x: %s", DriveIndex, WindowsErrorString());
|
||||
safe_closehandle(hPhysical);
|
||||
|
@ -1961,8 +1950,8 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
|
|||
}
|
||||
}
|
||||
if (i < MAX_PARTITIONS) {
|
||||
SelectedDrive.PartitionOffset[i] = DriveLayout->PartitionEntry[i].StartingOffset.QuadPart;
|
||||
SelectedDrive.PartitionSize[i] = DriveLayout->PartitionEntry[i].PartitionLength.QuadPart;
|
||||
SelectedDrive.Partition[i].Offset = DriveLayout->PartitionEntry[i].StartingOffset.QuadPart;
|
||||
SelectedDrive.Partition[i].Size = DriveLayout->PartitionEntry[i].PartitionLength.QuadPart;
|
||||
}
|
||||
suprintf(" Type: %s (0x%02x)\r\n Detected File System: %s\r\n"
|
||||
" Size: %s (%lld bytes)\r\n Start Sector: %lld, Boot: %s",
|
||||
|
@ -1987,23 +1976,24 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
|
|||
case PARTITION_STYLE_GPT:
|
||||
SelectedDrive.PartitionStyle = PARTITION_STYLE_GPT;
|
||||
suprintf("Partition type: GPT, NB Partitions: %d", DriveLayout->PartitionCount);
|
||||
suprintf("Disk GUID: %s", GuidToString(&DriveLayout->Gpt.DiskId));
|
||||
suprintf("Disk GUID: %s", GuidToString(&DriveLayout->Gpt.DiskId, TRUE));
|
||||
suprintf("Max parts: %d, Start Offset: %" PRIi64 ", Usable = %" PRIi64 " bytes",
|
||||
DriveLayout->Gpt.MaxPartitionCount, DriveLayout->Gpt.StartingUsableOffset.QuadPart, DriveLayout->Gpt.UsableLength.QuadPart);
|
||||
for (i = 0; i < DriveLayout->PartitionCount; i++) {
|
||||
if (i < MAX_PARTITIONS) {
|
||||
SelectedDrive.PartitionOffset[i] = DriveLayout->PartitionEntry[i].StartingOffset.QuadPart;
|
||||
SelectedDrive.PartitionSize[i] = DriveLayout->PartitionEntry[i].PartitionLength.QuadPart;
|
||||
SelectedDrive.Partition[i].Offset = DriveLayout->PartitionEntry[i].StartingOffset.QuadPart;
|
||||
SelectedDrive.Partition[i].Size = DriveLayout->PartitionEntry[i].PartitionLength.QuadPart;
|
||||
wcscpy(SelectedDrive.Partition[i].Name, DriveLayout->PartitionEntry[i].Gpt.Name);
|
||||
}
|
||||
SelectedDrive.nPartitions++;
|
||||
isUefiNtfs = (wcscmp(DriveLayout->PartitionEntry[i].Gpt.Name, L"UEFI:NTFS") == 0);
|
||||
suprintf("Partition %d%s:\r\n Type: %s", i+1, isUefiNtfs ? " (UEFI:NTFS)" : "",
|
||||
suprintf("Partition %d%s:\r\n Type: %s", i + 1, isUefiNtfs ? " (UEFI:NTFS)" : "",
|
||||
GetGPTPartitionType(&DriveLayout->PartitionEntry[i].Gpt.PartitionType));
|
||||
if (DriveLayout->PartitionEntry[i].Gpt.Name[0] != 0)
|
||||
suprintf(" Name: '%S'", DriveLayout->PartitionEntry[i].Gpt.Name);
|
||||
suprintf(" Detected File System: %s", GetFsName(hPhysical, DriveLayout->PartitionEntry[i].StartingOffset));
|
||||
suprintf(" ID: %s\r\n Size: %s (%" PRIi64 " bytes)\r\n Start Sector: %" PRIi64 ", Attributes: 0x%016" PRIX64,
|
||||
GuidToString(&DriveLayout->PartitionEntry[i].Gpt.PartitionId),
|
||||
GuidToString(&DriveLayout->PartitionEntry[i].Gpt.PartitionId, TRUE),
|
||||
SizeToHumanReadable(DriveLayout->PartitionEntry[i].PartitionLength.QuadPart, TRUE, FALSE),
|
||||
DriveLayout->PartitionEntry[i].PartitionLength,
|
||||
DriveLayout->PartitionEntry[i].StartingOffset.QuadPart / SelectedDrive.SectorSize,
|
||||
|
@ -2062,9 +2052,7 @@ out:
|
|||
*/
|
||||
BOOL UnmountVolume(HANDLE hDrive)
|
||||
{
|
||||
DWORD size;
|
||||
|
||||
if (!DeviceIoControl(hDrive, FSCTL_DISMOUNT_VOLUME, NULL, 0, NULL, 0, &size, NULL)) {
|
||||
if (!DeviceIoControl(hDrive, FSCTL_DISMOUNT_VOLUME, NULL, 0, NULL, 0, NULL, NULL)) {
|
||||
uprintf("Could not unmount drive: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -2219,7 +2207,7 @@ BOOL RemountVolume(char* drive_name, BOOL bSilent)
|
|||
} else {
|
||||
suprintf("Could not remount %s as %c: %s", volume_name, toupper(drive_name[0]), WindowsErrorString());
|
||||
// This will leave the drive inaccessible and must be flagged as an error
|
||||
FormatStatus = ERROR_SEVERITY_ERROR|FAC(FACILITY_STORAGE)|APPERR(ERROR_CANT_REMOUNT_VOLUME);
|
||||
ErrorStatus = RUFUS_ERROR(APPERR(ERROR_CANT_REMOUNT_VOLUME));
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
@ -2232,15 +2220,17 @@ BOOL RemountVolume(char* drive_name, BOOL bSilent)
|
|||
* (especially IOCTL_DISK_UPDATE_PROPERTIES is *USELESS*), and therefore the OS will try to
|
||||
* read the file system data at an old location, even if the partition has just been deleted.
|
||||
*/
|
||||
static BOOL ClearPartition(HANDLE hDrive, LARGE_INTEGER offset, DWORD size)
|
||||
static BOOL ClearPartition(HANDLE hDrive, uint64_t offset, DWORD size)
|
||||
{
|
||||
BOOL r = FALSE;
|
||||
uint8_t* buffer = calloc(size, 1);
|
||||
LARGE_INTEGER li_offset;
|
||||
|
||||
if (buffer == NULL)
|
||||
return FALSE;
|
||||
|
||||
if (!SetFilePointerEx(hDrive, offset, NULL, FILE_BEGIN)) {
|
||||
li_offset.QuadPart = offset;
|
||||
if (!SetFilePointerEx(hDrive, li_offset, NULL, FILE_BEGIN)) {
|
||||
free(buffer);
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -2260,41 +2250,44 @@ static BOOL ClearPartition(HANDLE hDrive, LARGE_INTEGER offset, DWORD size)
|
|||
BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL mbr_uefi_marker, uint8_t extra_partitions)
|
||||
{
|
||||
const char* PartitionTypeName[] = { "MBR", "GPT", "SFD" };
|
||||
const wchar_t *extra_part_name = L"", *main_part_name = write_as_esp ? L"EFI System Partition" : L"Main Data Partition";
|
||||
const LONGLONG main_part_size = write_as_esp ? MAX_ISO_TO_ESP_SIZE * MB : SelectedDrive.DiskSize;
|
||||
const LONGLONG bytes_per_track = ((LONGLONG)SelectedDrive.SectorsPerTrack) * SelectedDrive.SectorSize;
|
||||
const DWORD size_to_clear = MAX_SECTORS_TO_CLEAR * SelectedDrive.SectorSize;
|
||||
uint8_t* buffer;
|
||||
uint64_t last_offset = SelectedDrive.DiskSize;
|
||||
size_t uefi_ntfs_size = 0;
|
||||
CREATE_DISK CreateDisk = {PARTITION_STYLE_RAW, {{0}}};
|
||||
DRIVE_LAYOUT_INFORMATION_EX4 DriveLayoutEx = {0};
|
||||
BOOL r;
|
||||
DWORD i, size, bufsize, pn = 0;
|
||||
LONGLONG main_part_size_in_sectors, extra_part_size_in_tracks = 0;
|
||||
DWORD pi = 0, mi, i, size, bufsize;
|
||||
CREATE_DISK CreateDisk = { PARTITION_STYLE_RAW, { { 0 } } };
|
||||
DRIVE_LAYOUT_INFORMATION_EX4 DriveLayoutEx = { 0 };
|
||||
// Go for a 260 MB sized ESP by default to keep everyone happy, including 4K sector users:
|
||||
// https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/configure-uefigpt-based-hard-drive-partitions
|
||||
// and folks using MacOS: https://github.com/pbatard/rufus/issues/979
|
||||
LONGLONG esp_size = 260 * MB;
|
||||
LONGLONG ClusterSize = (LONGLONG)ComboBox_GetCurItemData(hClusterSize);
|
||||
|
||||
PrintInfoDebug(0, MSG_238, PartitionTypeName[partition_style]);
|
||||
|
||||
if (ClusterSize == 0)
|
||||
ClusterSize = 0x200;
|
||||
|
||||
if (partition_style == PARTITION_STYLE_SFD)
|
||||
// Nothing to do
|
||||
return TRUE;
|
||||
|
||||
if (extra_partitions & XP_UEFI_NTFS) {
|
||||
uefi_ntfs_size = GetResourceSize(hMainInstance, MAKEINTRESOURCEA(IDR_UEFI_NTFS), _RT_RCDATA, "uefi-ntfs.img");
|
||||
if (uefi_ntfs_size == 0)
|
||||
if (uefi_ntfs_size == 0) {
|
||||
uprintf("Could not access embedded 'uefi-ntfs.img'");
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
memset(partition_offset, 0, sizeof(partition_offset));
|
||||
memset(SelectedDrive.PartitionOffset, 0, sizeof(SelectedDrive.PartitionOffset));
|
||||
memset(SelectedDrive.PartitionSize, 0, sizeof(SelectedDrive.PartitionSize));
|
||||
|
||||
// Compute the start offset of our first partition
|
||||
memset(partition_index, 0, sizeof(partition_index));
|
||||
memset(SelectedDrive.Partition, 0, sizeof(SelectedDrive.Partition));
|
||||
|
||||
// Compute the starting offset of the first partition
|
||||
if ((partition_style == PARTITION_STYLE_GPT) || (!IsChecked(IDC_OLD_BIOS_FIXES))) {
|
||||
// Go with the MS 1 MB wastage at the beginning...
|
||||
DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart = MB;
|
||||
SelectedDrive.Partition[pi].Offset = 1 * MB;
|
||||
} else {
|
||||
// Some folks appear to think that 'Fixes for old BIOSes' is some kind of magic
|
||||
// wand and are adamant to try to apply them when creating *MODERN* VHD drives.
|
||||
|
@ -2304,14 +2297,10 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
// CHS sizes that IBM imparted upon us. Long story short, we now align to a
|
||||
// cylinder size that is itself aligned to the cluster size.
|
||||
// If this actually breaks old systems, please send your complaints to IBM.
|
||||
LONGLONG ClusterSize = (LONGLONG)ComboBox_GetCurItemData(hClusterSize);
|
||||
if (ClusterSize == 0)
|
||||
ClusterSize = 0x200;
|
||||
DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart =
|
||||
((bytes_per_track + (ClusterSize - 1)) / ClusterSize) * ClusterSize;
|
||||
SelectedDrive.Partition[pi].Offset = HI_ALIGN_X_TO_Y(bytes_per_track, ClusterSize);
|
||||
// GRUB2 no longer fits in the usual 31½ KB that the above computation provides
|
||||
// so just unconditionally double that size and get on with it.
|
||||
DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart *= 2;
|
||||
SelectedDrive.Partition[pi].Offset *= 2;
|
||||
}
|
||||
|
||||
// Having the ESP up front may help (and is the Microsoft recommended way) but this
|
||||
|
@ -2320,22 +2309,16 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
if (((SelectedDrive.MediaType == FixedMedia) || (WindowsVersion.BuildNumber > 15000)) &&
|
||||
(extra_partitions & XP_ESP)) {
|
||||
assert(partition_style == PARTITION_STYLE_GPT);
|
||||
extra_part_name = L"EFI System Partition";
|
||||
DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart = esp_size;
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_GENERIC_ESP;
|
||||
uprintf("● Creating %S (offset: %lld, size: %s)", extra_part_name, DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart,
|
||||
SizeToHumanReadable(DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart, TRUE, FALSE));
|
||||
IGNORE_RETVAL(CoCreateGuid(&DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionId));
|
||||
wcsncpy(DriveLayoutEx.PartitionEntry[pn].Gpt.Name, extra_part_name, ARRAYSIZE(DriveLayoutEx.PartitionEntry[pn].Gpt.Name));
|
||||
// Zero the first sectors from this partition to avoid file system caching issues
|
||||
if (!ClearPartition(hDrive, DriveLayoutEx.PartitionEntry[pn].StartingOffset, size_to_clear))
|
||||
uprintf("Could not zero %S: %s", extra_part_name, WindowsErrorString());
|
||||
SelectedDrive.PartitionOffset[pn] = DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart;
|
||||
SelectedDrive.PartitionSize[pn] = DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart;
|
||||
partition_offset[PI_ESP] = SelectedDrive.PartitionOffset[pn];
|
||||
pn++;
|
||||
DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart = DriveLayoutEx.PartitionEntry[pn - 1].StartingOffset.QuadPart +
|
||||
DriveLayoutEx.PartitionEntry[pn - 1].PartitionLength.QuadPart;
|
||||
partition_index[PI_ESP] = pi;
|
||||
wcscpy(SelectedDrive.Partition[pi].Name, L"EFI System Partition");
|
||||
SelectedDrive.Partition[pi].Size = esp_size;
|
||||
SelectedDrive.Partition[pi + 1].Offset = SelectedDrive.Partition[pi].Offset + SelectedDrive.Partition[pi].Size;
|
||||
// Align next partition to track and cluster
|
||||
SelectedDrive.Partition[pi + 1].Offset = HI_ALIGN_X_TO_Y(SelectedDrive.Partition[pi + 1].Offset, bytes_per_track);
|
||||
if (ClusterSize % SelectedDrive.SectorSize == 0)
|
||||
SelectedDrive.Partition[pi + 1].Offset = LO_ALIGN_X_TO_Y(SelectedDrive.Partition[pi + 1].Offset, ClusterSize);
|
||||
assert(SelectedDrive.Partition[pi + 1].Offset >= SelectedDrive.Partition[pi].Offset + SelectedDrive.Partition[pi].Size);
|
||||
pi++;
|
||||
// Clear the extra partition we processed
|
||||
extra_partitions &= ~(XP_ESP);
|
||||
}
|
||||
|
@ -2343,182 +2326,166 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
// If required, set the MSR partition (GPT only - must be created before the data part)
|
||||
if (extra_partitions & XP_MSR) {
|
||||
assert(partition_style == PARTITION_STYLE_GPT);
|
||||
extra_part_name = L"Microsoft Reserved Partition";
|
||||
DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart = 128*MB;
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_MICROSOFT_RESERVED;
|
||||
uprintf("● Creating %S (offset: %lld, size: %s)", extra_part_name, DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart,
|
||||
SizeToHumanReadable(DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart, TRUE, FALSE));
|
||||
IGNORE_RETVAL(CoCreateGuid(&DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionId));
|
||||
wcsncpy(DriveLayoutEx.PartitionEntry[pn].Gpt.Name, extra_part_name, ARRAYSIZE(DriveLayoutEx.PartitionEntry[pn].Gpt.Name));
|
||||
// Zero the first sectors from this partition to avoid file system caching issues
|
||||
if (!ClearPartition(hDrive, DriveLayoutEx.PartitionEntry[pn].StartingOffset, size_to_clear))
|
||||
uprintf("Could not zero %S: %s", extra_part_name, WindowsErrorString());
|
||||
SelectedDrive.PartitionOffset[pn] = DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart;
|
||||
SelectedDrive.PartitionSize[pn] = DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart;
|
||||
pn++;
|
||||
DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart = DriveLayoutEx.PartitionEntry[pn-1].StartingOffset.QuadPart +
|
||||
DriveLayoutEx.PartitionEntry[pn-1].PartitionLength.QuadPart;
|
||||
// Clear the extra partition we processed
|
||||
wcscpy(SelectedDrive.Partition[pi].Name, L"Microsoft Reserved Partition");
|
||||
SelectedDrive.Partition[pi].Size = 128 * MB;
|
||||
SelectedDrive.Partition[pi + 1].Offset = SelectedDrive.Partition[pi].Offset + SelectedDrive.Partition[pi].Size;
|
||||
SelectedDrive.Partition[pi + 1].Offset = HI_ALIGN_X_TO_Y(SelectedDrive.Partition[pi + 1].Offset, bytes_per_track);
|
||||
if (ClusterSize % SelectedDrive.SectorSize == 0)
|
||||
SelectedDrive.Partition[pi + 1].Offset = LO_ALIGN_X_TO_Y(SelectedDrive.Partition[pi + 1].Offset, ClusterSize);
|
||||
assert(SelectedDrive.Partition[pi + 1].Offset >= SelectedDrive.Partition[pi].Offset + SelectedDrive.Partition[pi].Size);
|
||||
pi++;
|
||||
extra_partitions &= ~(XP_MSR);
|
||||
}
|
||||
|
||||
// Set our main data partition
|
||||
if (write_as_esp) {
|
||||
// Align ESP to 64 MB while leaving at least 32 MB free space
|
||||
esp_size = max(esp_size, ((((LONGLONG)img_report.projected_size / MB) + 96) / 64) * 64 * MB);
|
||||
main_part_size_in_sectors = (esp_size - DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart) /
|
||||
SelectedDrive.SectorSize;
|
||||
} else {
|
||||
main_part_size_in_sectors = (main_part_size - DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart) /
|
||||
// Need 33 sectors at the end for secondary GPT
|
||||
SelectedDrive.SectorSize - ((partition_style == PARTITION_STYLE_GPT) ? 33 : 0);
|
||||
}
|
||||
// Reserve an entry for the main partition
|
||||
partition_index[PI_MAIN] = pi++;
|
||||
// Shorthand for the main index.
|
||||
mi = partition_index[PI_MAIN];
|
||||
wcscpy(SelectedDrive.Partition[mi].Name, write_as_esp ? L"EFI System Partition" : L"Main Data Partition");
|
||||
|
||||
if (extra_partitions) {
|
||||
// Adjust the size according to extra partitions (which we always align to a track)
|
||||
if (extra_partitions & XP_ESP) {
|
||||
extra_part_name = L"EFI System";
|
||||
extra_part_size_in_tracks = (esp_size + bytes_per_track - 1) / bytes_per_track;
|
||||
} else if (extra_partitions & XP_UEFI_NTFS) {
|
||||
extra_part_name = L"UEFI:NTFS";
|
||||
extra_part_size_in_tracks = (max(MIN_EXTRA_PART_SIZE, uefi_ntfs_size) + bytes_per_track - 1) / bytes_per_track;
|
||||
} else if ((extra_partitions & XP_CASPER)) {
|
||||
// TODO: Should we align these to cluster as well?
|
||||
if (extra_partitions & XP_PERSISTENCE) {
|
||||
assert(persistence_size != 0);
|
||||
extra_part_name = L"Linux Persistence";
|
||||
extra_part_size_in_tracks = persistence_size / bytes_per_track;
|
||||
} else if (extra_partitions & XP_COMPAT) {
|
||||
extra_part_name = L"BIOS Compatibility";
|
||||
extra_part_size_in_tracks = 1; // One track for the extra partition
|
||||
} else {
|
||||
assert(FALSE);
|
||||
partition_index[PI_CASPER] = pi;
|
||||
wcscpy(SelectedDrive.Partition[pi].Name, L"Linux Persistence");
|
||||
SelectedDrive.Partition[pi++].Size = HI_ALIGN_X_TO_Y(persistence_size, bytes_per_track);
|
||||
}
|
||||
if (extra_partitions & XP_ESP) {
|
||||
partition_index[PI_ESP] = pi;
|
||||
wcscpy(SelectedDrive.Partition[pi].Name, L"EFI System Partition");
|
||||
SelectedDrive.Partition[pi++].Size = HI_ALIGN_X_TO_Y(esp_size, bytes_per_track);
|
||||
} else if (extra_partitions & XP_UEFI_NTFS) {
|
||||
partition_index[PI_UEFI_NTFS] = pi;
|
||||
wcscpy(SelectedDrive.Partition[pi].Name, L"UEFI:NTFS");
|
||||
SelectedDrive.Partition[pi++].Size = HI_ALIGN_X_TO_Y(uefi_ntfs_size, bytes_per_track);
|
||||
} else if (extra_partitions & XP_COMPAT) {
|
||||
wcscpy(SelectedDrive.Partition[pi].Name, L"BIOS Compatibility");
|
||||
SelectedDrive.Partition[pi++].Size = bytes_per_track; // One track for the extra partition
|
||||
}
|
||||
// NB: Because we already subtracted the backup GPT size from the main partition size and
|
||||
// this extra partition is indexed on main size, it does not overflow into the backup GPT.
|
||||
main_part_size_in_sectors = ((main_part_size_in_sectors / SelectedDrive.SectorsPerTrack) -
|
||||
extra_part_size_in_tracks) * SelectedDrive.SectorsPerTrack;
|
||||
}
|
||||
if (main_part_size_in_sectors <= 0) {
|
||||
uprintf("Error: Invalid %S size", main_part_name);
|
||||
assert(pi <= MAX_PARTITIONS);
|
||||
if (pi > MAX_PARTITIONS)
|
||||
return FALSE;
|
||||
|
||||
// Compute the offsets of the extra partitions (which we always align to a track)
|
||||
last_offset = SelectedDrive.DiskSize;
|
||||
if (partition_style == PARTITION_STYLE_GPT)
|
||||
last_offset -= 33ULL * SelectedDrive.SectorSize;
|
||||
for (i = pi - 1; i > mi; i--) {
|
||||
assert(SelectedDrive.Partition[i].Size < last_offset);
|
||||
SelectedDrive.Partition[i].Offset = LO_ALIGN_X_TO_Y(last_offset - SelectedDrive.Partition[i].Size, bytes_per_track);
|
||||
last_offset = SelectedDrive.Partition[i].Offset;
|
||||
}
|
||||
|
||||
// With the above, Compute the main partition size (which we align to a track)
|
||||
assert(last_offset > SelectedDrive.Partition[mi].Offset);
|
||||
SelectedDrive.Partition[mi].Size = LO_ALIGN_X_TO_Y(last_offset - SelectedDrive.Partition[mi].Offset, bytes_per_track);
|
||||
// Try to make sure that the main partition size is a multiple of the cluster size
|
||||
// This can be especially important when trying to capture an NTFS partition as FFU, as, when
|
||||
// the NTFS partition is aligned to cluster size, the FFU capture parses the NTFS allocated
|
||||
// map to only record clusters that are in use, whereas, if not aligned, the FFU capture uses
|
||||
// a full sector by sector scan of the NTFS partition and records any non-zero garbage, which
|
||||
// may include garbage leftover data from a previous reformat...
|
||||
if (ClusterSize % SelectedDrive.SectorSize == 0)
|
||||
SelectedDrive.Partition[mi].Size = LO_ALIGN_X_TO_Y(SelectedDrive.Partition[mi].Size, ClusterSize);
|
||||
if (SelectedDrive.Partition[mi].Size <= 0) {
|
||||
uprintf("Error: Invalid %S size", SelectedDrive.Partition[mi].Name);
|
||||
return FALSE;
|
||||
}
|
||||
uprintf("● Creating %S (offset: %lld, size: %s)", main_part_name, DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart,
|
||||
SizeToHumanReadable(main_part_size_in_sectors * SelectedDrive.SectorSize, TRUE, FALSE));
|
||||
// Zero the beginning of this partition to avoid conflicting leftovers
|
||||
if (!ClearPartition(hDrive, DriveLayoutEx.PartitionEntry[pn].StartingOffset, size_to_clear))
|
||||
uprintf("Could not zero %S: %s", main_part_name, WindowsErrorString());
|
||||
|
||||
DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart = main_part_size_in_sectors * SelectedDrive.SectorSize;
|
||||
if (partition_style == PARTITION_STYLE_MBR) {
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.BootIndicator = (boot_type != BT_NON_BOOTABLE);
|
||||
switch (file_system) {
|
||||
case FS_FAT16:
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = 0x0e; // FAT16 LBA
|
||||
break;
|
||||
case FS_NTFS:
|
||||
case FS_EXFAT:
|
||||
case FS_UDF:
|
||||
case FS_REFS:
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = 0x07;
|
||||
break;
|
||||
case FS_EXT2:
|
||||
case FS_EXT3:
|
||||
case FS_EXT4:
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = 0x83;
|
||||
break;
|
||||
case FS_FAT32:
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = 0x0c; // FAT32 LBA
|
||||
break;
|
||||
default:
|
||||
uprintf("Unsupported file system");
|
||||
return FALSE;
|
||||
}
|
||||
} else {
|
||||
if (write_as_esp)
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_GENERIC_ESP;
|
||||
else if (IS_EXT(file_system))
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_LINUX_DATA;
|
||||
else
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_MICROSOFT_DATA;
|
||||
IGNORE_RETVAL(CoCreateGuid(&DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionId));
|
||||
wcsncpy(DriveLayoutEx.PartitionEntry[pn].Gpt.Name, main_part_name, ARRAYSIZE(DriveLayoutEx.PartitionEntry[pn].Gpt.Name));
|
||||
}
|
||||
SelectedDrive.PartitionOffset[pn] = DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart;
|
||||
SelectedDrive.PartitionSize[pn] = DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart;
|
||||
partition_offset[PI_MAIN] = SelectedDrive.PartitionOffset[pn];
|
||||
pn++;
|
||||
|
||||
// Set the optional extra partition
|
||||
if (extra_partitions) {
|
||||
// Should end on a track boundary
|
||||
DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart = DriveLayoutEx.PartitionEntry[pn-1].StartingOffset.QuadPart +
|
||||
DriveLayoutEx.PartitionEntry[pn-1].PartitionLength.QuadPart;
|
||||
DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart = (extra_partitions & XP_UEFI_NTFS) ? uefi_ntfs_size :
|
||||
extra_part_size_in_tracks * bytes_per_track;
|
||||
uprintf("● Creating %S Partition (offset: %lld, size: %s)", extra_part_name, DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart,
|
||||
SizeToHumanReadable(DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart, TRUE, FALSE));
|
||||
SelectedDrive.PartitionOffset[pn] = DriveLayoutEx.PartitionEntry[pn].StartingOffset.QuadPart;
|
||||
SelectedDrive.PartitionSize[pn] = DriveLayoutEx.PartitionEntry[pn].PartitionLength.QuadPart;
|
||||
if (extra_partitions & XP_CASPER)
|
||||
partition_offset[PI_CASPER] = SelectedDrive.PartitionOffset[pn];
|
||||
else if (extra_partitions & XP_ESP)
|
||||
partition_offset[PI_ESP] = SelectedDrive.PartitionOffset[pn];
|
||||
|
||||
if (partition_style == PARTITION_STYLE_GPT) {
|
||||
if (extra_partitions & XP_ESP)
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_GENERIC_ESP;
|
||||
else if (extra_partitions & XP_CASPER)
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_LINUX_DATA;
|
||||
else
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionType = PARTITION_MICROSOFT_DATA;
|
||||
if (extra_partitions & XP_UEFI_NTFS) {
|
||||
// Build the DriveLayoutEx table
|
||||
for (i = 0; i < pi; i++) {
|
||||
uprintf("● Creating %S%s (offset: %lld, size: %s)", SelectedDrive.Partition[i].Name,
|
||||
(wcsstr(SelectedDrive.Partition[i].Name, L"Partition") == NULL) ? " Partition" : "",
|
||||
SelectedDrive.Partition[i].Offset,
|
||||
SizeToHumanReadable(SelectedDrive.Partition[i].Size, TRUE, FALSE));
|
||||
// Zero the first sectors of the partition to avoid file system caching issues
|
||||
if (!ClearPartition(hDrive, SelectedDrive.Partition[i].Offset,
|
||||
(DWORD)MIN(size_to_clear, SelectedDrive.Partition[i].Size)))
|
||||
uprintf("Could not zero %S: %s", SelectedDrive.Partition[i].Name, WindowsErrorString());
|
||||
DriveLayoutEx.PartitionEntry[i].PartitionStyle = partition_style;
|
||||
DriveLayoutEx.PartitionEntry[i].StartingOffset.QuadPart = SelectedDrive.Partition[i].Offset;
|
||||
DriveLayoutEx.PartitionEntry[i].PartitionLength.QuadPart = SelectedDrive.Partition[i].Size;
|
||||
DriveLayoutEx.PartitionEntry[i].PartitionNumber = i + 1;
|
||||
DriveLayoutEx.PartitionEntry[i].RewritePartition = TRUE;
|
||||
if (partition_style == PARTITION_STYLE_MBR) {
|
||||
if (i == mi) {
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.BootIndicator = (boot_type != BT_NON_BOOTABLE);
|
||||
switch (file_system) {
|
||||
case FS_FAT16:
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = 0x0e; // FAT16 LBA
|
||||
break;
|
||||
case FS_NTFS:
|
||||
case FS_EXFAT:
|
||||
case FS_UDF:
|
||||
case FS_REFS:
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = 0x07;
|
||||
break;
|
||||
case FS_EXT2:
|
||||
case FS_EXT3:
|
||||
case FS_EXT4:
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = 0x83;
|
||||
break;
|
||||
case FS_FAT32:
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = 0x0c; // FAT32 LBA
|
||||
break;
|
||||
default:
|
||||
uprintf("Unsupported file system");
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
// May override the the type of main partition if write_as_esp is active
|
||||
if ((wcscmp(SelectedDrive.Partition[i].Name, L"EFI System Partition") == 0) ||
|
||||
(wcscmp(SelectedDrive.Partition[i].Name, L"UEFI:NTFS") == 0))
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = 0xef;
|
||||
else if (wcscmp(SelectedDrive.Partition[i].Name, L"Linux Persistence") == 0)
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = 0x83;
|
||||
else if (wcscmp(SelectedDrive.Partition[i].Name, L"BIOS Compatibility") == 0)
|
||||
DriveLayoutEx.PartitionEntry[i].Mbr.PartitionType = RUFUS_EXTRA_PARTITION_TYPE;
|
||||
} else {
|
||||
assert(partition_style == PARTITION_STYLE_GPT);
|
||||
if (wcscmp(SelectedDrive.Partition[i].Name, L"UEFI:NTFS") == 0) {
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.PartitionType = PARTITION_GENERIC_ESP;
|
||||
// Prevent a drive letter from being assigned to the UEFI:NTFS partition
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.Attributes = GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER;
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.Attributes = GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER;
|
||||
#if !defined(_DEBUG)
|
||||
// Also make the partition read-only for release versions
|
||||
DriveLayoutEx.PartitionEntry[pn].Gpt.Attributes += GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY;
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.Attributes += GPT_BASIC_DATA_ATTRIBUTE_READ_ONLY;
|
||||
#endif
|
||||
}
|
||||
IGNORE_RETVAL(CoCreateGuid(&DriveLayoutEx.PartitionEntry[pn].Gpt.PartitionId));
|
||||
wcsncpy(DriveLayoutEx.PartitionEntry[pn].Gpt.Name, (extra_partitions & XP_ESP) ? L"EFI System Partition" : extra_part_name,
|
||||
ARRAYSIZE(DriveLayoutEx.PartitionEntry[pn].Gpt.Name));
|
||||
} else {
|
||||
if (extra_partitions & (XP_UEFI_NTFS | XP_ESP)) {
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = 0xef;
|
||||
} else if (extra_partitions & XP_CASPER) {
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = 0x83;
|
||||
} else if (extra_partitions & XP_COMPAT) {
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.PartitionType = RUFUS_EXTRA_PARTITION_TYPE;
|
||||
// Set the one track compatibility partition to be all hidden sectors
|
||||
DriveLayoutEx.PartitionEntry[pn].Mbr.HiddenSectors = SelectedDrive.SectorsPerTrack;
|
||||
} else {
|
||||
assert(FALSE);
|
||||
}
|
||||
} else if (wcscmp(SelectedDrive.Partition[i].Name, L"EFI System Partition") == 0)
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.PartitionType = PARTITION_GENERIC_ESP;
|
||||
else if (wcscmp(SelectedDrive.Partition[i].Name, L"Linux Persistence") == 0)
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.PartitionType = PARTITION_LINUX_DATA;
|
||||
else if (wcscmp(SelectedDrive.Partition[i].Name, L"Microsoft Reserved Partition") == 0)
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.PartitionType = PARTITION_MICROSOFT_RESERVED;
|
||||
else
|
||||
DriveLayoutEx.PartitionEntry[i].Gpt.PartitionType = PARTITION_MICROSOFT_DATA;
|
||||
IGNORE_RETVAL(CoCreateGuid(&DriveLayoutEx.PartitionEntry[i].Gpt.PartitionId));
|
||||
wcscpy(DriveLayoutEx.PartitionEntry[i].Gpt.Name, SelectedDrive.Partition[i].Name);
|
||||
}
|
||||
|
||||
// We need to write the UEFI:NTFS partition before we refresh the disk
|
||||
if (extra_partitions & XP_UEFI_NTFS) {
|
||||
uprintf("Writing %S data...", extra_part_name);
|
||||
if (!SetFilePointerEx(hDrive, DriveLayoutEx.PartitionEntry[pn].StartingOffset, NULL, FILE_BEGIN)) {
|
||||
uprintf("Could not set position");
|
||||
return FALSE;
|
||||
}
|
||||
buffer = GetResource(hMainInstance, MAKEINTRESOURCEA(IDR_UEFI_NTFS), _RT_RCDATA, "uefi-ntfs.img", &bufsize, FALSE);
|
||||
if (buffer == NULL) {
|
||||
uprintf("Could not access source image");
|
||||
return FALSE;
|
||||
}
|
||||
if(!WriteFileWithRetry(hDrive, buffer, bufsize, &size, WRITE_RETRIES)) {
|
||||
uprintf("Write error: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
pn++;
|
||||
}
|
||||
|
||||
// Initialize the remaining partition data
|
||||
for (i = 0; i < pn; i++) {
|
||||
DriveLayoutEx.PartitionEntry[i].PartitionNumber = i + 1;
|
||||
DriveLayoutEx.PartitionEntry[i].PartitionStyle = partition_style;
|
||||
DriveLayoutEx.PartitionEntry[i].RewritePartition = TRUE;
|
||||
// We need to write the UEFI:NTFS partition before we refresh the disk
|
||||
if (extra_partitions & XP_UEFI_NTFS) {
|
||||
LARGE_INTEGER li;
|
||||
uprintf("Writing UEFI:NTFS data...", SelectedDrive.Partition[partition_index[PI_UEFI_NTFS]].Name);
|
||||
li.QuadPart = SelectedDrive.Partition[partition_index[PI_UEFI_NTFS]].Offset;
|
||||
if (!SetFilePointerEx(hDrive, li, NULL, FILE_BEGIN)) {
|
||||
uprintf(" Could not set position");
|
||||
return FALSE;
|
||||
}
|
||||
buffer = GetResource(hMainInstance, MAKEINTRESOURCEA(IDR_UEFI_NTFS), _RT_RCDATA,
|
||||
"uefi-ntfs.img", &bufsize, FALSE);
|
||||
if (buffer == NULL) {
|
||||
uprintf(" Could not access source image");
|
||||
return FALSE;
|
||||
}
|
||||
if(!WriteFileWithRetry(hDrive, buffer, bufsize, NULL, WRITE_RETRIES)) {
|
||||
uprintf(" Write error: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
switch (partition_style) {
|
||||
|
@ -2528,7 +2495,7 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
// This helps us reselect the partition scheme option that was used when creating the
|
||||
// drive in Rufus. As far as I can tell, Windows doesn't care much if this signature
|
||||
// isn't unique for USB drives.
|
||||
CreateDisk.Mbr.Signature = mbr_uefi_marker?MBR_UEFI_MARKER:(DWORD)GetTickCount64();
|
||||
CreateDisk.Mbr.Signature = mbr_uefi_marker ? MBR_UEFI_MARKER : (DWORD)GetTickCount64();
|
||||
|
||||
DriveLayoutEx.PartitionStyle = PARTITION_STYLE_MBR;
|
||||
DriveLayoutEx.PartitionCount = 4; // Must be multiple of 4 for MBR
|
||||
|
@ -2547,10 +2514,10 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
CreateDisk.Gpt.MaxPartitionCount = MAX_PARTITIONS;
|
||||
|
||||
DriveLayoutEx.PartitionStyle = PARTITION_STYLE_GPT;
|
||||
DriveLayoutEx.PartitionCount = pn;
|
||||
DriveLayoutEx.PartitionCount = pi;
|
||||
// At the very least, a GPT disk has 34 reserved sectors at the beginning and 33 at the end.
|
||||
DriveLayoutEx.Type.Gpt.StartingUsableOffset.QuadPart = 34 * SelectedDrive.SectorSize;
|
||||
DriveLayoutEx.Type.Gpt.UsableLength.QuadPart = SelectedDrive.DiskSize - (34+33) * SelectedDrive.SectorSize;
|
||||
DriveLayoutEx.Type.Gpt.UsableLength.QuadPart = SelectedDrive.DiskSize - (34 + 33) * SelectedDrive.SectorSize;
|
||||
DriveLayoutEx.Type.Gpt.MaxPartitionCount = MAX_PARTITIONS;
|
||||
DriveLayoutEx.Type.Gpt.DiskId = CreateDisk.Gpt.DiskId;
|
||||
break;
|
||||
|
@ -2558,8 +2525,7 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
|
||||
// If you don't call IOCTL_DISK_CREATE_DISK, the IOCTL_DISK_SET_DRIVE_LAYOUT_EX call will fail
|
||||
size = sizeof(CreateDisk);
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_CREATE_DISK, (BYTE*)&CreateDisk, size, NULL, 0, &size, NULL);
|
||||
if (!r) {
|
||||
if (!DeviceIoControl(hDrive, IOCTL_DISK_CREATE_DISK, (BYTE*)&CreateDisk, size, NULL, 0, NULL, NULL)) {
|
||||
uprintf("Could not reset disk: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -2567,9 +2533,11 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
// "The goggles, they do nothing!"
|
||||
RefreshDriveLayout(hDrive);
|
||||
|
||||
size = sizeof(DriveLayoutEx) - ((partition_style == PARTITION_STYLE_GPT)?((4-pn)*sizeof(PARTITION_INFORMATION_EX)):0);
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_SET_DRIVE_LAYOUT_EX, (BYTE*)&DriveLayoutEx, size, NULL, 0, &size, NULL);
|
||||
if (!r) {
|
||||
size = sizeof(DriveLayoutEx) - ((partition_style == PARTITION_STYLE_GPT) ?
|
||||
((MAX_PARTITIONS - pi) * sizeof(PARTITION_INFORMATION_EX)) : 0);
|
||||
// The DRIVE_LAYOUT_INFORMATION_EX used by Microsoft, with its 1-sized array, is designed to overrun...
|
||||
// coverity[overrun-buffer-arg]
|
||||
if (!DeviceIoControl(hDrive, IOCTL_DISK_SET_DRIVE_LAYOUT_EX, (BYTE*)&DriveLayoutEx, size, NULL, 0, NULL, NULL)) {
|
||||
uprintf("Could not set drive layout: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
|
@ -2583,10 +2551,9 @@ BOOL CreatePartition(HANDLE hDrive, int partition_style, int file_system, BOOL m
|
|||
BOOL RefreshDriveLayout(HANDLE hDrive)
|
||||
{
|
||||
BOOL r;
|
||||
DWORD size;
|
||||
|
||||
// Diskpart does call the following IOCTL this after updating the partition table, so we do too
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_UPDATE_PROPERTIES, NULL, 0, NULL, 0, &size, NULL );
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_UPDATE_PROPERTIES, NULL, 0, NULL, 0, NULL, NULL);
|
||||
if (!r)
|
||||
uprintf("Could not refresh drive layout: %s", WindowsErrorString());
|
||||
return r;
|
||||
|
@ -2596,20 +2563,17 @@ BOOL RefreshDriveLayout(HANDLE hDrive)
|
|||
BOOL InitializeDisk(HANDLE hDrive)
|
||||
{
|
||||
BOOL r;
|
||||
DWORD size;
|
||||
CREATE_DISK CreateDisk = {PARTITION_STYLE_RAW, {{0}}};
|
||||
|
||||
uprintf("Initializing disk...");
|
||||
|
||||
size = sizeof(CreateDisk);
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_CREATE_DISK,
|
||||
(BYTE*)&CreateDisk, size, NULL, 0, &size, NULL );
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_CREATE_DISK, (BYTE*)&CreateDisk, sizeof(CreateDisk), NULL, 0, NULL, NULL);
|
||||
if (!r) {
|
||||
uprintf("Could not delete drive layout: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_UPDATE_PROPERTIES, NULL, 0, NULL, 0, &size, NULL );
|
||||
r = DeviceIoControl(hDrive, IOCTL_DISK_UPDATE_PROPERTIES, NULL, 0, NULL, 0, NULL, NULL);
|
||||
if (!r) {
|
||||
uprintf("Could not refresh drive layout: %s", WindowsErrorString());
|
||||
return FALSE;
|
||||
|
@ -2632,5 +2596,43 @@ const char* GetGPTPartitionType(const GUID* guid)
|
|||
{
|
||||
int i;
|
||||
for (i = 0; (i < ARRAYSIZE(gpt_type)) && !CompareGUID(guid, gpt_type[i].guid); i++);
|
||||
return (i < ARRAYSIZE(gpt_type)) ? gpt_type[i].name : GuidToString(guid);
|
||||
return (i < ARRAYSIZE(gpt_type)) ? gpt_type[i].name : GuidToString(guid, TRUE);
|
||||
}
|
||||
|
||||
/*
|
||||
* Detect Microsoft Dev Drives, which are VHDs consisting of a small MSR followed by a large
|
||||
* (50 GB or more) ReFS partition. See https://learn.microsoft.com/en-us/windows/dev-drive/.
|
||||
* NB: Despite the option being proposed, I have *NOT* been able to create MBR-based Dev Drives.
|
||||
*/
|
||||
BOOL IsMsDevDrive(DWORD DriveIndex)
|
||||
{
|
||||
BOOL r, ret = FALSE;
|
||||
DWORD size = 0;
|
||||
HANDLE hPhysical = INVALID_HANDLE_VALUE;
|
||||
BYTE layout[4096] = { 0 };
|
||||
PDRIVE_LAYOUT_INFORMATION_EX DriveLayout = (PDRIVE_LAYOUT_INFORMATION_EX)(void*)layout;
|
||||
|
||||
hPhysical = GetPhysicalHandle(DriveIndex, FALSE, FALSE, TRUE);
|
||||
if (hPhysical == INVALID_HANDLE_VALUE)
|
||||
goto out;
|
||||
|
||||
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX, NULL, 0, layout, sizeof(layout), &size, NULL);
|
||||
if (!r || size <= 0)
|
||||
goto out;
|
||||
|
||||
if (DriveLayout->PartitionStyle != PARTITION_STYLE_GPT)
|
||||
goto out;
|
||||
if (DriveLayout->PartitionCount != 2)
|
||||
goto out;
|
||||
if (!CompareGUID(&DriveLayout->PartitionEntry[0].Gpt.PartitionType, &PARTITION_MICROSOFT_RESERVED))
|
||||
goto out;
|
||||
if (!CompareGUID(&DriveLayout->PartitionEntry[1].Gpt.PartitionType, &PARTITION_MICROSOFT_DATA))
|
||||
goto out;
|
||||
if (DriveLayout->PartitionEntry[1].PartitionLength.QuadPart < 20 * GB)
|
||||
goto out;
|
||||
ret = (strcmp(GetFsName(hPhysical, DriveLayout->PartitionEntry[1].StartingOffset), "ReFS") == 0);
|
||||
|
||||
out:
|
||||
safe_closehandle(hPhysical);
|
||||
return ret;
|
||||
}
|
||||
|
|
24
src/drive.h
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Drive access function calls
|
||||
* Copyright © 2011-2022 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2011-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -36,12 +36,13 @@
|
|||
#define XP_ESP 0x02
|
||||
#define XP_UEFI_NTFS 0x04
|
||||
#define XP_COMPAT 0x08
|
||||
#define XP_CASPER 0x10
|
||||
#define XP_PERSISTENCE 0x10
|
||||
|
||||
#define PI_MAIN 0
|
||||
#define PI_ESP 1
|
||||
#define PI_CASPER 2
|
||||
#define PI_MAX 3
|
||||
#define PI_UEFI_NTFS 3
|
||||
#define PI_MAX 4
|
||||
|
||||
// The following should match VDS_FSOF_FLAGS as much as possible
|
||||
#define FP_FORCE 0x00000001
|
||||
|
@ -57,7 +58,7 @@
|
|||
#define VDS_RESCAN_REFRESH 0x00000001
|
||||
#define VDS_RESCAN_REENUMERATE 0x00000002
|
||||
|
||||
#define VDS_SET_ERROR(hr) do { if (hr != S_OK) { SetLastError(hr); FormatStatus = ERROR_SEVERITY_ERROR|FAC(FACILITY_STORAGE)|ERROR_GEN_FAILURE; } } while(0)
|
||||
#define VDS_SET_ERROR(hr) do { if (hr != S_OK) { SetLastError((DWORD)hr); ErrorStatus = RUFUS_ERROR(ERROR_GEN_FAILURE); } } while(0)
|
||||
|
||||
#if !defined(__MINGW32__)
|
||||
typedef enum _FSINFOCLASS {
|
||||
|
@ -347,8 +348,7 @@ typedef struct _DRIVE_LAYOUT_INFORMATION_EX4 {
|
|||
} DRIVE_LAYOUT_INFORMATION_EX4, *PDRIVE_LAYOUT_INFORMATION_EX4;
|
||||
|
||||
static __inline BOOL UnlockDrive(HANDLE hDrive) {
|
||||
DWORD size;
|
||||
return DeviceIoControl(hDrive, FSCTL_UNLOCK_VOLUME, NULL, 0, NULL, 0, &size, NULL);
|
||||
return DeviceIoControl(hDrive, FSCTL_UNLOCK_VOLUME, NULL, 0, NULL, 0, NULL, NULL);
|
||||
}
|
||||
#define safe_unlockclose(h) do {if ((h != INVALID_HANDLE_VALUE) && (h != NULL)) {UnlockDrive(h); CloseHandle(h); h = INVALID_HANDLE_VALUE;}} while(0)
|
||||
|
||||
|
@ -362,8 +362,11 @@ typedef struct {
|
|||
MEDIA_TYPE MediaType;
|
||||
int PartitionStyle;
|
||||
int nPartitions; // number of partitions we actually care about
|
||||
uint64_t PartitionOffset[MAX_PARTITIONS];
|
||||
uint64_t PartitionSize[MAX_PARTITIONS];
|
||||
struct {
|
||||
wchar_t Name[36];
|
||||
uint64_t Offset;
|
||||
uint64_t Size;
|
||||
} Partition[MAX_PARTITIONS];
|
||||
int FSType;
|
||||
char proposed_label[16];
|
||||
BOOL has_protective_mbr;
|
||||
|
@ -374,7 +377,7 @@ typedef struct {
|
|||
} ClusterSize[FS_MAX];
|
||||
} RUFUS_DRIVE_INFO;
|
||||
extern RUFUS_DRIVE_INFO SelectedDrive;
|
||||
extern uint64_t partition_offset[PI_MAX];
|
||||
extern int partition_index[PI_MAX];
|
||||
|
||||
BOOL SetAutoMount(BOOL enable);
|
||||
BOOL GetAutoMount(BOOL* enabled);
|
||||
|
@ -396,7 +399,7 @@ UINT GetDriveTypeFromIndex(DWORD DriveIndex);
|
|||
char GetUnusedDriveLetter(void);
|
||||
BOOL IsDriveLetterInUse(const char drive_letter);
|
||||
char RemoveDriveLetters(DWORD DriveIndex, BOOL bUseLast, BOOL bSilent);
|
||||
BOOL GetDriveLabel(DWORD DriveIndex, char* letter, char** label);
|
||||
BOOL GetDriveLabel(DWORD DriveIndex, char* letters, char** label, BOOL bSilent);
|
||||
uint64_t GetDriveSize(DWORD DriveIndex);
|
||||
BOOL IsMediaPresent(DWORD DriveIndex);
|
||||
BOOL AnalyzeMBR(HANDLE hPhysicalDrive, const char* TargetName, BOOL bSilent);
|
||||
|
@ -421,3 +424,4 @@ BOOL RefreshLayout(DWORD DriveIndex);
|
|||
BOOL GetOpticalMedia(IMG_SAVE* img_save);
|
||||
uint64_t GetEspOffset(DWORD DriveIndex);
|
||||
BOOL ToggleEsp(DWORD DriveIndex, uint64_t PartitionOffset);
|
||||
BOOL IsMsDevDrive(DWORD DriveIndex);
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
*
|
||||
* Copyright (C) 1993, 1994, 1995 Theodore Ts'o.
|
||||
* Copyright (C) 1998 Andrey Shedel <andreys@ns.cr.cyco.com>
|
||||
* Copyright (C) 2018-2019 Pete Batard <pete@akeo.ie>
|
||||
* Copyright (C) 2018-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* %Begin-Header%
|
||||
* This file may be redistributed under the terms of the GNU Library
|
||||
|
@ -180,7 +180,7 @@ static __inline unsigned _MapNtStatus(IN NTSTATUS Status)
|
|||
// Return the last Windows Error
|
||||
DWORD ext2_last_winerror(DWORD default_error)
|
||||
{
|
||||
return ERROR_SEVERITY_ERROR | FAC(FACILITY_STORAGE) | (LastWinError ? LastWinError : default_error);
|
||||
return RUFUS_ERROR(LastWinError ? LastWinError : default_error);
|
||||
}
|
||||
|
||||
//
|
||||
|
|
492
src/format.c
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Formatting function calls
|
||||
* Copyright © 2011-2020 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2011-2023 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -111,6 +111,10 @@ typedef BOOLEAN (WINAPI* EnableVolumeCompression_t)(
|
|||
ULONG CompressionFlags // FILE_SYSTEM_PROP_FLAG
|
||||
);
|
||||
|
||||
#define IMG_COMPRESSION_FFU (BLED_COMPRESSION_MAX)
|
||||
#define IMG_COMPRESSION_VHD (BLED_COMPRESSION_MAX + 1)
|
||||
#define IMG_COMPRESSION_VHDX (BLED_COMPRESSION_MAX + 2)
|
||||
|
||||
BOOL WritePBR(HANDLE hLogicalDrive);
|
||||
BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterSize, LPCSTR FSName, LPCSTR Label, DWORD Flags);
|
||||
BOOL FormatExtFs(DWORD DriveIndex, uint64_t PartitionOffset, DWORD BlockSize, LPCSTR FSName, LPCSTR Label, DWORD Flags);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* extfs formatting
|
||||
* Copyright © 2019-2021 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2019-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -178,7 +178,7 @@ const char* error_message(errcode_t error_code)
|
|||
if ((error_code > EXT2_ET_BASE) && error_code < (EXT2_ET_BASE + 1000)) {
|
||||
static_sprintf(error_string, "Unknown ext2fs error %ld (EXT2_ET_BASE + %ld)", error_code, error_code - EXT2_ET_BASE);
|
||||
} else {
|
||||
SetLastError((FormatStatus == 0) ? (ERROR_SEVERITY_ERROR | FAC(FACILITY_STORAGE) | (error_code & 0xFFFF)) : FormatStatus);
|
||||
SetLastError((ErrorStatus == 0) ? RUFUS_ERROR(error_code & 0xFFFF) : ErrorStatus);
|
||||
static_sprintf(error_string, "%s", WindowsErrorString());
|
||||
}
|
||||
return error_string;
|
||||
|
@ -196,7 +196,7 @@ errcode_t ext2fs_print_progress(int64_t cur_value, int64_t max_value)
|
|||
last_value = cur_value;
|
||||
uprintfs("+");
|
||||
}
|
||||
return IS_ERROR(FormatStatus) ? EXT2_ET_CANCEL_REQUESTED : 0;
|
||||
return IS_ERROR(ErrorStatus) ? EXT2_ET_CANCEL_REQUESTED : 0;
|
||||
}
|
||||
|
||||
const char* GetExtFsLabel(DWORD DriveIndex, uint64_t PartitionOffset)
|
||||
|
@ -223,7 +223,7 @@ const char* GetExtFsLabel(DWORD DriveIndex, uint64_t PartitionOffset)
|
|||
|
||||
#define TEST_IMG_PATH "\\??\\C:\\tmp\\disk.img"
|
||||
#define TEST_IMG_SIZE 4000 // Size in MB
|
||||
#define SET_EXT2_FORMAT_ERROR(x) if (!IS_ERROR(FormatStatus)) FormatStatus = ext2_last_winerror(x)
|
||||
#define SET_EXT2_FORMAT_ERROR(x) if (!IS_ERROR(ErrorStatus)) ErrorStatus = ext2_last_winerror(x)
|
||||
|
||||
BOOL FormatExtFs(DWORD DriveIndex, uint64_t PartitionOffset, DWORD BlockSize, LPCSTR FSName, LPCSTR Label, DWORD Flags)
|
||||
{
|
||||
|
@ -273,7 +273,7 @@ BOOL FormatExtFs(DWORD DriveIndex, uint64_t PartitionOffset, DWORD BlockSize, LP
|
|||
volume_name = GetExtPartitionName(DriveIndex, PartitionOffset);
|
||||
#endif
|
||||
if ((volume_name == NULL) | (strlen(FSName) != 4) || (strncmp(FSName, "ext", 3) != 0)) {
|
||||
FormatStatus = ERROR_SEVERITY_ERROR | FAC(FACILITY_STORAGE) | ERROR_INVALID_PARAMETER;
|
||||
ErrorStatus = RUFUS_ERROR(ERROR_INVALID_PARAMETER);
|
||||
goto out;
|
||||
}
|
||||
if (strchr(volume_name, ' ') != NULL)
|
||||
|
@ -491,7 +491,10 @@ BOOL FormatExtFs(DWORD DriveIndex, uint64_t PartitionOffset, DWORD BlockSize, LP
|
|||
|
||||
// Finally we can call close() to get the file system gets created
|
||||
r = ext2fs_close(ext2fs);
|
||||
if (r != 0) {
|
||||
if (r == 0) {
|
||||
// Make sure ext2fs isn't freed twice
|
||||
ext2fs = NULL;
|
||||
} else {
|
||||
SET_EXT2_FORMAT_ERROR(ERROR_WRITE_FAULT);
|
||||
uprintf("Could not create %s volume: %s", FSName, error_message(r));
|
||||
goto out;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Large FAT32 formatting
|
||||
* Copyright © 2007-2009 Tom Thornhill/Ridgecrop
|
||||
* Copyright © 2011-2022 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2011-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -38,9 +38,7 @@
|
|||
#include "msapi_utf8.h"
|
||||
#include "localization.h"
|
||||
|
||||
#define die(msg, err) do { uprintf(msg); \
|
||||
FormatStatus = ERROR_SEVERITY_ERROR|FAC(FACILITY_STORAGE)|err; \
|
||||
goto out; } while(0)
|
||||
#define die(msg, err) do { uprintf(msg); ErrorStatus = RUFUS_ERROR(err); goto out; } while(0)
|
||||
|
||||
extern BOOL write_as_esp;
|
||||
|
||||
|
@ -175,6 +173,7 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
DWORD BytesPerSect = 0;
|
||||
DWORD SectorsPerCluster = 0;
|
||||
DWORD TotalSectors = 0;
|
||||
DWORD AlignSectors = 0;
|
||||
DWORD SystemAreaSize = 0;
|
||||
DWORD UserAreaSize = 0;
|
||||
ULONGLONG qTotalSectors = 0;
|
||||
|
@ -190,7 +189,7 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
ULONGLONG FatNeeded, ClusterCount;
|
||||
|
||||
if (safe_strncmp(FSName, "FAT", 3) != 0) {
|
||||
FormatStatus = ERROR_SEVERITY_ERROR | FAC(FACILITY_STORAGE) | ERROR_INVALID_PARAMETER;
|
||||
ErrorStatus = RUFUS_ERROR(ERROR_INVALID_PARAMETER);
|
||||
goto out;
|
||||
}
|
||||
PrintInfoDebug(0, MSG_222, "Large FAT32");
|
||||
|
@ -201,7 +200,7 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
hLogicalVolume = write_as_esp ?
|
||||
AltGetLogicalHandle(DriveIndex, PartitionOffset, TRUE, TRUE, FALSE) :
|
||||
GetLogicalHandle(DriveIndex, PartitionOffset, TRUE, TRUE, FALSE);
|
||||
if (IS_ERROR(FormatStatus))
|
||||
if (IS_ERROR(ErrorStatus))
|
||||
goto out;
|
||||
if ((hLogicalVolume == INVALID_HANDLE_VALUE) || (hLogicalVolume == NULL))
|
||||
die("Invalid logical volume handle", ERROR_INVALID_HANDLE);
|
||||
|
@ -221,7 +220,7 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
}
|
||||
if (dgDrive.BytesPerSector < 512)
|
||||
dgDrive.BytesPerSector = 512;
|
||||
if (IS_ERROR(FormatStatus)) goto out;
|
||||
if (IS_ERROR(ErrorStatus)) goto out;
|
||||
if (!DeviceIoControl (hLogicalVolume, IOCTL_DISK_GET_PARTITION_INFO, NULL, 0, &piDrive,
|
||||
sizeof(piDrive), &cbRet, NULL)) {
|
||||
if (!DeviceIoControl (hLogicalVolume, IOCTL_DISK_GET_PARTITION_INFO_EX, NULL, 0, &xpiDrive,
|
||||
|
@ -235,7 +234,7 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
piDrive.PartitionLength.QuadPart = xpiDrive.PartitionLength.QuadPart;
|
||||
piDrive.HiddenSectors = (DWORD)(xpiDrive.StartingOffset.QuadPart / dgDrive.BytesPerSector);
|
||||
}
|
||||
if (IS_ERROR(FormatStatus)) goto out;
|
||||
if (IS_ERROR(ErrorStatus)) goto out;
|
||||
|
||||
BytesPerSect = dgDrive.BytesPerSector;
|
||||
|
||||
|
@ -295,7 +294,6 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
SectorsPerCluster = ClusterSize / BytesPerSect;
|
||||
|
||||
pFAT32BootSect->bSecPerClus = (BYTE)SectorsPerCluster;
|
||||
pFAT32BootSect->wRsvdSecCnt = (WORD)ReservedSectCount;
|
||||
pFAT32BootSect->bNumFATs = (BYTE)NumFATs;
|
||||
pFAT32BootSect->wRootEntCnt = 0;
|
||||
pFAT32BootSect->wTotSec16 = 0;
|
||||
|
@ -310,6 +308,13 @@ BOOL FormatLargeFAT32(DWORD DriveIndex, uint64_t PartitionOffset, DWORD ClusterS
|
|||
FatSize = GetFATSizeSectors(pFAT32BootSect->dTotSec32, pFAT32BootSect->wRsvdSecCnt,
|
||||
pFAT32BootSect->bSecPerClus, pFAT32BootSect->bNumFATs, BytesPerSect);
|
||||
|
||||
// Update reserved sector count so that the start of data region is aligned to a MB boundary
|
||||
SystemAreaSize = ReservedSectCount + NumFATs * FatSize;
|
||||
AlignSectors = (1 * MB) / BytesPerSect;
|
||||
SystemAreaSize = (SystemAreaSize + AlignSectors - 1) / AlignSectors * AlignSectors;
|
||||
ReservedSectCount = SystemAreaSize - NumFATs * FatSize;
|
||||
|
||||
pFAT32BootSect->wRsvdSecCnt = (WORD)ReservedSectCount;
|
||||
pFAT32BootSect->dFATSz32 = FatSize;
|
||||
pFAT32BootSect->wExtFlags = 0;
|
||||
pFAT32BootSect->wFSVer = 0;
|
||||
|
|
|
@ -269,8 +269,6 @@ static vidpid_score_t vidpid_score[] = {
|
|||
{ 0x05ac, 0x8405, -20},
|
||||
{ 0x05ac, 0x8406, -20},
|
||||
{ 0x05ac, 0x8407, -20},
|
||||
// No idea who these guys are. They don't exist in usb.ids.
|
||||
{ 0x6557, 0x0021, -5},
|
||||
// Prolific exceptions
|
||||
{ 0x067b, 0x2506, -20 }, // 8 GB Micro Hard Drive
|
||||
{ 0x067b, 0x2517, -20 }, // 1 GB UFD
|
||||
|
@ -303,4 +301,8 @@ static vidpid_score_t vidpid_score[] = {
|
|||
{ 0x18a5, 0x3327, -20 },
|
||||
// More Innostor
|
||||
{ 0x1f75, 0x0917, -10 }, // Intenso Speed Line USB Device
|
||||
// ??? (https://github.com/pbatard/rufus/issues/2247)
|
||||
{ 0x23a9, 0xef18, -10 },
|
||||
// No idea who these guys are. They don't exist in usb.ids.
|
||||
{ 0x6557, 0x0021, -5 },
|
||||
};
|
||||
|
|
21
src/icon.c
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Rufus: The Reliable USB Formatting Utility
|
||||
* Extract icon from executable and set autorun.inf
|
||||
* Copyright © 2012-2021 Pete Batard <pete@akeo.ie>
|
||||
* Copyright © 2012-2024 Pete Batard <pete@akeo.ie>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
|
@ -95,12 +95,15 @@ BOOL ExtractAppIcon(const char* path, BOOL bSilent)
|
|||
HRSRC res;
|
||||
WORD i;
|
||||
BYTE* res_data;
|
||||
DWORD res_size, Size, offset;
|
||||
DWORD res_size, offset;
|
||||
HANDLE hFile = INVALID_HANDLE_VALUE;
|
||||
BOOL r = FALSE;
|
||||
GRPICONDIR* icondir;
|
||||
|
||||
icondir = (GRPICONDIR*)GetResource(hMainInstance, MAKEINTRESOURCEA(IDI_ICON), _RT_GROUP_ICON, "icon", &res_size, FALSE);
|
||||
assert(icondir != NULL && icondir->idCount <= 64);
|
||||
if (icondir == NULL || icondir->idCount > 64)
|
||||
goto out;
|
||||
|
||||
hFile = CreateFileU(path, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ,
|
||||
NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
|
@ -110,34 +113,34 @@ BOOL ExtractAppIcon(const char* path, BOOL bSilent)
|
|||
}
|
||||
|
||||
// Write .ico header
|
||||
if (!WriteFileWithRetry(hFile, icondir, 3*sizeof(WORD), &Size, WRITE_RETRIES)) {
|
||||
if (!WriteFileWithRetry(hFile, icondir, 3 * sizeof(WORD), NULL, WRITE_RETRIES)) {
|
||||
uprintf("Could not write icon header: %s.", WindowsErrorString());
|
||||
goto out;
|
||||
}
|
||||
|
||||
// Write icon data
|
||||
offset = 3*sizeof(WORD) + icondir->idCount*sizeof(ICONDIRENTRY);
|
||||
for (i=0; i<icondir->idCount; i++) {
|
||||
offset = 3 * sizeof(WORD) + icondir->idCount * sizeof(ICONDIRENTRY);
|
||||
for (i = 0; i < icondir->idCount; i++) {
|
||||
// Write the common part of ICONDIRENTRY
|
||||
if (!WriteFileWithRetry(hFile, &icondir->idEntries[i], sizeof(GRPICONDIRENTRY)-sizeof(WORD), &Size, WRITE_RETRIES)) {
|
||||
if (!WriteFileWithRetry(hFile, &icondir->idEntries[i], sizeof(GRPICONDIRENTRY)-sizeof(WORD), NULL, WRITE_RETRIES)) {
|
||||
uprintf("Could not write ICONDIRENTRY[%d]: %s.", i, WindowsErrorString());
|
||||
goto out;
|
||||
}
|
||||
res = FindResourceA(hMainInstance, MAKEINTRESOURCEA(icondir->idEntries[i].nID), _RT_ICON);
|
||||
// Write the DWORD offset
|
||||
if (!WriteFileWithRetry(hFile, &offset, sizeof(offset), &Size, WRITE_RETRIES)) {
|
||||
if (!WriteFileWithRetry(hFile, &offset, sizeof(offset), NULL, WRITE_RETRIES)) {
|
||||
uprintf("Could not write ICONDIRENTRY[%d] offset: %s.", i, WindowsErrorString());
|
||||
goto out;
|
||||
}
|
||||
offset += SizeofResource(NULL, res);
|
||||
}
|
||||
for (i=0; i<icondir->idCount; i++) {
|
||||
for (i = 0; i < icondir->idCount; i++) {
|
||||
// Write icon data
|
||||
res = FindResourceA(hMainInstance, MAKEINTRESOURCEA(icondir->idEntries[i].nID), _RT_ICON);
|
||||
res_handle = LoadResource(NULL, res);
|
||||
res_data = (BYTE*)LockResource(res_handle);
|
||||
res_size = SizeofResource(NULL, res);
|
||||
if (!WriteFileWithRetry(hFile, res_data, res_size, &Size, WRITE_RETRIES)) {
|
||||
if (!WriteFileWithRetry(hFile, res_data, res_size, NULL, WRITE_RETRIES)) {
|
||||
uprintf("Could not write icon data #%d: %s.", i, WindowsErrorString());
|
||||
goto out;
|
||||
}
|
||||
|
|