Jump to content


Photo

Link Para Arquivo, Ou Melhor, Atalho


  • Faça o login para participar
8 replies to this topic

#1 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 31/07/2007, 16:37

Existe alguma forma de criar um atalho para um arquivo ou pasta? Por exemplo eu tenho um diretório

root
|__classes
|__arquivos
|__Upload
| |__Livre
| |__Privado
| |__ARQUIVO.EXTENSÃO
|_painel

Vamos imaginar que eu não quero acessar o arquivo usando o caminho direto para ele, (ele é o arquivo) o arquivo esta dentro de Privado, como fazer um atalho para que eu acesse os arquivos como se fosse

root
|__classes
|__arquivos
|__Upload
| |__Livre
| |__Privado
|_painel
|__ARQUIVO.EXTENSÃO

Entendeu? painel/arquivo.extensão e não Upload/Privado/arquivo.extensão

Falopa!

#2 B!ö$

B!ö$

    12 Horas

  • Usuários
  • 129 posts
  • Sexo:Masculino
  • Localidade:Randômico

Posted 31/07/2007, 16:46

Bom, acho que pelo oque entendi você poderia usar a fomosa url açucarada...
http://brunotorres.net/urls

Abraços

#3 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 31/07/2007, 16:54

Não, não mesmo. heheh

Eu quero criar atalhos para arquivos, para ser acessado dentro do diretório de arquivos e não via web.

Atalho, sabe, tipo pra quem usa windows... botão direito, criar atalho ou botão direito, novo, atalho.

Falopa!

#4 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 31/07/2007, 22:05

Eu quero criar atalhos para arquivos, para ser acessado dentro do diretório de arquivos e não via web.

Atalho, sabe, tipo pra quem usa windows... botão direito, criar atalho ou botão direito, novo, atalho.

Perfeitamente possível com a biblioteca COM. Exemplo básico:

<?php

function createShortcut($target, $path, $name, $description = null)
{
	$shl = new COM('WScript.Shell');
	$fso = new COM('Scripting.FileSystemObject');

	$shortcut = $shl->CreateShortcut("$path/$name.lnk");

	$shortcut->TargetPath  = $target;

	if (!empty($description)) {
		$shortcut->Description = $description;
	}

	if (($startup_path = $fso->GetParentFolderName($target)) &&
		$fso->FolderExists($startup_path)) {
		$shortcut->WorkingDirectory = $startup_path;
	}
	
	$shortcut->Save();
}

createShortcut('C:\WINDOWS\notepad.exe', 'C:', 'Atalho');

?>
Para personalização, consultar a referência da biblioteca WSH (Windows Scripting Host) da API do Windows. ;)

PS: Conheci a WSH brincando de VBScript no Windows... :P

[]’s :DAté mais

#5 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 01/08/2007, 11:28

@ PAULO RICARDO
Interessante, mas, deixa eu tirar algumas dúvidas, quando eu executo esta função ela cria um arquivo de atalho ou apenas um link "simbólico"?

Se ela cria arquivo de atalho, quando eu for acessar o arquivo "X" eu devo apontar para o atalho assim:
filesize("ENDERECO_DO_ATALHO")
Isso me daria as informações relativas ao arquivo (tamanho em bytes)?

Quando eu quiser fazer o download do arquivo usando header() eu posso apontar para o atalho? Isso iria forçar o download do atalho ou do arquivo?

Falopa!

#6 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 01/08/2007, 11:53

Interessante, mas, deixa eu tirar algumas dúvidas, quando eu executo esta função ela cria um arquivo de atalho ou apenas um link "simbólico"?

Como qualquer atalho do Windows, ele cria um arquivo de atalho (extensão LNK). :assobio: A propósito, por padrão, não existe link simbólico no Windows, só existirá se tu instalar a ferramenta Junction de Mark Russinovich, que aliás, é apenas para plataformas baseadas no NT. No caso de diretórios, poderia ser utilizado o recurso de mapeamento de unidades, mas mesmo assim não seria lá aquelas coisas, uma vez que há um limite muito pequeno para isso, sem contar a impossibilidade de se trabalhar com arquivos. :(

Se ela cria arquivo de atalho, quando eu for acessar o arquivo "X" eu devo apontar para o atalho assim:

filesize("ENDERECO_DO_ATALHO")
Isso me daria as informações relativas ao arquivo (tamanho em bytes)?

Quando eu quiser fazer o download do arquivo usando header() eu posso apontar para o atalho? Isso iria forçar o download do atalho ou do arquivo?

Todas funções iriam trabalhar com o atalho, e não com o arquivo de destino. Para tal, tu teria de, após identificar o atalho, ler o target dele. Isto seria basicamente assim:

<?php

function getShortcutPath($path)
{
$shl = new COM('WScript.Shell');
$shortcut = $shl->CreateShortcut($path);

return $shortcut->TargetPath;
}

print getShortcutPath('C:\Atalho.lnk');

?>

[]’s :DAté mais

#7 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 01/08/2007, 12:07

Então isso não funciona em sistemas *unix? Agora complicou...

Falopa!

#8 Paulo Freitas

Paulo Freitas

    ××××××× LRU #456504 ××××××× ××××××× LRM #364686 ×××××××

  • Ex-Admins
  • 5612 posts
  • Sexo:Masculino
  • Localidade:Campinas - SP

Posted 01/08/2007, 12:49

Eu quero criar atalhos para arquivos, para ser acessado dentro do diretório de arquivos e não via web.

Atalho, sabe, tipo pra quem usa windows... botão direito, criar atalho ou botão direito, novo, atalho.

Então isso não funciona em sistemas *unix? Agora complicou...

Eita nóis! (sic) Porque você não disse isso antes... :assobio:
[]’s :DAté mais

#9 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 01/08/2007, 13:00

@ PAULO RICARDO
Eu tinha dito isso pro cara lá que pensou que eu queria fazer URL amigável. Somente para exemplificar o que eu queria fazer e não continuar estendendo o tópico inutilmente.

Falopa!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq