(Tôi biết câu trả lời này là hơi muộn và câu hỏi này đã được trả lời nhưng MFC trong dịch vụ là một điểm đau đối với tôi ...)
CSockets, xa như tôi nhớ lại, đòi hỏi phải có Window. Nó làm cho một ẩn trong nền. Tôi phát hiện ra điều này một cách khó khăn khi tôi đã thử bao gồm một số mã MFC trước khi xuất hiện vào một dịch vụ cửa sổ. Có lẽ điều này chỉ được yêu cầu nếu bạn chấp nhận kết nối socket - tôi không thể nhớ lại? Nhưng nó không hoạt động! (Làm thế nào chính xác tôi lãng phí rất nhiều thời gian làm điều này w/o nhận ra giới hạn này là một câu chuyện dài)
CObject? Nếu bạn cần các công cụ id thời gian chạy sử dụng RTTI (dynamic_cast, vv ...)
CString, tôi thích CString, tôi biết nó được chia sẻ với ATL bây giờ, không chắc chắn nếu bạn kéo nó trong w/o MFC hoặc ATL bao gồm ... Bạn có thể sử dụng std :: string. Ngoài ra, tôi nhớ lại một ai đó đã tạo ra một std :: string đã cung cấp các phương thức giống như CString. (EDIT: tìm thấy code - người đàn ông !! đó là một vụ nổ từ quá khứ ...)
CArchive, CMemFile: bạn có thực sự cần những thứ này không?
Dù sao, như Roel đã nói, ATL có thể hữu ích hơn. Tôi sẽ không sử dụng MFC trong một ứng dụng phía máy chủ (bao giờ!) ATL? Có lẽ. Nếu tôi cần COM, chắc chắn. Không có COM nhưng đối với CAtlServiceModuleT, v.v ... có thể ....
Cảm ơn bạn đã chia sẻ trải nghiệm của mình! – mem64k
Tôi thấy rằng liên kết tải xuống không hoạt động đối với thay thế CString, nhưng cũng tìm thấy điều tương tự (tôi nghĩ) trên CodeProject http://www.codeproject.com/KB/string/stdstring.aspx –
Cảm ơn GH! Liên kết của bạn là cùng một lớp ("Stud" chuỗi) Tôi đã đề cập quá! - Tôi sẽ cập nhật liên kết trong câu trả lời của tôi. Tôi biết đây là dự án tương tự kể từ khi tôi nhớ nhận xét này trong nguồn: "Xin đừng đổ lỗi cho tôi nếu nó gây ra vệ tinh $ 30 tỷ đô la của bạn phát nổ trong quỹ đạo." – Aardvark