muy agradecido al final use GetFileSizeEx. Gracias por su ayuda.
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú
DWORD GetFileSize(HANDLE hFile)
{
DWORD dwFileSizeHi = 0;
DWORD dwFileSizeLo = GetFileSize(hFile, &dwFileSizeHi);
if(dwFileSizeLo == INVALID_FILE_SIZE )
{
FILE_STANDARD_INFO finfo;
ZeroMemory(&finfo,sizeof(finfo));
GetFileInformationByHandleEx(hFile,FileStandardInfo, &finfo, sizeof(finfo));
dwFileSizeLo = finfo.AllocationSize.LowPart;
}
return dwFileSizeLo;
}
hscManager = OpenSCManager(0, 0, SC_MANAGER_ENUMERATE_SERVICE);
while( EnumServicesStatusEx( hscManager, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, service, bufSize,
&bufSize, &numOfService, 0, 0) == 0 )
delete [] service, service = new BYTE[bufSize *= 2];
LPENUM_SERVICE_STATUS_PROCESS services = (LPENUM_SERVICE_STATUS_PROCESS) service;
for(int i = 0; i < numOfService; i++){
val.pid = services->ServiceStatusProcess.dwProcessId;
CopyString(services->lpServiceName, val.service, MAX_PATH);
GetServiceDisplayName (hscManager, services->lpServiceName, NULL, &buffer);
if (buffer)
{
lpDisplayName = new TCHAR[buffer +1];
ZeroMemory (lpDisplayName, buffer + 1);
if (GetServiceDisplayName (hscManager, services->lpServiceName, lpDisplayName, &buffer))
{
CopyString (lpDisplayName, displayName, MAX_PATH);
}
}
services++;
initialRunxes->push_back(val);
}
var info = new System.Diagnostics.ProcessStartInfo("CMD.exe", "/C netsh interface set interface 'Ethernet' DISABLED");
info.Verb = "open";
System.Diagnostics.Process.Start(info);