2013-03-25 21 views
6

Có thể tạo văn hóa tùy chỉnh mà không cần đăng ký nó trong Windows không? Mọi giải pháp và tài liệu đề cập đến lớp học CultureAndRegionInfoBuilder với số điện thoại Register sau khi văn hóa mới được tạo. Nhưng việc đăng ký văn hóa tùy biến làm thay đổi nền văn hóa có thể nhìn thấy trong hệ điều hành và bên cạnh đó nó đòi hỏi đặc quyền quản trị viên.Tạo văn hóa tùy chỉnh mà không cần đăng ký nó

Nếu đó là không thể thực hiện đang có hai cách để tránh việc đăng ký một nền văn hóa mới:

  1. tránh sử dụng văn hóa phong tục càng lâu càng tốt, ví dụ dính vào nền văn hóa tiêu chuẩn. Nó có thể làm việc cho bây giờ, nhưng tôi không biết trong bao lâu.
  2. đăng ký văn hóa tùy chỉnh trong khi cài đặt ứng dụng. Đây không phải là tùy chọn vì chúng tôi không thể đảm bảo đặc quyền quản trị vì chúng tôi muốn cập nhật ứng dụng từ xa.

Có cách nào không?

+0

Bạn đã thử [CreateFromLdml] (http://msdn.microsoft.com/en-us/library/system.globalization.cultureandregioninfobuilder.createfromldml.aspx) tải một tệp mà bạn [Lưu] (http: // msdn .microsoft.com/vi-us/library/system.globalization.cultureandregioninfobuilder.save.aspx) d trước đó và triển khai với ứng dụng của bạn? – rene

+0

@rene như đã đề cập trên MSDN "Tại thời điểm này, bạn có thể gọi phương thức Đăng ký và tạo văn bản tùy chỉnh hoàn nguyên có sẵn cho các ứng dụng khác.". Vì vậy, các nền văn hóa tái tạo phải được đăng ký anyway. Nhưng chúng tôi không thể gọi phương thức Đăng ký mà không có đặc quyền quản trị viên. –

Trả lời

1

Bạn phải đăng ký văn hóa tùy chỉnh để tận dụng.

+0

Có, nhưng không có cách nào khác để sử dụng văn hóa cục bộ, bên trong ứng dụng của tôi? –

+1

Không có, nhưng những nơi bạn có thể muốn sử dụng một (định dạng số, định dạng ngày), hãy dùng IFormatProvider hoặc NumberFormatInfo hoặc DateTimeFormatInfo cụ thể và bạn có thể ghi đè các giá trị đó. Bạn có một nơi cụ thể nơi bạn đang chạy vào những hạn chế chưa? Một kịch bản cụ thể mà bạn muốn kích hoạt? –

+0

bởi bây giờ tôi OK với các nền văn hóa tiêu chuẩn. Nhưng có thể tôi sẽ phải tạo ra các nền văn hóa tùy chỉnh trong tương lai, một số định dạng cụ thể. Sau đó, tôi chắc chắn sẽ áp dụng ý tưởng bạn đã đưa ra trong nhận xét của bạn - nó sẽ là OK để tạo ra tùy chỉnh thực hiện IFormatProvider cho "nền văn hóa đặc biệt" và vượt qua nó khi cần thiết. Cảm ơn! –