2009-06-10 67 views
9

Đối với công ty của tôi, tôi đã tạo ra một dịch vụ web ASP.NET sử dụng công cụ prcoessing thanh toán của bên thứ 3 để ủy quyền cho các giao dịch thẻ tín dụng.HRESULT: 0x80010105 (RPC_E_SERVERFAULT) question

Dịch vụ web được lưu trữ trên một máy chủ ứng dụng riêng biệt và kết nối với máy chủ xử lý thanh toán qua đối tượng ActiveX (phần mở rộng .ocx). Gần đây, nó đã tạo ra một ngoại lệ HRESULT: 0x80010105 (RPC_E_SERVERFAULT) khi tôi cố gắng thiết lập kết nối với ứng dụng bằng cách sử dụng kiểm tra "IsAvaiable".

Có ai khuyên bạn nên bắt đầu nghiên cứu vấn đề này không?

(Tôi biết liên hệ với các nhà cung cấp sẽ là lựa chọn đầu tiên, nhưng tôi muốn có tôi "vịt liên tiếp" trước khi chúng tôi liên hệ với hỗ trợ kỹ thuật)

Trả lời

2

Tôi đã có lỗi tương tự (RPC_E_SERVERFAULT) sử dụng ActiveX các đối tượng trong các dịch vụ web. Bất cứ khi nào đối tượng ActiveX bị lỗi, IIS sẽ ném lỗi này, sẽ che giấu lý do mà đối tượng bị lỗi (đối với chúng tôi nó thường bị lỗi khi tải một tệp không hợp lệ cần xử lý và trả về giá trị).

Bạn đã kiểm tra nhật ký hệ thống, v.v. để xem liệu điều khiển ActiveX của bạn có ghi lại lỗi thực tế ở bất kỳ đâu không?

Nếu bạn không thể nhìn thấy bất cứ điều gì rõ ràng thì tôi khuyên bạn nên liên hệ với bộ phận hỗ trợ kỹ thuật của họ để tìm ra cách tốt nhất để chẩn đoán lỗi thực tế là gì và nếu nó ghi lỗi của nó ở bất kỳ đâu.

+1

Tôi đã kiểm tra nhật ký sự kiện của máy chủ dịch vụ web và không thấy bất kỳ lỗi nào liên quan đến lỗi RPC_E_SERVERFAULT. Tôi không có quyền truy cập vào máy chủ ứng dụng, có thể tôi có thể tìm thấy thứ gì đó ở đó. –

0

Bạn có thể bật adplus để yêu cầu lấy một vùng nhớ bộ nhớ mỗi khi bạn nhận được ngoại lệ. Điều này có thể được sử dụng để giúp gỡ lỗi vấn đề.

+0

Vùng nhớ bộ nhớ đến từ đâu: IIS hoặc đối tượng ActiveX? –

+0

Các bãi bộ nhớ đến từ ứng dụng, không phải từ các mô-đun riêng lẻ, vì vậy IIS –

+0

Nó không thực sự tạo ra tệp .DMP khi ngoại lệ xảy ra. Có loại khác của phần mở rộng tập tin tôi nên tìm cho rằng sẽ được coi là một bãi chứa bộ nhớ. –

2

Michael, kiểm soát Activex của bên thứ ba có thể không quản lý bộ nhớ đúng cách. Tôi đoán là nó đang ghi đè lên một phần của bộ nhớ khi nó không nên. Kiểm tra với nhà cung cấp bên thứ ba của bạn để xem họ có khắc phục được không.

1

Tôi biết đây là tràn ngăn xếp và phải có câu trả lời lập trình ở đây, nhưng bạn không đề cập đến cập nhật hoặc phần mềm thay đổi đối với máy không thành công. Nếu không có thay đổi phần mềm thì rất có thể đó là vấn đề phần cứng. RAM Không, CPU bị lỗi, phần cứng bị lỗi. Nếu bạn có thể làm cho hệ thống offline và kiểm tra phần cứng, bạn có thể sẽ thấy rằng một đĩa hoặc một module bộ nhớ bị lỗi (NIC có thể quá). Đây có thể là bước đầu tiên mà nhà cung cấp có thể thực hiện nhưng nếu bạn tự làm, bạn có thể thực hiện theo các điều khoản của mình và có thể an toàn cho bản thân phí dịch vụ trong một vài giờ.

+0

Đây là số vô nghĩa – Elmue

+0

@Elmue Có bất kỳ thứ gì có tính xây dựng để thêm không? Xác minh phần cứng thường là một bước tốt và tôi đã chứng kiến ​​ram xấu gây ra nhiều lỗi bao gồm các vấn đề xác minh chữ ký mã hóa. Nếu mật mã bị lỗi thì RPC có thể thất bại vì nó.Câu hỏi này cũng được hỏi về lời khuyên khi liên hệ với một nhà cung cấp, phần cứng thông thường sẽ nhận được một số kỹ thuật điện thoại chậm chạp mà các đại lý điện thoại sử dụng để kết thúc cuộc gọi. – Sqeaky

+1

Tôi đã gặp một số lỗi RPC_E_SERVERFAULT. Không bao giờ là phần cứng nguyên nhân. Lỗi này đơn giản có nghĩa là máy chủ COM đã bị lỗi. Nguyên nhân chủ yếu là các lỗi lập trình như tràn bộ đệm hoặc đọc con trỏ null hoặc xử lý lỗi xấu. Nếu bạn gặp vấn đề với RAM, bạn sẽ thấy các sự cố trong các ứng dụng khác nhau (không chỉ trong một máy chủ) ngay cả cho đến khi có bluescreens. Nó là không thể mà một vấn đề hadware gây ra tai nạn chỉ trong một ứng dụng. – Elmue

0

Cũng có thể có nghĩa là đối tượng COM đã gặp sự cố. Điều này xảy ra với một macro trong Excel đã làm hỏng Excel. Hãy thử chạy lại ứng dụng được đại diện bởi đối tượng COM (trong trường hợp của tôi, một addin Excel) của chính nó và xem nếu nó bị treo hoặc tạo ra một số lỗi.

Các vấn đề liên quan