Không thể chạy chương trình C ++ cơ bản VS 2015


1

Tôi đã cài đặt Visual Studio 2015trên Windows 10PC để tạo một C++chương trình đơn giản.

Ngay cả khi tôi cố chạy một Hello Worldchương trình cơ bản như thế này:

#include <iostream>

int main() {

    std::cout << "Hello world";

    return 0;
}

Và nhấp vào Local Windows Debuggernút để chạy mã VS2015 đóng băng và tôi phải giết nó dưới dạng trình quản lý tác vụ.

Điều tồi tệ nhất là đôi khi nó khiến C++chương trình chạy và nó không thể bị giết (thậm chí không có taskkill /f /pidvà tôi phải khởi động lại PCđể tôi có thể cố gắng xây dựng lại mà không gặp program.exelỗi sử dụng.

Vì vậy, VScài đặt là mới và tôi cũng phải cài đặt Win32 (C++)hỗ trợ không còn cài đặt theo mặc định.

Bất kỳ đề xuất về những gì có thể sai hoặc làm thế nào điều này có thể được sửa chữa?

Cảm ơn bạn!


Bạn đã cài đặt chính xác những gì? Tuyên bố của bạn rằng bạn phải "cài đặt" hỗ trợ Win32 trên Windows 10 vì nó không được cài đặt theo mặc định là không chính xác. Windows phải hỗ trợ các ứng dụng Win32 theo mặc định vì nhiều lý do.
Ramhound


1
Vì vậy, trong số 4 gói khác nhau, bạn đã cài đặt chính xác những gì? Cập nhật câu hỏi của bạn để bao gồm thông tin này. Sử dụng tên tính năng cụ thể. Bộ công cụ nào bạn đang sử dụng chính xác?
Ramhound

1
Gợi ý: (1) Bản vá đầy đủ cài đặt VS2015 của bạn thông qua chính VS và Windows Update (chú ý đến các bản cập nhật tùy chọn). (2) Vô hiệu hóa phần mềm chống vi-rút của bạn (nếu điều này giúp thì hãy lấy phần mềm khác). (3) Cố gắng đổi tên thư mục %LocalAppData%\Microsoft\VisualStudio\12.0\ComponentModelCachevà bắt đầu VS. Khi khởi động, VS sẽ xây dựng lại bộ đệm.
harrymc

1
Đây là một vấn đề bình thường với dự án của bạn, không phải với VS: Bạn đang biên dịch exe Windows, không phải exe console, vì vậy bạn sẽ cung cấp chức năng WinMain chứa vòng lặp sự kiện hoặc chuyển đổi dự án sang Console. Xem chủ đề này để biết thêm. Nếu bạn xác nhận rằng vấn đề đã được giải quyết, tôi sẽ đăng bài này dưới dạng câu trả lời.
harrymc

Câu trả lời:


4

Kể từ phiên bản Visual Studio 2012, nội dung của thư mục bộ đệm có thể bất ngờ bị hỏng và / hoặc không đồng bộ hóa và gây ra tất cả các loại hành vi không mong muốn, bao gồm cả hành vi bạn đã báo cáo.

Không có lời giải thích tốt nào về nguyên nhân của vấn đề hoặc liên kết với một tiện ích bổ sung cụ thể, nhưng giải pháp khá đơn giản: Xóa nội dung của bộ đệm mô hình thành phần. Một số người báo cáo rằng nó là đủ để xóa các tập tin Microsoft.VisualStudio.Default.cachebên trong vị trí này.

Bộ nhớ cache tự động được xây dựng lại khi Visual Studio khởi động lại và quá trình này đủ nhanh để một số người gặp phải vấn đề này quá thường xuyên, thậm chí gọi VS qua các tập lệnh xóa thư mục này trước khi bắt đầu VS.

Đối với VS2015, bộ đệm nằm trong :
%AppData%\..\Local\Microsoft\VisualStudio\14.0\ComponentModelCache.

Đối với VS2013:
%AppData%\..\Local\Microsoft\VisualStudio\12.0\ComponentModelCache

Đối với VS2012:
%AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache


1
Hóa ra đó là chương trình chống vi-rút avast ... Cảm ơn ý kiến ​​của bạn!
Cristy

Tôi gặp vấn đề tương tự và nguyên nhân sâu xa cũng là ứng dụng chống vi-rút
mspoerr

1

Vì vậy, như tôi thấy Cristy đã giải quyết vấn đề và điều đó là tốt. Nhưng, không có ý định xúc phạm, câu trả lời không đầy đủ. Tôi đã từng gặp vấn đề tương tự:

  • Cộng đồng VS 2015 (mới cài đặt)
  • Chương trình C ++ khiến VS bị treo khi thực thi và quá trình cần phải chấm dứt
  • Quá trình chương trình C ++ không thể bị giết trong taskmanager hoặc CMD

Như Cristy đã chỉ ra, đó là do Avast. Bạn có thể dừng dịch vụ Avast Antivirus trong services.msc và quá trình này sẽ tự chấm dứt, bạn có thể thực hiện thủ công.

Để tránh sự cố trong tương lai, bạn có thể truy cập Avast Paramameter >> Active Protection >> Personalize >> bỏ chọn tùy chọn "Quét chương trình khi thực thi".

Điều này làm việc cho tôi và bây giờ tôi có thể chạy các chương trình của mình và chúng không bị treo.

Mong rằng sẽ giúp.


-1

Tôi gặp vấn đề này trong các cửa sổ VS 2012 7. Nguyên nhân gốc là Avast Antivirus. Khắc phục là vô hiệu hóa Avast bất cứ khi nào cần để hoạt động trên các ứng dụng bảng điều khiển C ++ (hoặc) Truy cập Cài đặt Avast> Bảo vệ chủ động> Bảo vệ hệ thống tệp (Tùy chỉnh)> bỏ chọn chương trình Quét khi thực thi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.