Pergunta

Nós só fizemos um movimento de armazenar todos os arquivos localmente para uma unidade de rede. Problema é que é onde meus projetos VS também são armazenados agora. (Nenhum sistema de controle de versão, no entanto, a trabalhar nisso.) Eu sei que eu ouvi falar de problemas com isso no passado, mas nunca ouvi falar de um trabalho em torno. Existe um trabalho em torno?

Assim, a minha VS está instalado localmente. Os arquivos estão em uma unidade de rede. Como posso chegar a este trabalho?

EDIT:? Eu sei que deve ser feito, mas existe um band-aid posso colocar agora para corrigir isso e manter a unidade de rede

EDIT 2: Eu tenho certeza que eu não estou entendendo alguma coisa, mas Bob king tem a idéia certa. Vou trabalhar com o desenvolvedor web chumbo quando ele voltar para o escritório para descobrir uma solução temporária até que tenhamos algum tipo de configuração de controle de versão. Obrigado pelas ideias.

Foi útil?

Solução

Enquanto fazemos uso de controle de origem, nós também não executar todos os nossos projetos de unidades de rede (não diretórios compartilhados, diretórios privados em unidades de rede). As unidades de rede são apoiadas todas as noites, e também usar Volume Shadow Copy, então se você precisar reverter para algo antes que fez jeito É a SC, então você pode.

Para obter projectos para funcionar correctamente com a permissão à direita, siga estes passos .

Basicamente, você só tem que mapear o diretório compartilhado para uma unidade e, em seguida, conceder permissão, com base nessa URL, a todo o código. Digamos que você mapear para "N: \", então use "N: \ *" como o seu padrão de URL. Não é óbvio que você precisa de curinga, mas você faz.

Outras dicas

A questão é bastante genérica, então eu vou dar uma resposta a um problema que estava enfrentando.

Eu executar o Visual Studio 2010 usando um Parallels máquina virtual no meu Mac, mantendo todos os meus projetos no lado do mac através de um compartilhamento de rede. Visual Studio, contudo, não iria carregar os projetos de montagem de arquivos de lá. Tentando definir os direitos de utilização de "caspol" por si só não ajudou no meu caso.

O que finalmente funcionou para mim para permitir que Visual Studio para montagens de carga a partir de um compartilhamento de rede foi para editar o arquivo "C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ devenv.exe.config". (Assumindo uma instalação padrão)

no XML "" seção, você tem que adicionar

<loadFromRemoteSources enabled="true"/>

Você pode ter que alterar as permissões nesse arquivo para permitir o acesso de escrita. Salve o arquivo. Reinicie o Visual Studio.

No interesse da verdade, respondendo à pergunta, eu copiei este comentário de jcarle.com:

compartilhamentos de rede de confiança com Visual Studio 2010 / .NET Framework v4.0

20 de janeiro de 2011 04:10 Se você é como eu e você armazenar todo o seu código em um servidor, você terá provavelmente aprendeu sobre confiar em um compartilhamento de rede usando CasPol.exe. No entanto, quando se deslocam a partir do Visual Studio 2008 (.NET Framework 2.0 / 3.0 / 3.5) até Visual Studio 2010 (.NET Framework 4.0), você pode encontrar-se coçando a cabeça.

Se você está acostumado a usar o comando Visual Studio Prompt de obter rapidamente a Caspol, você pode achar que alguns de seus projetos não parecem respeitar as novas configurações FullTrust. A razão é que, a menos que você está pagando cuidadosamente atenção, do Visual Studio Comando padrões prompt para adicionar a pasta .NET Framework 4.0 para o seu caminho. Se o seu projeto ainda está sendo executado em .NET Framework 2.0 / 3.0 / 3.5, será necessário definir Caspol para essas versões também. Apenas uma nota, eu também tive pessoalmente mais sucesso com o uso de 1 como um grupo de códigos em vez de 1.2.

Para confiar em um compartilhamento de rede para todas as versões do .NET Framework, basta ligar para Caspol para cada versão usando o caminho completo como abaixo:

C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ caspol -m AG 1 URL file: // YourSharePath * FullTrust
C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ caspol -m AG 1 URL file: // YourSharePath * FullTrust

Eu não recomendo fazer isso se você tiver (ou mesmo se você não tem) várias pessoas que estão trabalhando em projetos. Você está apenas pedindo para ter problemas.

Se você é o único a trabalhar nele, por outro lado, você vai evitar muitos dos problemas. Desempenho vai para fora da janela, no entanto. Tanto quanto como obtê-lo para o trabalho, basta abrir o arquivo de solução de VS. Você provavelmente vai correr em questões de segurança, mas pode corrigir isso usando Caspol. Como eu disse, no entanto, o desempenho vai ser terrível. Novamente, não é recomendado a todos.

Faça você mesmo e sua equipe um favor e instalar SVN ou alguma outra forma de controle de origem e colocar o código de lá o mais rápido possível.

EDIT: Eu vou parcialmente retrair meus comentários. Bob King explica abaixo a razão que eles executar projetos VS a partir de uma unidade de rede e faz sentido. Eu diria que a menos que você está fazendo isso por uma razão específica, como Bob, ficar longe dela. Caso contrário, obter os seus patos em uma fileira antes da criação de um tal ambiente de desenvolvimento.

Eu entendo esta é uma discussão mais velho, mas este foi o melhor fio que eu encontrei quando olhando para resolver um problema semelhante que eu tinha visual studio 2013 em um caixa virtual (usando Win 8.1) e o código na máquina host (Win 7 ). Embora eu poderia abrir a solução, eu não poderia compilar. Todas as outras respostas nesta relacionar com software mais antigo, por isso estou adicionando esta resposta para atualizar esta pergunta frequentemente encontrado com a solução que funcionou para mim.

Aqui está o que eu fiz; Fez uma entrada de registro para ser capaz de usar um caminho UNC como o diretório atual.

AVISO: Usar o Editor do Registro incorretamente pode causar problemas sérios no sistema que talvez exijam a reinstalação do Windows NT para corrigi-los. A Microsoft não garante que os problemas resultantes do uso do Editor do Registro possam ser resolvidos. Use essa ferramenta por risco e conta própria.

De acordo com o caminho do Registro: HKEY_CURRENT_USER \Programas \ Microsoft Processador \ Command

adicionar o valor DisableUNCCheck REG_DWORD e defina o valor para 0 x 1 (Hex).

AVISO: Se você ativar esse recurso e iniciar uma consola que tenha um diretório atual de um nome UNC, iniciar aplicações a partir desse console e, em seguida, fechar o console, que poderia causar problemas nas aplicações iniciados a partir desse console

encontrou esta informação no link: http://support.microsoft.com/kb/156276

Que tal reformular isso em uma pergunta que todo mundo pode responder? Eu tenho exatamente o mesmo problema que o cartaz inicial.

Eu tenho uma cópia do VB 2008 (recentemente atualizado a partir de VB6). Se eu guardar minhas soluções na unidade de rede backup, então ele não vai executar uma única coisa que nunca. Dá erros "chamador parcialmente confiável" para aceder a um módulo, mesmo quando "AllowPartiallyTrustedCallers" está definida na assembléia. Se eu armazenar os arquivos no meu (não apoiado) C :, em seguida, ele irá correr maravilhosamente, até que eu colocá-lo na unidade de compartilhamento para que todos possam usar, e eu estou de volta ao meu mesmo problema.

Este não é um grande pedido. Eu só quero ser capaz de colocar uma solução e executável na unidade de compartilhamento e executá-lo sem uma quantidade absurda de absurdo sobre segurança. Eu não deveria ter que enfiar todo o meu trabalho em arquivos de formulário.

-Edit: Eu encontrei o problema com porque ele foi ignorando o comando AllowPartialllyTrustedCallers. Eu estou tentando fazer referência a ADODB, que não permitem parcialmente confiável. Então, não executável rede podem acessar um banco de dados? O que a Microsoft tem contra intranets de qualquer maneira?

Não faça isso. Se você tem o controle de origem (versões), você não deseja que seus arquivos em uma unidade de rede. É totalmente ignora tudo o que você deseja alcançar, usando controle de origem, porque uma vez que seus arquivos estão em uma unidade de rede, qualquer pessoa pode modificá-los .... mesmo quando você está actualmente a construir seu projeto. Ka-boooom!

PS:. Isso soa como um caso típico de excesso de engenharia para me

Você está tendo problemas específicos?

Se você permitir que mais de uma pessoa para abrir a solução, o seu primeiro problema será que o ficheiro.NCB (Intellisense) será bloqueado exclusivamente e apenas um usuário será capaz de navegar na árvore de classe. E, claro, você tem o potencial para alterações de um usuário para substituir as alterações do outro usuário.

Então, eu estava tendo um problema semelhante. Visual Studio não reconheceria um local de rede que eu tinha mapeado para uma letra de unidade para qualquer coisa. O engraçado é que ele trabalhou por um dia. Eu configurar meu projeto e começou a trabalhar nele e não tinha problemas. Então, eu desligar e no dia seguinte nada funciona. Eu não poderia ler / arquivos de escrita em código, saída meus executáveis ??ou qualquer coisa. Meu projeto é local, mas a minha saída foi concebido para ser jogado em cima da rede.

De qualquer forma, o problema é provavelmente sobre o contexto administrador, mas uma maneira de corrigi-lo que eu achei enquanto cavando ao redor on-line é fazer com que Visual Studio para navegar para a unidade em questão de alguma forma. Há muitas maneiras de fazer isso, mas VS irá magicamente ser capaz de reconhecer letras de unidade mapeada. Minha solução é ir a saída de depuração Localização nas propriedades do projeto, clique em Procurar e ir para o meu local de saída feito anteriormente na minha unidade de rede e Voila !!!

Eu queria colocar isso porque passei metade de um dia tentando descobrir isso e percebi que poderia salvar alguém algum tempo. Muito obrigado e boa sorte !!!

Erik

Eu estava enfrentando o mesmo problema apenas recentemente assim que esta resposta é mais por uma questão de manter o controle de meu próprio conhecimento. De qualquer forma, deve soumeone achar que é útil, a seguir é o problema ea solução.

Issue: NET projectos 4.0, SVN repo, pastas de checkout estão em unidades locais, assemblies referenciados são construídas por servidor de compilação e disponível em uma unidade de rede. Visual estúdio no W7 é capaz de adicionar a referência, mas incapaz de projectos de construção.

Solução: Desde NET 4.0 não fornece automaticamente uma caixa de areia mais para os conjuntos de rede, você tem que fazer aqueles full-confiável via atualização machine.config. http://msdn.microsoft.com/en-us/library/dd409252.aspx

Se eu entendi corretamente, seus arquivos de projeto Visual Studio são armazenados na unidade de rede e você estiver executando-los de lá. Isto é o que eu faço e não têm quaisquer problemas. Você vai precisar para se certificar de que você definiu a política de segurança. Você pode usar Caspol para fazer isso, ou através do menu de ferramentas de controle painel de administração.

Você deve ser avisado de que algum recurso no Visual Studio irá se recusar a trabalhar com unidade de rede.

Por exemplo, mdf de instância de usuário do SQL Express deve estar localizado na unidade local.

Para outro exemplo, se você usar o caminho UNC, você tem que ter certeza que eles são curtos enought.

i acharam isso útil ao tentar uso VC11 com paralelos que se deslocam sobre mac: http: //social.msdn .microsoft.com / Fóruns / en-US / toolsforwinapps / thread / 2ffdcb01-c511-4961-834b-afd5f2fbb8e1 , e especificamente:

1) Você pode mudar de depuração local para depuração remota e definir o nome da máquina como 'localhost'. Isso vai fazer uma implantação remoto em sua máquina local (portanto, não usando o diretório do projeto). Você não precisa para instalar as ferramentas depurador remoto, nem começar msvsmon para que isso funcione em localhost.

Em caso isso ajude alguém, eu tinha que fazer as etapas descritas aqui para adicionar o local de compartilhamento de rede para o Windows zona da intranet. Em particular, eu estava tendo problemas com Visual Studio pendurado na carga ao abrir uma solução em um compartilhamento de rede (ou seja, usando o VMware Fusion e abrindo uma solução a partir do disco rígido do meu Mac). Eu também tive problemas com PostSharp execução neste cenário.

Eu tive um problema semelhante com a abertura de projetos do Visual Studio em uma unidade de rede, e eu fixa-lo através da criação de um link simbólico no meu local C: \ unidade que aponta para o diretório UNC

por exemplo.

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

então você pode simplesmente abrir o projeto usando o C: \ Users \ Auto \ Documents \ caminho, em vez do caminho UNC

(Você tem que ter cuidado, porque o Visual Studio automaticamente irá redirecioná-lo para o caminho '\\ domain.net ..' se fizer duplo clique no link simbólico quando você está navegando para o projeto. Eu tive que copiar colar o 'C: \ Users \' caminho para obtê-lo para abrir com o caminho letra da unidade)

"Como posso chegar a este trabalho?" Você tem um par de opções:

Escolha A: 1. Mova todos os arquivos de volta para o disco rígido local 2. Implementar algum tipo de software de backup em sua máquina 3. Teste a dita solução de backup 4. Mantenha-se na codificação

Escolha B: 1. Obter uma cópia de um dos produtos livres de controle de origem e de implementá-lo. 2. Certifique-se que está sendo feito backup 3. Teste-lo

Escolha C: Use um dos muitos controle de origem ONLINE repositórios disponíveis. Google, SourceForge, CodePlex, alguma coisa.

Bem, a minha pergunta seria por que você está perguntando isso. Não está funcionando quando você está armazenando-o em uma unidade de rede? Eu não tentei isso mesmo, e um problema que eu poderia imaginar seria que o código .NET em execução a partir de uma unidade de rede (ie. A partir do bin \ Debug, também localizado na unidade de rede) seria executado em um modo seguro, a menos que você mexer com caspol (ou use 3.5 SP1 que ouço removeu esse obstáculo).

Se você tem problemas específicos, perguntar sobre eles. Nunca pergunte "Por que está fazendo X não está funcionando?".

Você não está dizendo se você é apenas uma pessoa ou várias pessoas acessando a mesma unidade remota, mas eu estou supondo que você é apenas um para cada diretório de rede. Isso é correto? Se não, não, não há nenhuma band-aid. Obter o controle de versão, mover os arquivos para um disco local.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top