문제

방금 모든 파일을 로컬로 저장하여 네트워크 드라이브로 이동했습니다. 문제는 내 VS 프로젝트도 지금 저장되는 곳입니다. (아직 버전 관리 시스템은없고, 그 일을하고 있습니다.) 나는 과거에 이것을하는 데 문제가 있다는 것을 들었지만, 일에 대해 들어 본 적이 없습니다. 주변의 작업이 있습니까?

그래서 내 대 VS가 로컬로 설치됩니다. 파일은 네트워크 드라이브에 있습니다. 이것을 어떻게 작동시킬 수 있습니까?

편집 : 나는 무엇을 해야하는지 알고 있지만 지금 당장 그것을 수정하고 네트워크 드라이브를 유지하기 위해 바로 넣을 수있는 반창고가 있습니까?

편집 2 : 나는 무언가를 이해하지 못한다고 확신하지만 밥 킹 올바른 아이디어가 있습니다. 우리가 일종의 버전 제어 설정을 얻을 때까지 임시 솔루션을 찾기 위해 사무실로 돌아 왔을 때 리드 웹 개발자와 함께 일할 것입니다. 아이디어에 감사드립니다.

도움이 되었습니까?

해결책

우리는 소스 제어를 사용하는 동안 네트워크 드라이브 (공유 디렉토리, 네트워크 드라이브의 개인 디렉토리)에서 모든 프로젝트를 실행합니다. 네트워크 드라이브는 야간에 백업되며 볼륨 섀도우 사본도 사용하므로 무언가로 되돌려야하는 경우 ~ 전에 그것은 SC로가는 방법을 만들었습니다.

올바른 권한으로 프로젝트를 올바르게 실행하려면 이 단계.

기본적으로 공유 디렉토리를 드라이브에 매핑 한 다음 해당 URL에 따라 모든 코드에 권한을 부여해야합니다. "n : "에 맵핑 한 다음 "n : *"를 URL 패턴으로 사용한다고 가정하십시오. 와일드 카드가 필요하지는 않지만 그렇게합니다.

다른 팁

질문은 다소 일반적이므로 내가 직면 한 한 가지 문제에 대한 답을 줄 것입니다.

네트워크 공유를 통해 Mac 측의 모든 프로젝트를 유지하면서 Mac의 Parallels Virtual Machine을 사용하여 Visual Studio 2010을 실행합니다. 그러나 Visual Studio는 프로젝트 어셈블리 파일을로드하지 않습니다. "caspol"만 사용하여 권리를 설정하려고 시도하는 것은 내 경우에 도움이되지 않았습니다.

Visual Studio가 네트워크 공유에서 어셈블리를로드하도록 허용하는 것은 "C : Program Files (x86) Microsoft Visual Studio 10.0 Common7 IDE devenv.exe.config"(기본값을 가정하는 것입니다. 설치).

XML에서 "u003Cruntime> "섹션을 추가해야합니다

<loadFromRemoteSources enabled="true"/>

쓰기 액세스를 허용하려면 해당 파일의 권한을 변경해야 할 수도 있습니다. 파일을 저장하십시오. Visual Studio를 다시 시작하십시오.

실제로 질문에 답하는 이익을 위해이 의견을 Jcarle.com에서 복사했습니다.

Visual Studio 2010 / .NET Framework v4.0과 네트워크 공유 신뢰

2011 년 1 월 20 일 오후 4시 10 분에 나와 같은 사람이고 모든 코드를 서버에 저장하면 caspol.exe를 사용하여 네트워크 공유를 신뢰하는 것에 대해 배웠을 것입니다. 그러나 Visual Studio 2008 (.NET Framework 2.0/3.0/3.5)에서 Visual Studio 2010 (.NET Framework 4.0)으로 이동하면 머리를 긁을 수 있습니다.

Visual Studio 명령 프롬프트를 사용하여 CASPOL에 빠르게 도착하는 데 익숙한 경우 일부 프로젝트가 새로운 풀 트러스트 설정을 존중하지 않는 것 같습니다. 그 이유는주의 깊게주의를 기울이지 않는 한 Visual Studio 명령이 기본적으로 .NET Framework 4.0 폴더를 경로에 추가하도록 자극하기 때문입니다. 프로젝트가 .NET Framework 2.0/3.0/3.5에서 여전히 실행중인 경우 해당 버전에 CASPOL을 설정해야합니다. 메모에 따르면, 나는 또한 1을 1.2 대신 코드 그룹으로 사용하는 데 개인적으로 더 많은 성공을 거두었습니다.

.NET 프레임 워크의 모든 버전에 대한 네트워크 공유를 신뢰하려면 다음과 같이 전체 경로를 사용하여 각 버전에 대해 Caspol을 호출하기 만하면됩니다.

C : Windows Microsoft.net Framework V2.0.50727 Caspol -M -Ag 1 -url 파일 : // YoursharePath* FullTrust
C : Windows Microsoft.net Framework V4.0.30319 CASPOL -M -AG 1 -URL 파일 : // YourSharePath* FullTrust

프로젝트를 수행하는 여러 사람이있는 경우 (또는 그렇지 않은 경우에도)하는 것이 좋습니다. 당신은 단지 문제를 요구합니다.

반면에 당신이 그것에 대해 일하는 유일한 사람이라면, 많은 문제를 피할 것입니다. 그러나 성능은 창 밖으로 나가고 있습니다. 작업을 수행하는 방법에 따라 Vs에서 솔루션 파일을 열 수 있습니다. 보안 문제가 발생하지만 CASPOL을 사용하여 수정할 수 있습니다. 그러나 내가 말했듯이, 성능은 끔찍할 것입니다. 다시 말하지만 전혀 추천하지 않습니다.

자신과 팀에게 호의를 베풀고 SVN 또는 다른 형태의 소스 제어를 설치하고 코드를 최대한 빨리 넣으십시오.

편집 : 댓글을 부분적으로 철회하겠습니다. Bob King은 아래에서 네트워크 드라이브에서 프로젝트를 실행하는 이유를 아래에 설명하며 의미가 있습니다. 나는 당신이 밥과 같은 특정한 이유로 그것을하지 않는 한, 그것을 멀리하십시오. 그렇지 않으면, 그러한 개발 환경을 설정하기 전에 오리를 연속으로 가져 가십시오.

나는 이것이 오래된 스레드라는 것을 이해하지만, 이것은 가상 상자에서 Visual Studio 2013 (Win 8.1 사용)과 호스트 머신의 코드 (Win 7)에서 Visual Studio 2013을 가진 유사한 문제를 해결하려는 가장 좋은 스레드였습니다. 솔루션을 열 수 있었지만 컴파일 할 수 없었습니다. 이에 대한 다른 모든 답변은 이전 소프트웨어와 관련이 있으므로이 답변을 추가하여 자주 찾은 질문을 저에게 적합한 솔루션으로 업데이트합니다.

내가 한 일은 다음과 같습니다. UNC 경로를 현재 디렉토리로 사용할 수 있도록 레지스트리 항목을 만들었습니다.

경고 : 레지스트리 편집기를 잘못 사용하면 심각한 시스템 전체의 문제가 발생하여 Windows NT를 다시 설치하여 수정해야 할 수 있습니다. Microsoft는 레지스트리 편집기 사용으로 인한 모든 문제를 해결할 수 있다고 보장 할 수 없습니다. 이 도구는 자신의 위험에 따라 사용하십시오.

레지스트리 경로 아래 : hkey_current_user Software Microsoft 명령 프로세서

값 disableucleunccheck reg_dword를 추가하고 값을 0 x 1 (16 진)로 설정하십시오.

경고 :이 기능을 활성화하고 UNC 이름의 현재 디렉토리가있는 콘솔을 시작한 경우 해당 콘솔에서 응용 프로그램을 시작한 다음 콘솔을 닫으면 해당 콘솔에서 시작된 응용 프로그램에서 문제가 발생할 수 있습니다.

이 정보는 링크에서 다음과 같습니다. http://support.microsoft.com/kb/156276

우리는 이것을 모든 사람이 대답 할 수있는 질문으로 다시 표현하는 것은 어떻습니까? 초기 포스터와 똑같은 문제가 있습니다.

VB 2008 (최근 VB6에서 업그레이드 됨) 사본이 있습니다. 내 솔루션을 백업 네트워크 드라이브에 저장하면 하나의 일이 실행되지 않습니다. "alleterParticlyTrustedCallers"가 어셈블리에 설정된 경우에도 모듈에 액세스하기위한 "부분적으로 신뢰할 수있는 발신자"오류를 제공합니다. 파일을 내 (백업되지 않음) C :에 저장하면 모든 사람이 사용할 수있는 공유 드라이브에 올릴 때까지 놀랍게 실행되며 같은 문제로 돌아갑니다.

이것은 큰 요청이 아닙니다. 나는 단지 Share Drive에 솔루션과 실행 파일을 넣고 보안에 대한 터무니없는 양의 넌센스없이 실행할 수 있기를 원합니다. 나는 모든 작업을 양식 파일에 넣을 필요가 없습니다.

-EDIT : allowPartialLlyTrustedCallers 명령을 무시한 이유에 대한 문제를 발견했습니다. 부분적으로 신뢰할 수없는 ADODB를 참조하려고합니다. 따라서 네트워크 실행 파일이 데이터베이스에 액세스 할 수 없습니까? 마이크로 소프트는 어쨌든 인트라넷에 대해 무엇을 가지고 있습니까?

하지 마십시오. 소스 컨트롤 (버전)이있는 경우 네트워크 드라이브에서 파일을 원하지 않습니다. 파일이 네트워크 드라이브에 있으면 누구나 프로젝트를 구축하는 동안에도 누구나 수정할 수 있기 때문에 소스 컨트롤을 사용하여 달성하려는 모든 것을 완전히 우회합니다. ka-booooom!

추신 : 이것은 나에게 과도한 엔지니어링의 전형적인 사례처럼 들립니다.

구체적인 문제가 있습니까?

한 사람 이상이 솔루션을 열도록 허용하는 경우 첫 번째 문제는 .NCB 파일 (Intellisense)이 독점적으로 잠겨 있고 한 명의 사용자 만 클래스 트리를 탐색 할 수 있다는 것입니다. 물론 한 사용자의 변경으로 다른 사용자의 변경 사항을 덮어 쓸 수 있습니다.

그래서 비슷한 문제가있었습니다. Visual Studio는 내가 드라이브 레터를 위해 매핑 한 네트워크 위치를 인식하지 못했습니다. 재미있는 것은 하루 동안 일했다는 것입니다. 나는 프로젝트를 설정하고 작업을 시작했고 아무런 문제가 없었습니다. 그런 다음 나는 문을 닫고 다음날 아무것도 효과가 없습니다. 코드에서 파일을 읽거나 쓸 수 없었거나 실행 파일을 출력 할 수 없었습니다. 내 프로젝트는 로컬이지만 내 출력은 네트워크에 버려졌습니다.

어쨌든, 문제는 아마도 관리자 컨텍스트에 관한 것이지만 온라인에서 파는 동안 찾은 한 가지 방법은 Visual Studio가 문제의 드라이브를 탐색하도록하는 것입니다. 이 작업을 수행하는 방법에는 여러 가지가 있지만 대 VS는 매핑 된 드라이브 문자를 인식 할 수 있습니다. 내 솔루션은 프로젝트 속성의 디버그 출력 위치로 이동하고 탐색을 클릭하고 내 네트워크 드라이브 및 Voila의 이전에 만든 출력 위치로 이동하는 것입니다 !!!

반나절을 보내려고 반나절을 보냈고 다른 시간을 다른 사람을 구할 수 있다고 생각했기 때문에 나는 이것을 올려 놓고 싶었다. 감사합니다. 행운을 빕니다 !!!

에릭

나는 최근에 같은 문제에 직면하고 있었기 때문에이 대답은 내 자신의 지식을 추적하기위한 것입니다. 어쨌든, Soumeone이 유용하다고 생각하면 아래는 문제와 해결책입니다.

문제 : NET 4.0 프로젝트, SVN 리포지토리, 체크 아웃 폴더는 로컬 드라이브에 있으며, 참조 어셈블리는 빌드 서버를 통해 빌드되며 네트워크 드라이브에서 사용할 수 있습니다. W7의 Visual Studio는 참조를 추가 할 수 있지만 프로젝트를 구축 할 수는 없습니다.

솔루션 : NET 4.0은 더 이상 네트워크 어셈블리를위한 샌드 박스를 자동으로 제공하지 않으므로 Machine.config 업데이트를 통해 완전 트러스트를해야합니다. http://msdn.microsoft.com/en-us/library/dd409252.aspx

내가 당신을 올바르게 이해한다면, 당신의 Visual Studio 프로젝트 파일은 네트워크 드라이브에 저장되며 당신은 거기에서 그것을 실행하고 있습니다. 이것이 내가하는 일이며 아무런 문제가 없습니다. 보안 정책을 설정했는지 확인해야합니다. 당신이 사용할 수있는 카스폴 이를 수행하거나 제어판 Aadmin 도구 메뉴를 통해.

Visual Studio의 일부 기능은 Network Drive와의 작업을 거부 할 것임을 경고해야합니다.

예를 들어, SQL Express 사용자 인스턴스의 MDF 파일은 로컬 드라이브에 있어야합니다.

다른 예를 들어, UNC 경로를 사용하는 경우 충분히 짧은 지 확인해야합니다.

Mac에서 실행되는 Parallels와 함께 vc11을 사용하려고하는 동안 이것이 도움이된다는 것을 알았습니다.http://social.msdn.microsoft.com/forums/en-us/toolsforwinapps/thread/2ffdcb01-c511-4961-834b-afd5fbb8e1, 구체적으로 :

1) 로컬 디버깅에서 원격 디버깅으로 전환하고 기계 이름을 'LocalHost'로 설정할 수 있습니다. 이것은 로컬 컴퓨터에서 원격 배포를 수행합니다 (따라서 프로젝트 디렉토리를 사용하지 않음). LocalHost에서 작동하기 위해 원격 디버거 도구를 설치하거나 MSVSMON을 시작할 필요가 없습니다.

이것이 다른 사람을 돕는 경우, 나는 설명 된 단계를 수행해야했습니다. 여기 Windows 인트라넷 영역에 네트워크 공유 위치를 추가합니다. 특히, 네트워크 공유에서 솔루션을 열 때 (예 : VMware Fusion을 사용하고 Mac의 하드 드라이브에서 솔루션을 열 때) Visual Studio가 부하에 매달려있는 데 어려움을 겪고있었습니다. 또한이 시나리오에서 PostSharp가 실행하는 데 문제가있었습니다.

네트워크 드라이브에서 Visual Studio 프로젝트를 열는 것과 비슷한 문제가 있었고 UNC 디렉토리를 가리키는 로컬 C : 드라이브에 상징적 링크를 만들어 고정했습니다.

예를 들어

mklink /D "C:\Users\Self\Documents" "\\domain.net\users\self\My Documents"

그런 다음 UNC 경로 대신 C : Users Self Documents Path를 사용하여 프로젝트를 열 수 있습니다.

(비주얼 스튜디오가 ' domain.net으로 자동 리디렉션을 방향 전환하기 때문에 조심해야합니다.'경로 프로젝트를 탐색 할 때 심볼 링크를 두 번 클릭하면 'C :'를 복사해야했습니다. user '경로는 드라이브 문자 경로와 함께 열도록합니다)

"어떻게 작동하도록 할 수 있습니까?" 몇 가지 선택이 있습니다.

선택 A : 1. 모든 파일을 로컬 하드 드라이브로 다시 이동 2. 컴퓨터에서 일부 유형의 백업 소프트웨어 구현 3. 테스트 백업 솔루션 4. 계속 코딩

선택 B : 1. 무료 소스 제어 제품 중 하나의 사본을 받고 구현하십시오. 2. 백업 중인지 확인하십시오. 3. 테스트

선택 C : 사용 가능한 많은 온라인 소스 제어 저장소 중 하나를 사용하십시오. Google, Sourceforge, CodePlex, 뭔가.

글쎄, 내 질문은 당신이 왜 이것을 묻는 지에 대한 것입니다. 네트워크 드라이브에 저장할 때 작동하지 않습니까? 나는 이것을 직접 시도하지 않았으며, 제가 생각할 수있는 한 가지 문제는 네트워크 드라이브 (즉, Bin Debug 디렉토리에서 네트워크 드라이브에있는 Bin Debug 디렉토리에서)에서 실행되는 .NET 코드가 샌드 박스 모드에서 실행될 것이라는 점입니다. Caspol을 엉망으로 만들지 않는 한 (또는 내가 듣는 3.5 SP1을 사용하여 그 장애물을 제거했습니다).

구체적인 문제가 있으면 문제에 대해 물어보십시오. "X가 왜 작동하지 않습니까?"묻지 마십시오.

당신은 당신이 한 사람이나 여러 사람이 동일한 원격 드라이브에 액세스하는 경우가 아니라면 각 네트워크 디렉토리마다 하나만 있다고 가정합니다. 이 올바른지? 그렇지 않다면, 아니요, 반창고는 없습니다. 버전 제어를 얻고 파일을 로컬 디스크로 다시 이동하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top