Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 10-08-2013
giulichajari giulichajari is offline
Miembro
 
Registrado: nov 2012
Posts: 306
Poder: 14
giulichajari Va por buen camino
De vuelta

Bueno vuelvo a publicar, porque no noto ningún efecto al apretar el boton al que tengo asociado el codigo, osea lo que entiendo es que los "labels" deberian cambiar, pero no sucede nada.

el codigo me quedo asi:

Código Delphi [-]
#include 
#include 
#include <string.h>
#include 

#pragma hdrstop
#pragma package(smart_init)
#pragma resource "*.dfm"
#include "Unit1.h"
#include 
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
        AnsiString temp;
        AnsiString Drive = AnsiString(DriveComboBox1->Drive); //EditDrive->Text;

        unsigned int drivetype = GetDriveType(Drive.c_str ());
switch (drivetype)
    {
        case 1 : temp = "No root directory"; return;
        case DRIVE_REMOVABLE : temp = "Removable"; break;
        case DRIVE_FIXED : temp = "Fixed"; break;
        case DRIVE_REMOTE : temp ="Remote (network) drive"; break;
        case DRIVE_CDROM : temp = "CD-ROM"; break;
        case DRIVE_RAMDISK : temp = "RAM disk"; break;
        default: temp = "Unknown"; return;
     }
        LabelDriveType->Caption = temp;
        temp = "";
        DWORD VolumeSerialNumber = 0;
        DWORD MaximumComponentLength = 0;
        DWORD FileSystemFlags = 0;
        char * volumeinfo = new char[255];
        volumeinfo[0] = 0;
        char* FileSystemNameBuffer = new char[255];
        FileSystemNameBuffer[0] = 0;
        GetVolumeInformation (Drive.c_str (), volumeinfo, 255,&VolumeSerialNumber,
        &MaximumComponentLength, &FileSystemFlags,
        FileSystemNameBuffer,255);
        if (strlen(volumeinfo) != 0)
                EditVolumeInfo->Text = volumeinfo ;
        else
                EditVolumeInfo->Text = "- no label -";
//Translate integer to chars for serial number
        char string1[35];
        char string2[35];
        if (VolumeSerialNumber > 0)
                {
                        unsigned int bottom = (LOWORD(VolumeSerialNumber));
                        unsigned int top = (HIWORD(VolumeSerialNumber));
                        sprintf(string1,"%04X",top);
                        sprintf(string2,"%04X",bottom);
                        LabelSerialNum->Caption = AnsiString(string1) + "-" + AnsiString(string2);
                }
        else
        {
                LabelSerialNum->Caption = "- unknown -";
        if (MaximumComponentLength > 0)
                LabelMaxComponentLength->Caption = AnsiString(MaximumComponentLength) + "characters";
        else
                LabelMaxComponentLength->Caption = "- unknown -";
        if (strlen(FileSystemNameBuffer) != 0)
                LabelFileSystemNameBuffer->Caption = FileSystemNameBuffer;
        else
                LabelFileSystemNameBuffer->Caption = "- unknown -";
                LabelFileSystemFlags->Caption = ""; //AnsiString(FileSystemFlags);
        if (FileSystemFlags & FS_CASE_IS_PRESERVED)
                temp += AnsiString("Filename case is preserved.\n");
        if (FileSystemFlags & FS_CASE_SENSITIVE)
                temp += AnsiString("Lookup is case-sensitive.\n");
        if (FileSystemFlags & FS_UNICODE_STORED_ON_DISK)
                temp += AnsiString("Supports Unicode in filenames.\n");
        if (FileSystemFlags & FS_PERSISTENT_ACLS)
                temp += AnsiString("Preserves and enforces ACLs.\n");
        if (FileSystemFlags & FS_FILE_COMPRESSION)
                temp += AnsiString("Supports file-based compression.\n");
        if (FileSystemFlags & FS_VOL_IS_COMPRESSED)
                temp += AnsiString("Volume is compressed. (i.e., DoubleSpace).\n");
        LabelFileSystemFlags->Caption = temp;
        DWORD spc = 0; //Sectors per cluster
        DWORD bps = 0; //Bytes per cluster
        DWORD cluster = 0; //clusters
        DWORD freeclust = 0; //freeclusters
        GetDiskFreeSpace (Drive.c_str (),&spc,&bps,&freeclust,&cluster) ;
        unsigned long v1 = (unsigned long)cluster;
        unsigned long v2 = (unsigned long) spc;
        unsigned long v3 = (unsigned long) bps;
        unsigned long volsize = (v1 * v2)/1024 * v3;
LabelVolumeSize->Caption = AnsiString(volsize);
        unsigned long free_bytes = (freeclust * spc)/1024 * bps;
LabelFreeSpace->Caption = AnsiString(free_bytes);
        if (volsize > 0)
                LabelUsed->Caption = AnsiString(((volsize - free_bytes) * 100) / volsize) +" %";
        else
                LabelUsed->Caption = "n/a";
}
};

Pero no se porque no pasa nada.

Muchas gracias
Saludos..
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
problema con funcion!! MOCOSO07 HTML, Javascript y otros 0 12-01-2009 16:39:40
Problema con una funcion Alliance Varios 5 09-10-2008 02:38:32
Problema con declaración de función vivamotos C++ Builder 1 25-04-2008 10:35:56
Problema con la funcion mail JulioGO PHP 2 26-09-2005 11:24:15
problema al llamar una función sgarrido Varios 3 27-07-2004 01:14:33


La franja horaria es GMT +2. Ahora son las 20:38:23.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi