API DISM – Thay đổi ngôn ngữ đầu ra

lập trình


CHÀO,
Tôi đang làm việc với các chức năng được ghi lại của dismapi.dll, nhưng không có tùy chọn nào để kiểm soát ngôn ngữ đầu ra của thông báo lỗi. Vì vậy, khi tôi thực thi DismGetLastErrorMessage(), tôi nhận được một văn bản tiếng Đức. Tôi có thể thay đổi hành vi này để api hiển thị văn bản tiếng Anh không?

Tôi nghĩ, khi tôi thay đổi ngôn ngữ hệ thống, ngôn ngữ đầu ra cũng sẽ thay đổi, nhưng tôi muốn phục vụ phần mềm của mình nên tôi cần một ngôn ngữ động.

Cảm ơn!

Giải pháp 2

Xin vui lòng xem ý kiến ​​​​của tôi cho câu hỏi.

Tolleule@web.de đã viết:

không không bạn hiểu lầm tôi rồi. Tôi rất thích lập trình, nhưng không thích C++, ngôn ngữ này làm tôi bối rối. Tôi chỉ làm việc với python. Bây giờ, tôi chỉ cần một cách để đọc lib. Khi tôi thêm nó vào Dự án Win32 của mình, tôi gặp lỗi “…không có trình soạn thảo nào cho dismapi.lib”. Bạn có thể giúp tôi với nó?

Chỉnh sửa: Tệp lib có phải là tệp được biên dịch giống như DLL không?

Tôi rất tiếc phải nói: hầu như không, và thật không may, tôi hiểu bạn khá rõ.

Bạn vẫn cần phải biết rất rõ về C++. Sau đó, giả sử bạn có thể làm điều đó trong C#. Tôi không biết liệu chúng tôi có trình bao bọc .NET cho DISM hay không. Nếu không, bạn phải tự làm điều đó và để làm được điều này, bạn phải hiểu khá nhiều về C++. Nếu có, bạn vẫn cần có kiến ​​thức nghiêm túc về .NET và C#. Cuối cùng, giả sử bạn muốn sử dụng Python thay vì C#. Có một thứ như vậy, được gọi là Iron Python. Nó có nghĩa là biết rất rõ về .NET. Và như thế…
Xem thêm:
https://en.wikipedia.org/wiki/IronPython[^],

[^].

Tuy nhiên, giả sử bạn muốn sử dụng nền tảng gốc nhắm mục tiêu Python. Nhưng API DISM và tài liệu được viết để sử dụng C++, vì vậy bạn cần một số thao tác tương tác, điều này cũng đòi hỏi hiểu biết tốt về C++. Xin vui lòng xem, ví dụ: http://www.boost.org/doc/libs/1_42_0/libs/python/doc/tutorial/doc/html/index.html[^].

Bây giờ, bạn thực sự cần trợ giúp về lib và DLL. Lib không giống DLL. Đây là một mô-đun mã đối tượng, gần như là một tập hợp các tệp đối tượng trong một tệp (và đây là cách nó được triển khai trong *NIX, nhưng không hoàn toàn giống như cách trong Windows). Và các tệp obj là các tệp đối tượng của mã gốc vẫn chưa được liên kết tĩnh sử dụng trình liên kết thành mã thực thi. Xin vui lòng xem:
https://en.wikipedia.org/wiki/Linker_%28computing%29[^],
https://en.wikipedia.org/wiki/Object_file[^]

[^].

Thư viện Lib là thư viện tĩnh và DLL là thư viện thư viện liên kết động. Các thư viện tĩnh tiếp nhận đầu vào của trình liên kết để tạo ra tệp thực thi. Các tệp thực thi đó là tệp PE, Thực thi di động. Bây giờ, điểm chính là: EXE, DLL và một số tệp khác là tệp PE. Trên thực tế, sự khác biệt giữa EXE và DLL khá khó thấy, nhưng có lẽ DLL chỉ được sử dụng làm thư viện. Nói đúng ra, điều này không phải lúc nào cũng như vậy và thậm chí EXE không thể được sử dụng như một ứng dụng và thậm chí nó có thể được sử dụng như một thư viện. Xin vui lòng xem:
https://en.wikipedia.org/wiki/Portable_Executable[^],

[^].

-SA

Giải pháp 3

Bạn phải truyền một tham số “/English” để nhận được đầu ra dòng lệnh dism bằng tiếng Anh.

コメント

タイトルとURLをコピーしました