«

»

Sep 02

Print this Post

Como determinar a quantidade de espaço livre em um volume?

Atualmente não há uma funcionalidade embutida no ColdFusion para executar essa tarefa. Se o ColdFusion não pode fazê-lo nativamente, a melhor opção para este tipo de tarefa é usualmente chamar uma classe Java diretamente do ColdFusion. Infelizmente, parece não haver nenhum meio interno nas versões atuais do Java para executar essa tarefa. A boa notícia  no front Java é que a classe File do Java 6 (Mustang) terá os métodos  getUsableSpace() e getTotalSpace() methods.

Se voce estiver num ambiente Windows, voce pode usar COM para realizar essa tarefa. Rob Brooks-Bilson criou uma função customizada no CFLib chamada FreeSpace que usa Windows COM.


<cfscript>
/*** Returns the amount of free space (in bytes) available to the ColdFusion server 
* for a specified drive or network share. (Windows only)
* @param drvPath     Drive letter (c, c:, c:\) or network share (\\computer\share). 
* @return Returns a simple value. 
* @author Rob Brooks-Bilson (rbils@amkor.com) 
* @version 1, July 19, 2001 
*/
function FreeSpace(drvPath){
     Var fso = CreateObject("COM", "Scripting.FileSystemObject");
     Var drive = fso.GetDrive(drvPath);
     Return drive.FreeSpace;
}
</cfscript>

by Jeremy Petersen

Permanent link to this article: http://ensina.me/coldfusion/como-determinar-a-quantidade-de-espaco-livre-em-um-volume/

Leave a Reply