Các gói .appx và .appbundle trong Windows 11 là gì và chúng hoạt động như thế nào?

Cập nhật lần cuối: 14/05/2026
tác giả: Isaac
  • Các gói .appx và .appxbundle là các định dạng hiện đại để phân phối và cài đặt ứng dụng UWP trên Windows 10 và 11, thay thế nhiều trình cài đặt truyền thống.
  • Microsoft Store tự động phân loại và cung cấp gói phần mềm phù hợp nhất cho từng thiết bị, quản lý các phiên bản, dòng thiết bị và bản cập nhật.
  • DISM và PowerShell cho phép bạn thêm, liệt kê, tối ưu hóa hoặc xóa các gói .appx/.appxbundle trong ảnh hệ thống ngoại tuyến và trực tuyến, với khả năng kiểm soát phụ thuộc và dữ liệu tùy chỉnh.
  • Việc cài đặt APPX bên ngoài Store là có thể, nhưng đi kèm với đó là những hạn chế về bản quyền, rủi ro bảo mật và các vấn đề tương thích tiềm ẩn so với việc sử dụng cửa hàng chính thức.

các gói appx và appxbundle trong Windows 11

Nếu bạn sử dụng Windows 10 hoặc Windows 11, sớm muộn gì bạn cũng sẽ bắt gặp các tệp .appx và .appxbundle khét tiếng . Chúng có thể xuất hiện khi bạn tải xuống ứng dụng UWP, duyệt Microsoft Store hoặc làm theo hướng dẫn để cài đặt ứng dụng từ bên ngoài cửa hàng. Và tất nhiên, bạn sẽ tự hỏi chúng là gì, dùng để làm gì và làm thế nào để cài đặt chúng mà không gây ra lỗi.

Các định dạng này thay thế các trình cài đặt .exe hoặc .msi truyền thống trong hệ sinh thái ứng dụng hiện đại của Microsoft . Những tên gọi này còn mang nhiều ý nghĩa hơn bạn tưởng: mô hình bảo mật khác biệt , cách cập nhật khác, tích hợp với Microsoft Store, tùy chọn triển khai hàng loạt trong doanh nghiệp, và thậm chí cả các lệnh PowerShell và DISM cụ thể để quản lý chúng. Hãy cùng tìm hiểu kỹ hơn để bạn có thể sử dụng chúng một cách dễ dàng.

Các gói .appx và .appxbundle trong Windows 10 và Windows 11 là gì?

Tệp có phần mở rộng .appx là gói cài đặt tiêu chuẩn cho các ứng dụng UWP (Universal Windows Platform) được giới thiệu cùng với Windows 8 và Windows Phone 8.1. Đó là một vùng chứa được nén tuân theo đặc tả OPC (Open Packaging Convention) và nhóm các thành phần cần thiết để cài đặt ứng dụng vào một tệp duy nhất: các tệp nhị phân, tài nguyên, tệp kê khai, quyền, mô tả, biểu tượng, v.v., tương tự như tệp .msi , nhưng được thiết kế cho mô hình ứng dụng mới của Microsoft.

Tệp .appx bao gồm một tệp quan trọng, AppxManifest.xml , định nghĩa tên gói, mã định danh ứng dụng, phiên bản, kiến ​​trúc được hỗ trợ, các phụ thuộc cần thiết, ngôn ngữ, khả năng (quyền hạn) và các cài đặt bổ sung khác. Điều này cho phép Windows cài đặt ứng dụng mà không cần trình hướng dẫn "Tiếp theo, Tiếp theo, Hoàn tất", giảm thiểu các lỗi thường gặp trong các trình cài đặt Win32 truyền thống.

Ngược lại, .appxbundle là một "gói" hoặc nhóm nhiều gói và tài nguyên .appx thành một tệp duy nhất. Nói cách khác, đó là một tập hợp được tổ chức các gói ứng dụng và tài nguyên (ngôn ngữ, tỷ lệ giao diện, DirectX, v.v.) được sử dụng cùng nhau để mang lại trải nghiệm tối ưu trên mỗi thiết bị, đồng thời giảm thiểu dung lượng ổ đĩa mà ứng dụng chiếm dụng trên mỗi máy tính cụ thể.

Mục tiêu của các định dạng này là cho phép cùng một ứng dụng được phân phối và chạy đồng nhất trên PC, máy tính bảng, điện thoại di động và các thiết bị khác tương thích với Windows 10 và Windows 11, giải quyết các vấn đề mà trình cài đặt truyền thống gặp phải trong môi trường di động hoặc hạn chế. Mọi thứ được kiểm soát chặt chẽ hơn: đường dẫn riêng biệt, quyền khai báo, cài đặt và gỡ cài đặt sạch sẽ, và khả năng cung cấp ứng dụng ở cấp độ ảnh hệ thống.

Sự khác biệt thực tế giữa .appx và .appxbundle

Sự khác biệt giữa hai định dạng này rất quan trọng, đặc biệt nếu bạn quản lý nhóm hoặc cài đặt ứng dụng từ bên ngoài Microsoft Store. Tệp .appx thường chứa ứng dụng cho một kiến ​​trúc cụ thể (ví dụ: x64) và một bộ tài nguyên cơ bản, trong khi gói .appxbundle bao gồm nhiều phiên bản của ứng dụng đó cùng với các tài nguyên bổ sung cho các trường hợp khác nhau.

Trong một tệp .appxbundle, bạn có thể tìm thấy, ví dụ, gói chính cho x86, một gói khác cho x64, một gói khác cho ARM, và nhiều gói tài nguyên ngôn ngữ hoặc mở rộng khác nhau. Windows sẽ chỉ chọn các gói phù hợp trong quá trình cài đặt, dựa trên cấu hình thiết bị và hệ điều hành. Điều này giúp giảm băng thông và dung lượng ổ đĩa vì người dùng không cần tải xuống các ngôn ngữ hoặc kiến ​​trúc mà họ không sử dụng.

Cách tiếp cận này rất quan trọng đối với quy trình xuất bản ứng dụng trên Microsoft Store. Khi bạn tải lên một ứng dụng, bạn có thể tải lên các tệp .msix, .msixbundle, .appx, .appxupload và .appxbundle ; sau đó Store sẽ phân loại và quyết định gói cụ thể nào phù hợp nhất với từng dòng thiết bị và phiên bản Windows, dựa trên kiến ​​trúc, số phiên bản gói và các siêu dữ liệu khác.

Trong môi trường được quản lý bằng DISM (Deployment Image Servicing and Management), hành vi cũng thay đổi: khi bạn thêm một tệp .appxbundle vào ảnh hệ thống , chỉ những gói tài nguyên phù hợp với ảnh đó mới được tích hợp, như chúng ta sẽ thấy sau này khi thảo luận về các gói ngôn ngữ và tài nguyên mở rộng/DXFL.

Cách Microsoft Store quản lý các gói APPX và APPXBUNDLE

Microsoft Store là cổng chính thức cho hầu hết các ứng dụng này. Khi nhà phát triển gửi một ứng dụng, họ tải lên tất cả các tệp cài đặt liên quan—.msix, .msixupload, .msixbundle, .appx, .appxupload và/hoặc .appxbundle—vào mục Gói (Packages) trên bảng điều khiển xuất bản. Nhà phát triển có thể tải lên nhiều gói cho cùng một ứng dụng, và Store sẽ quyết định cung cấp gói nào cho mỗi khách hàng khi tải xuống.

Sau khi tải lên, bảng điều khiển xuất bản sẽ hiển thị một bảng cho thấy các gói nào sẽ được phân phối cho từng dòng thiết bị Windows 10/11 (máy tính để bàn, thiết bị di động, Xbox, HoloLens, Surface Hub, IoT, v.v.), được sắp xếp theo phân loại phiên bản. Từ đó, bạn cũng có thể chọn dòng thiết bị nào ứng dụng sẽ khả dụng và liệu có cho phép sử dụng ứng dụng trên các dòng thiết bị khác khi chúng được phát hành hay không.

Nếu Store phát hiện lỗi trong quá trình xác thực gói (ví dụ: vấn đề về phiên bản, các phụ thuộc được định nghĩa không rõ ràng hoặc vấn đề về chữ ký), nó sẽ hiển thị các thông báo cảnh báo để nhà phát triển có thể khắc phục sự cố, xóa gói xung đột và tải lên lại. Nó cũng có thể gắn cờ các gói trùng lặp khi các phiên bản mới hơn phục vụ cùng một nhóm khách hàng; trong trường hợp đó, nó sẽ đề xuất tự động xóa chúng khỏi bản gửi.

Phần "Tính khả dụng của dòng thiết bị" cho phép bạn chọn hoặc bỏ chọn các ô để quyết định xem ứng dụng có thể truy cập được trên Windows 10/11 Desktop, Xbox, Windows 10 Team, Windows 10 Holographic, v.v. Ví dụ, nếu bạn tải lên các gói dành riêng cho dòng Windows.Desktop, thì chỉ hộp dành cho máy tính để bàn sẽ được kích hoạt và bạn sẽ không thể kích hoạt các hộp khác cho cùng các tệp nhị phân đó.

Các gói Windows Universal linh hoạt hơn: chúng có thể chạy trên hầu hết mọi thiết bị Windows 10 hoặc 11 (bao gồm cả Xbox One). Theo mặc định, Store cung cấp chúng cho tất cả các dòng máy đủ điều kiện ngoại trừ Xbox, vốn yêu cầu đáp ứng các điều kiện đặc biệt (ví dụ: là trò chơi thuộc Chương trình Xbox Live Creators hoặc vượt qua quy trình phê duyệt cụ thể).

Xuất bản, phiên bản và phân loại gói

Khi phát hành bản cập nhật cho một ứng dụng hiện có, Microsoft Store cung cấp các tùy chọn nâng cao như triển khai dần dần . Điều này cho phép bạn xác định tỷ lệ phần trăm người dùng sẽ nhận được bản cập nhật mới và phân tích hành vi cũng như dữ liệu phân tích của họ trước khi triển khai bản cập nhật cho 100% người dùng đã cài đặt ứng dụng.

Các bản cập nhật này cũng cho phép bạn đánh dấu một bản cập nhật là bắt buộc . Nếu nhà phát triển đã tích hợp API Windows.Services.Store, ứng dụng có thể kiểm tra các phiên bản mới và buộc tải xuống và cài đặt các gói cập nhật bắt đầu từ một ngày và giờ cụ thể, với điều kiện thiết bị đang chạy ít nhất Windows 10 phiên bản 1607.

Về mặt nội bộ, Store xếp hạng các gói dựa trên số phiên bản của chúng. Nếu có nhiều gói tương thích cho một dòng thiết bị cụ thể (ví dụ: Package_A.appxupload và Package_B.appxupload), bảng xếp hạng sẽ hiển thị thứ tự chúng được phục vụ. Gói có thứ hạng 1 được ưu tiên; nếu thiết bị của người dùng không thể chạy gói đó (do kiến ​​trúc, phiên bản hệ thống tối thiểu, v.v.), Store sẽ thử gói tiếp theo trong danh sách.

  Cách truy cập và quản lý ổ C trong Windows 11

Nếu không có gói nào trong bộ đáp ứng yêu cầu của thiết bị (ví dụ: do thuộc tính minVersion cao hơn phiên bản Windows đã cài đặt), người dùng sẽ không thể tải xuống hoặc cài đặt ứng dụng đó trên máy tính đó. Điều này giúp ngăn ngừa các lỗi cài đặt hoặc hành vi không nhất quán.

Quản lý gói cũng bao gồm cảnh báo về việc xóa các gói dư thừa khi có phiên bản mới hơn, bao gồm tất cả các máy khách đã nhận các gói cũ trước đó. Từ bảng điều khiển, bạn có thể xóa các gói này riêng lẻ hoặc sử dụng tùy chọn tự động để xóa tất cả các gói dư thừa trong một bước duy nhất.

DISM là gì và nó hoạt động như thế nào với các gói .appx và .appxbundle?

DISM (Deployment Image Servicing and Management) là một công cụ dòng lệnh được thiết kế để bảo trì và sửa đổi các ảnh hệ điều hành Windows , cả khi ngoại tuyến và trên các hệ thống đang hoạt động. Trong số nhiều chức năng của nó, có chức năng quản lý các gói ứng dụng được cung cấp (.appx và .appxbundle) được tự động cài đặt trong hồ sơ người dùng.

Cú pháp cơ bản của DISM để làm việc với hình ảnh là:

DISM.exe {/Hình ảnh: | /Trực tuyến} {tùy chọn bảo trì}

Các lệnh như sau được sử dụng để duy trì các gói ứng dụng được cung cấp trong ảnh hệ thống ngoại tuyến:

DISM.exe /Image:

Và đối với một hệ điều hành đang hoạt động (hình ảnh trực tuyến):

DISM.exe /Online

Bằng cách sử dụng /? sau bất kỳ tùy chọn nào trong số này, DISM sẽ hiển thị trợ giúp chi tiết về lệnh con đó, bao gồm các đối số có sẵn và các ví dụ thực tế, cho cả ảnh trực tuyến và ngoại tuyến.

Các lệnh DISM quan trọng cho các gói APPX

DISM cung cấp một số chức năng cụ thể để xử lý các gói .appx và .appxbundle đã được cấp phát. Những công cụ này rất hữu ích cho các quản trị viên khi chuẩn bị ảnh hệ thống doanh nghiệp hoặc triển khai ứng dụng UWP hàng loạt.

Tùy chọn `/Get-ProvisionedAppxPackages` liệt kê tất cả các gói ứng dụng đã được cung cấp trong ảnh hệ thống và do đó sẽ tự động được cài đặt cho mỗi người dùng mới khi họ đăng nhập lần đầu. Một ví dụ điển hình là:

Dism /Image:C:\test\offline /Get-ProvisionedAppxPackages

Để thêm một hoặc nhiều gói ứng dụng vào ảnh hệ thống, hãy sử dụng lệnh `/Add-ProvisionedAppxPackage` . Khi một ứng dụng được thêm theo cách này, nó sẽ được bao gồm trong ảnh hệ thống và được đăng ký cho tất cả các hồ sơ người dùng mới và hiện có vào lần đăng nhập tiếp theo của họ. Nếu ảnh hệ thống đang hoạt động, người dùng hiện tại sẽ không thấy ứng dụng đã đăng ký cho đến khi họ đăng xuất và đăng nhập lại.

Microsoft khuyến nghị cài đặt ứng dụng trên hệ điều hành ở chế độ kiểm toán để tận dụng các liên kết cứng giữa các tệp thông dụng, nhờ đó giảm dung lượng ổ đĩa và ngăn người dùng chạy ứng dụng trong quá trình cài đặt và thiết lập.

Cú pháp nâng cao của lệnh /Add-ProvisionedAppxPackage

Cú pháp của lệnh /Add-ProvisionedAppxPackage hỗ trợ một số tham số để đáp ứng các trường hợp khác nhau:

dism.exe /Add-ProvisionedAppxPackage {/FolderPath: /Đường dẫn gói: { } }

Lệnh ` /FolderPath` chỉ định thư mục chứa ứng dụng đã được giải nén (gói chính, các gói phụ thuộc và giấy phép). Lệnh này chỉ được hỗ trợ cho các gói .appx đã giải nén chứ không hỗ trợ các gói .appxbundle.

Tùy chọn /PackagePath trỏ trực tiếp đến tệp ứng dụng .appx hoặc .appxbundle. Tùy chọn này hợp lệ để cung cấp các ứng dụng nghiệp vụ trên hệ thống trực tuyến, nhưng không được hỗ trợ nếu máy chủ chạy DISM đang sử dụng WinPE 4.0, Windows Server 2008 R2 hoặc các phiên bản cũ hơn.

Lệnh ` /Region` kiểm soát các khu vực mà gói (.appx hoặc .appxbundle) sẽ được cung cấp. Bạn có thể chỉ định "all" (tất cả các khu vực) hoặc một danh sách các mã ISO 3166-1 Alpha-2 hoặc Alpha-3 được phân tách bằng dấu chấm phẩy (ví dụ: "US" hoặc "USA"). Nếu không chỉ định khu vực nào, gói sẽ chỉ được cung cấp nếu nó được neo vào bố cục Trang chủ.

Tham số ` /DependencyPackagePath` được sử dụng để chỉ định từng gói phụ thuộc mà ứng dụng yêu cầu. Các gói phụ thuộc này được xác định bằng cách truy vấn các phần tử `<PackageDependency>` trong tệp `AppxManifest.xml` của gói cha. Khi nhiều ứng dụng chia sẻ cùng một gói phụ thuộc, phiên bản phụ mới nhất của mỗi nhánh phiên bản chính của gói phụ thuộc đó nên được cài đặt để tránh trùng lặp không cần thiết.

Trong các kiến ​​trúc hỗn hợp, chẳng hạn như ảnh hệ điều hành x64, các gói phụ thuộc phải được bao gồm trong các biến thể áp dụng (x86 và x64). Nếu gói phụ thuộc ARM cũng được chỉ định, DISM sẽ bỏ qua nó vì nó không tương ứng với kiến ​​trúc mục tiêu. Trên máy x86, chỉ các gói phụ thuộc x86 sẽ được cài đặt, và trên thiết bị ARM, chỉ các gói phụ thuộc ARM.

Quản lý giấy phép, dữ liệu tùy chỉnh và các mẫu DISM.

Lệnh ` /CustomDataPath` cho phép bạn liên kết một tệp dữ liệu tùy chỉnh tùy chọn với ứng dụng của mình. Tên tệp bạn chỉ định sẽ tự động được đổi tên thành `Custom.dat` khi được tích hợp vào ảnh hệ thống, và nếu tệp `Custom.dat` đã tồn tại cho gói đó, nó sẽ bị ghi đè bằng nội dung mới.

Tùy chọn ` /LicensePath` được sử dụng kết hợp với `/PackagePath` để trỏ đến tệp .xml chứa giấy phép của ứng dụng, tệp này cần thiết trong một số trường hợp kinh doanh nhất định. Nếu ứng dụng không yêu cầu giấy phép, có thể sử dụng ` /SkipLicense` , mặc dù Microsoft cảnh báo rằng điều này chỉ nên được thực hiện trong môi trường được chuẩn bị cho cài đặt thử nghiệm, vì việc sử dụng nó ngoài các trường hợp đó có thể làm ảnh hưởng đến tính hợp lệ của hình ảnh.

Một số ví dụ điển hình về việc sử dụng DISM với các tệp .appx và .appxbundle là:

Dism /Image:C:\test\offline /Add-ProvisionedAppxPackage /FolderPath:c:\Test\Apps\MyUnpackedApp /CustomDataPath:c:\Test\Apps\CustomData.xml

Dism /Online /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appx /DependencyPackagePath:C:\Test\Apps\MyPackedApp\Framework-x86.appx /DependencyPackagePath:C:\Test\Apps\MyPackedApp\Framework-x64.appx /LicensePath:C:\Test\Apps\MyLicense.xml

Dism /Online /Add-ProvisionedAppxPackage /FolderPath:C:\Test\Apps\MyUnpackedApp /SkipLicense

Dism /Image:C:\test\offline /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appxbundle /SkipLicense

Dism /Online /Add-ProvisionedAppxPackage /PackagePath:C:\Test\Apps\MyPackedApp\MainPackage.appxbundle /Region:»all»

Những ví dụ này minh họa cách sử dụng cả với các thư mục ứng dụng chưa được giải nén và các gói ứng dụng đã được đóng gói, cũng như sự kết hợp với các phụ thuộc, giấy phép và khu vực cụ thể.

Các lệnh DISM khác: xóa, tối ưu hóa và dữ liệu tùy chỉnh

Để xóa bỏ việc cấp phép cho một gói ứng dụng trong ảnh hệ thống, hãy sử dụng lệnh `/Remove-ProvisionedAppxPackage` , chỉ định tên gói. Thao tác này ngăn ứng dụng tự động đăng ký với các tài khoản người dùng mới được tạo sau này.

Cú pháp cơ bản là:

/Remove-ProvisionedAppxPackage /PackageName:

Ví dụ:

Dism /Image:C:\test\offline /Remove-ProvisionedAppxPackage /PackageName:microsoft.devx.appx.app1_1.0.0.0_neutral_ac4zc6fex2zjp

DISM cũng bao gồm tùy chọn `/Optimize-ProvisionedAppxPackages` để giảm kích thước tổng thể của các gói đã được cung cấp trong ảnh bằng cách tạo các liên kết cứng giữa các tệp giống hệt nhau. Điều này chỉ có thể thực hiện được với ảnh ngoại tuyến và trước khi chúng được đưa vào trực tuyến; một khi ảnh đã khởi động với các gói đó, việc tối ưu hóa những gì đã được cung cấp trước đó sẽ không còn khả thi nữa.

Lệnh thông thường sẽ là:

DISM.exe /Image:C:\test\offline /Optimize-ProvisionedAppxPackages

Để quản lý dữ liệu tùy chỉnh với các gói đã được cấu hình sẵn, hãy sử dụng `/Set-ProvisionedAppxDataFile` . Tùy chọn này thêm (hoặc thay thế) tệp dữ liệu Custom.dat cho một gói cụ thể đã được thêm vào ảnh hệ thống, mà không cần phải cấu hình lại từ đầu.

Cú pháp là:

/Set-ProvisionedAppxDataFile /PackageName:

Ví dụ thực tế:

DISM.exe /Image:C:\test\offline /Set-ProvisionedAppxDataFile /CustomDataPath:c:\Test\Apps\Custom.dat /PackageName:microsoft.appx.app1_1.0.0.0_neutral_ac4zc6fex2zjp

Nếu tệp Custom.dat cho ứng dụng đó đã tồn tại, tệp mới sẽ ghi đè lên tệp hiện có. Điều này hữu ích để cập nhật các cài đặt hoặc dữ liệu mặc định mà không cần cài đặt lại toàn bộ gói phần mềm.

StubPackageOption: gói "mẫu" so với gói đầy đủ

Một tính năng khác liên quan đến việc quản lý .appxbundle là tham số /StubPackageOption , được sử dụng cùng với các tùy chọn bảo trì gói ứng dụng để xác định sự ưu tiên giữa việc cài đặt phiên bản rút gọn hoặc phiên bản đầy đủ của ứng dụng.

Cú pháp là:

/StubPackageOption:{installstub | installfull}

Tùy chọn Installstub chỉ định rằng gói được cung cấp sẽ là phiên bản stub, thường là một container tối thiểu, sau đó sẽ tải xuống các thành phần bổ sung từ cửa hàng khi người dùng chạy ứng dụng. Tùy chọn Installfull cung cấp trực tiếp phiên bản đầy đủ của ứng dụng, do đó người dùng có thể sử dụng đầy đủ ứng dụng mà không cần tải xuống thêm.

  Quản lý năng lượng CPU theo tương tác của người dùng trong Windows 11: Cách thức hoạt động và lý do tại sao nó có thể cải thiện tuổi thọ pin

Nếu không có tùy chọn nào được chỉ định, các tùy chọn mặc định của ảnh sẽ được áp dụng. Một ví dụ thực tế là:

Dism /image:C:\test\offline /add-provisionedappxpackage /packagepath:»C:\dism\stub\appwithresources.appxbundle» /stubpackageoption:installstub

Tính năng này hữu ích khi bạn muốn kiểm soát kích thước ảnh ban đầu hoặc hành vi tải xuống tiếp theo trên các máy tính có kết nối mạng hạn chế.

DISM quyết định thêm những tài nguyên nào từ tệp .appxbundle vào ảnh hệ thống bằng cách nào?

Khi bạn thêm tệp .appxbundle vào ảnh hệ điều hành Windows, không phải tất cả các gói nội bộ đều được coi là phù hợp. DISM đánh giá tính phù hợp của các gói tài nguyên dựa trên ngôn ngữ và một số đặc điểm nhất định của phần cứng mục tiêu.

Đối với các gói tài nguyên ngôn ngữ, nếu một ngôn ngữ không có trong ảnh hệ điều hành, gói ngôn ngữ ứng dụng tương ứng sẽ không được thêm vào. Ví dụ, nếu ảnh là Windows với tiếng Anh (Mỹ) là ngôn ngữ mặc định và gói ngôn ngữ tiếng Tây Ban Nha (Tây Ban Nha) cũng được bao gồm, thì các gói tài nguyên ứng dụng cho tiếng Anh và tiếng Tây Ban Nha sẽ được cài đặt, nhưng gói tài nguyên tiếng Pháp (nếu có) sẽ bị bỏ qua nếu nó tồn tại trong tệp .appxbundle.

Ngược lại, các gói tài nguyên Scale và DirectX (DXFL) phụ thuộc vào phần cứng thực tế mà ảnh hệ điều hành sẽ được sử dụng. Vì điều này không thể xác định được khi tạo ảnh hệ điều hành ngoại tuyến, DISM sẽ thêm tất cả các gói tài nguyên Scale và DXFL từ lô ảnh. Sau đó, khi khởi động lần đầu và trong giai đoạn trải nghiệm thiết lập ban đầu (OOBE), khi người dùng chọn ngôn ngữ và hệ thống phát hiện cấu hình màn hình và GPU, Windows sẽ tự động loại bỏ các tài nguyên không cần thiết.

Nếu ảnh hệ thống chứa nhiều gói ngôn ngữ, các gói tài nguyên ứng dụng sẽ được thêm vào cho mỗi gói. Sau đó, khi người dùng đăng nhập lần đầu và chọn ngôn ngữ trong quá trình thiết lập ban đầu (OOBE), hệ thống sẽ dọn dẹp các tài nguyên còn sót lại (ngôn ngữ, tỷ lệ khung hình hoặc DXFL không phù hợp với phần cứng) để giải phóng dung lượng ổ đĩa.

Ví dụ thực tế: Một ứng dụng hỗ trợ tiếng Anh (Mỹ), tiếng Pháp (Pháp) và tiếng Tây Ban Nha (Tây Ban Nha). Nếu một hình ảnh được thêm vào với ngôn ngữ hệ thống là tiếng Anh và tiếng Tây Ban Nha, hình ảnh ban đầu sẽ chứa các tài nguyên của ứng dụng bằng cả hai ngôn ngữ. Nếu người dùng đầu tiên chọn tiếng Anh làm ngôn ngữ hệ thống của họ, sau lần đăng nhập đầu tiên đó, các tài nguyên tiếng Tây Ban Nha từ ứng dụng đó mà không cần thiết cho hồ sơ người dùng sẽ bị xóa.

Những hạn chế và yêu cầu khi cài đặt các gói .appx và .appxbundle

Không phải mọi thứ đều phù hợp khi cài đặt các gói APPX. Có một số hạn chế về phiên bản Windows và môi trường cần lưu ý để tránh các lỗi không cần thiết.

Một mặt, gói .appx không thể được cài đặt trên các hệ thống không hỗ trợ ứng dụng Windows 8 trở lên; và gói .appxbundle yêu cầu tối thiểu một hệ thống tương thích với ứng dụng Windows 8.1. Việc cài đặt các ứng dụng này không được hỗ trợ trong môi trường WinPE 4.0, trên tùy chọn Server Core của Windows Server 2012 hoặc trên bất kỳ phiên bản Windows nào trước Windows 8/Windows Server 2012.

Để các ứng dụng UWP hoạt động trên Windows Server 2012, bạn cần cài đặt trải nghiệm máy tính để bàn , cho phép sử dụng các khả năng của nền tảng ứng dụng hiện đại. Trong môi trường Server Core hoặc các ảnh hệ thống bị thu nhỏ đáng kể, các ứng dụng này đơn giản là không được hỗ trợ.

Hơn nữa, DISM chỉ hỗ trợ /FolderPath cho các gói .appx đã giải nén, còn đối với các gói .appxbundle, phải luôn sử dụng /PackagePath, trỏ đến tệp đã được đóng gói. Nếu cố gắng làm khác đi sẽ dẫn đến lỗi tương thích hoặc lỗi định dạng khi chạy lệnh.

Cần lưu ý rằng các ứng dụng UWP không được hỗ trợ trong một số phiên bản đặc biệt (chẳng hạn như một số biến thể của WinPE), vì vậy ngay cả khi bạn sao chép được tệp .appx, hệ điều hành cũng không thể đăng ký hoặc chạy nó một cách chính xác.

Cài đặt trực tiếp các tệp .appx và .appxbundle trên Windows (không cần sử dụng DISM)

Ngoài việc quản lý hình ảnh, người dùng gia đình thường gặp các tệp .appx và .appxbundle khi tải xuống ứng dụng từ Microsoft Store hoặc các nguồn khác. Trên Windows 10 và Windows 11, việc cài đặt các tệp này khá dễ dàng, miễn là đáp ứng được một số yêu cầu nhất định.

Để cho phép cài đặt các ứng dụng này bên ngoài App Store, một chế độ cấu hình đặc biệt gọi là Chế độ Nhà phát triển đã được giới thiệu . Chế độ này cho phép thực thi các gói APPX không được ký bằng chứng chỉ đáng tin cậy hoặc đến từ các nguồn khác ngoài cửa hàng chính thức, tương tự như tùy chọn cho phép ứng dụng của bên thứ ba trong Android.

Trước tiên, hãy đảm bảo hệ thống của bạn đã cài đặt ít nhất các bản cập nhật quan trọng (ví dụ: Bản cập nhật kỷ niệm cho Windows 10). Sau đó, từ Cài đặt > Cập nhật & Bảo mật > Dành cho nhà phát triển, bạn có thể bật "Chế độ nhà phát triển" hoặc ít nhất là tùy chọn cài đặt dùng thử cho các ứng dụng.

Sau khi tùy chọn được kích hoạt và máy tính được khởi động lại nếu cần, việc cài đặt tệp .appx hoặc .appxbundle chỉ đơn giản là nhấp đúp vào tệp đó . Windows sẽ mở trình cài đặt ứng dụng UWP, hiển thị tên ứng dụng, nguồn (ví dụ: Microsoft Store), phiên bản, nhà phát hành và các quyền (khả năng) mà ứng dụng yêu cầu.

Trong cửa sổ đó, bạn có thể chọn xem có chạy ứng dụng tự động sau khi cài đặt hay không. Nhấp vào "Cài đặt" sẽ cho phép hệ thống xác thực chữ ký, đăng ký các gói và giải quyết mọi phụ thuộc cần thiết. Nếu ứng dụng yêu cầu bất kỳ thư viện bổ sung nào, Windows sẽ tải xuống hoặc cài đặt chúng từ chính ảnh hệ thống nếu ảnh đó đã được cung cấp.

Cài đặt và đăng ký APPX bằng PowerShell

Đối với người dùng nâng cao và quản trị viên, PowerShell cung cấp khả năng kiểm soát chi tiết hơn đối với việc cài đặt các tệp .appx và .appxbundle so với giao diện đồ họa. Cmdlet chính là Add-AppxPackage , hỗ trợ cả việc cài đặt gói đơn giản và đăng ký các ứng dụng được giải nén từ tệp kê khai của chúng.

Nếu bạn đã tải xuống tệp .appx hoặc .appxbundle, chỉ cần mở PowerShell với quyền quản trị viên và chạy lệnh tương tự như sau:

Add-AppxPackage -Path «C:\Path\Program.appx»

Rõ ràng, bạn cần điều chỉnh đường dẫn và tên tệp cho phù hợp với trường hợp cụ thể của mình. Nếu thay vì một tệp đã được đóng gói, bạn có ứng dụng chưa được đóng gói trong một thư mục, bạn có thể đăng ký nó bằng cách sử dụng tệp kê khai:

Add-AppxPackage -Path C:\Path\Program\AppxManifest.xml -Register

Điều này cho Windows biết cần đăng ký ứng dụng đó như thể nó được cài đặt từ gói .appx, điều này rất hữu ích trong quá trình phát triển hoặc trong các trường hợp bạn muốn thực hiện triển khai có kiểm soát từ kho lưu trữ cục bộ.

Trong cả hai trường hợp, PowerShell sẽ hiển thị lỗi chi tiết nếu thiếu bất kỳ thành phần phụ thuộc nào, nếu chữ ký không hợp lệ hoặc nếu gói không tuân thủ các chính sách thực thi hệ thống (ví dụ: nếu chế độ nhà phát triển không được bật hoặc nếu chính sách cài đặt chỉ cho phép các ứng dụng từ Store).

Tải xuống các ứng dụng UWP bên ngoài Microsoft Store: Adguard và các ứng dụng tương tự.

Mặc dù Microsoft khuyến khích người dùng sử dụng cửa hàng chính thức, nhưng vẫn có các công cụ của bên thứ ba cho phép bạn tải xuống các gói .appx và .appxbundle trực tiếp từ máy chủ của công ty, bỏ qua giao diện Cửa hàng. Một trong những công cụ nổi tiếng nhất là trang web Adguard, hoạt động như một loại "proxy" cho Microsoft Store.

Ý tưởng rất đơn giản: đầu tiên, bạn lấy URL của ứng dụng từ trang web chính thức của Microsoft Store (ví dụ: bằng cách tìm kiếm WhatsApp Desktop và sao chép địa chỉ, bao gồm cả mã định danh sản phẩm). Bạn dán URL đó vào ô Adguard, chọn nhánh mong muốn (thường là "Retail" cho phiên bản ổn định), và trang web sẽ tạo ra danh sách tất cả các tệp liên quan đến ứng dụng đó.

  Cách lên lịch và quản lý các tác vụ tự động với schtasks trong Windows

Danh sách bao gồm cả các gói chính (AppxBundle hoặc EAppxBundle) cũng như chữ ký, các gói phụ thuộc và các tài nguyên khác. Các gói cần thiết để cài đặt ứng dụng thường là phiên bản mới nhất của AppxBundle/EAppxBundle cho kiến ​​trúc phù hợp (ví dụ: x64). Mã băm SHA1 được hiển thị bên cạnh mỗi mục để xác minh tính toàn vẹn của quá trình tải xuống.

Việc nhấp vào một trong những liên kết này sẽ tải xuống tệp trực tiếp từ máy chủ của Microsoft, chứ không phải từ chính AdGuard. Sau đó, người dùng có thể cài đặt bằng cách nhấp đúp hoặc sử dụng Add-AppxPackage, như đã mô tả trước đó, với điều kiện chế độ nhà phát triển được bật nếu ứng dụng yêu cầu.

Ưu điểm, rủi ro và hạn chế của việc cài đặt APPX bên ngoài Cửa hàng

Thủ thuật tải xuống APPX và APPXBUNDLE từ bên ngoài Microsoft Store này có một sức hấp dẫn nhất định: nó cho phép bạn giữ lại các bản sao của ứng dụng có thể bị xóa trong tương lai hoặc cài đặt ứng dụng trên các máy tính mà Store không hoạt động đúng cách hoặc nơi bạn không có quyền truy cập vào tài khoản Microsoft.

Tuy nhiên, phương pháp này cũng có một số hạn chế thực tế . Trước hết, việc tải xuống một ứng dụng trả phí bằng phương pháp này không có nghĩa là bạn có thể sử dụng nó miễn phí. Cửa hàng ứng dụng và hệ điều hành tích hợp các cơ chế DRM yêu cầu xác thực giấy phép trực tuyến bằng tài khoản Microsoft; nếu quá trình xác thực này không được thực hiện, chương trình sẽ không chạy, ngay cả khi gói cài đặt đã thành công.

Hơn nữa, nếu không sử dụng Store thường xuyên, bạn sẽ mất đi sự tiện lợi khi luôn nhận được phiên bản ứng dụng mới nhất . Nếu bạn chỉ giữ một bản sao của gói đã tải xuống, nó có thể sẽ nhanh chóng trở nên lỗi thời, dẫn đến các vấn đề về khả năng tương thích, các lỗi đã được khắc phục trong các phiên bản mới hơn, hoặc các thay đổi trong dịch vụ trực tuyến khiến ứng dụng ngừng hoạt động đúng cách.

Trên thực tế, phương pháp này chỉ có ý nghĩa trong những trường hợp cụ thể: ví dụ, lưu một ứng dụng miễn phí mà bạn đã sử dụng, tuân thủ các chính sách bảo mật của Microsoft và bạn nghi ngờ rằng nó có thể biến mất khỏi Store (chẳng hạn như một số tiện ích liên quan đến hình nền, Spotlight, v.v.). Tuy nhiên, không nên sử dụng nó như một sự thay thế thường xuyên cho Microsoft Store.

Một rủi ro khác khi bỏ qua cửa hàng chính thức là bạn có thể tải xuống các gói phần mềm từ các trang web không đáng tin cậy hoặc đã được đóng gói lại, dẫn đến nguy cơ lây nhiễm phần mềm độc hại, phần mềm quảng cáo hoặc phần mềm không mong muốn vào hệ thống của bạn. Cửa hàng chính thức lọc và phân tích các ứng dụng, nhưng các trang web trung gian không phải lúc nào cũng đảm bảo điều đó.

Các sự cố thường gặp khi cài đặt ứng dụng từ bên ngoài Store

Khi bạn chọn cài đặt ứng dụng Windows từ Internet thay vì sử dụng Microsoft Store, một số vấn đề thường gặp sẽ phát sinh mà bạn cần lưu ý, nhiều vấn đề trong số đó liên quan đến bảo mật và khả năng tương thích hơn là định dạng .appx.

Rủi ro đầu tiên là tệp tin tải xuống có thể chứa virus hoặc Trojan . Khi tải ứng dụng trực tiếp từ các trang web của bên thứ ba, không có gì đảm bảo rằng trình cài đặt chưa bị sửa đổi hoặc trang đó sẽ không chuyển hướng bạn đến một tệp thực thi khác thông qua các biểu ngữ lừa đảo. Ngược lại, các ứng dụng từ App Store trải qua quá trình kiểm tra tính tương thích và bảo mật trước khi được phát hành.

Một vấn đề phổ biến khác là các vấn đề tương thích ; trong những trường hợp này, việc học cách sử dụng Trình xem sự kiện để chẩn đoán các sự cố ứng dụng có thể hữu ích. Khi bạn tải xuống trình cài đặt của bên thứ ba, bạn có thể cài đặt một phiên bản không được thiết kế cho phiên bản Windows, kiến ​​trúc hoặc phiên bản hệ điều hành của mình, dẫn đến lỗi thời gian chạy hoặc hành vi không thể đoán trước. Microsoft Store ngăn chặn điều này bằng cách hạn chế việc tải xuống các ứng dụng không đáp ứng các yêu cầu tối thiểu của thiết bị.

Trải nghiệm người dùng khi duyệt các trang web bị quá tải bởi quảng cáo, cửa sổ bật lên và các nút gây khó hiểu cũng cần được xem xét. Nhiều trang web lạm dụng banner và các liên kết tải xuống giả mạo nhằm thúc đẩy người dùng cài đặt thêm phần mềm (thanh công cụ, tiện ích mở rộng, trình quản lý tải xuống đáng ngờ, v.v.) không liên quan gì đến ứng dụng mà họ ban đầu tìm kiếm.

Cuối cùng, một số ứng dụng được tải xuống từ các kênh không chính thức có thể bao gồm các thành phần bổ sung tiêu tốn tài nguyên hoặc dung lượng ổ đĩa mà không mang lại giá trị gì: phần mềm diệt virus dùng thử, tiện ích của bên thứ ba, thanh công cụ, v.v. Trong trường hợp ứng dụng UWP, nếu bạn tải xuống các phiên bản không chính thức hoặc được đóng gói lại, dung lượng ổ đĩa có thể lớn hơn so với phiên bản gốc, chính xác là vì chúng bao gồm các "phần bổ sung" không có trong gói được chứng nhận từ Store.

Thay đổi vai trò của Microsoft Store trong Windows 11

Với sự ra mắt của Windows 11, Microsoft đã cố gắng tái khởi động Microsoft Store để biến nó thành một thành phần quan trọng hơn của hệ thống, sau nhiều năm bị người dùng thờ ơ, những người vẫn thích tải chương trình từ các trang web chính thức của nhà phát triển hơn.

Trong số những cải tiến đáng chú ý là giao diện được thiết kế lại thân thiện hơn với người dùng trong việc tìm kiếm, tải xuống và cập nhật ứng dụng, cũng như kho ứng dụng lớn hơn bao gồm ngày càng nhiều chương trình "thông thường" (Win32) bên cạnh các ứng dụng UWP, mang đến trải nghiệm gần hơn với những gì các nền tảng khác như macOS, Android hoặc iOS cung cấp.

Đối với các nhà phát triển, điều này đồng nghĩa với việc có thêm nhiều kênh phân phối: họ có thể đóng gói ứng dụng của mình ở các định dạng như .msix hoặc .appx, xuất bản chúng trên App Store và mang lại lợi ích cho người dùng cuối với việc cài đặt an toàn hơn, cập nhật tập trung và gỡ cài đặt sạch sẽ. Đối với người dùng, lợi ích chính là giảm nguy cơ tải xuống các tệp thực thi từ các trang web không đáng tin cậy.

Song song đó, Microsoft tiếp tục quảng bá nền tảng gói UWP và APPX , khuyến khích các nhà phát triển cung cấp các phiên bản được điều chỉnh cho Store để tận dụng tốt hơn khả năng tích hợp hệ thống, đồng thời vẫn duy trì các trình cài đặt truyền thống có thể tải xuống từ các trang chính thức của họ.

Mặc dù Store chưa đạt được mức độ phổ biến như các hệ sinh thái khác, nhưng những thay đổi được giới thiệu trong Windows 11 (nhiều ứng dụng hơn, hỗ trợ nhiều loại gói cài đặt khác nhau, cải thiện hiệu năng và thiết kế) đều hướng đến việc biến nó thành một yếu tố quan trọng của hệ điều hành và giảm sự phụ thuộc vào các trình cài đặt rải rác trên mạng.

Hiểu rõ các gói .appx và .appxbundle là gì và cách chúng hoạt động sẽ giúp bạn dễ dàng điều hướng Microsoft Store và các kịch bản quản trị nâng cao với DISM và PowerShell: từ việc cài đặt ứng dụng UWP đơn giản trên máy tính cá nhân đến việc cung cấp hàng loạt ứng dụng trong ảnh hệ thống doanh nghiệp, hoặc thậm chí tải xuống trực tiếp từ máy chủ Microsoft khi Store ít được sử dụng hoặc bị lỗi. Nắm rõ các hạn chế, yêu cầu và các công cụ liên quan sẽ giúp bạn dễ dàng tận dụng chúng mà không ảnh hưởng đến bảo mật hoặc tính ổn định của Windows.

Cấu hình gói ngôn ngữ và khu vực trong Windows
Bài viết liên quan:
Hướng dẫn cấu hình gói ngôn ngữ và khu vực trong Windows từng bước một.