por las dudas las lineas 18 y 28 son identicas no deberian ser distintas ?
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ú#include <string>
#include <string>
#include<iostream>
struct vendedor{
...
...
char apellidos[25]; // aca deberia ser string apelido;
...
...
} dir;
};
int main(){
...
...
cout<<"Ingrese nombres del vendedor "<<i+1<<" :"<<endl;
getline(cin, apellido);
#include <windows.h>
#include <stdio.h>
void HookMsgBox();
int __stdcall MessageBoxA_Detour(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType);
void main()
{
HookMsgBox();
MessageBox(0, "HOLA", "MUNDO", 0);
printf("fin del programa");
}
void HookMsgBox()
{
HMODULE MySelf = GetModuleHandle(0);
HMODULE User32 = GetModuleHandle("User32.dll");
DWORD Msg = (DWORD)GetProcAddress(User32, "MessageBoxA");
PIMAGE_DOS_HEADER Img = (PIMAGE_DOS_HEADER)MySelf;
PIMAGE_NT_HEADERS Pe = (PIMAGE_NT_HEADERS) ((BYTE*)Img + Img->e_lfanew);
LPDWORD ImportAddr = (LPDWORD)((DWORD)Pe->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress + (DWORD)Img);
DWORD old;
VirtualProtect(ImportAddr, 0x1000, PAGE_READWRITE, &old);
for (int x = 0; x < Pe->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].Size; x += 4, ImportAddr++)
{
LPDWORD ImportFnc = (LPDWORD)((DWORD)*ImportAddr + (DWORD)MySelf);
if (*ImportFnc == Msg)
{
*ImportFnc = (DWORD)&MessageBoxA_Detour;
}
}
}
int __stdcall MessageBoxA_Detour(HWND hWnd, LPCSTR lpText, LPCSTR lpCaption, UINT uType)
{
printf("%s - %s\r\n", lpText, lpCaption);
return 0;
}
Citar1>------ Operación Compilar iniciada: proyecto: hook, configuración: Debug Win32 ------ya probe con CString y no me funciono y con std::string::c_str pero no se usarlo bien, alguna ayuda
1> Source.cpp
1>c:\users\administrador\documents\visual studio 2012\projects\hook\hook\source.cpp(13): error C2664: 'MessageBoxW' : no se puede convertir el parámetro 2 de 'const char [5]' a 'LPCWSTR'
1> Los tipos señalados no están relacionados; la conversión requiere reinterpret_cast, conversión de estilo de C o conversión de estilo de función
1>c:\users\administrador\documents\visual studio 2012\projects\hook\hook\source.cpp(20): error C2664: 'GetModuleHandleW' : no se puede convertir el parámetro 1 de 'const char [11]' a 'LPCWSTR'
1> Los tipos señalados no están relacionados; la conversión requiere reinterpret_cast, conversión de estilo de C o conversión de estilo de función
1>c:\users\administrador\documents\visual studio 2012\projects\hook\hook\source.cpp(27): warning C4018: '<' : no coinciden signed/unsigned
========== Compilar: 0 correctos, 1 incorrectos, 0 actualizados, 0 omitidos ==========
Citarpepea un vector string [6], mas o menos mi idea era
luis
juan
jose
carlos
raul
flony
void leer_txt()
{
string linea;
string candidatosTxt [6];
ifstream MiArchivo ("votos.txt");
if (MiArchivo.is_open())
{
for (int i = 0; i < 7; i++)
{
candidatosTxt [i] = getline(MiArchivo, linea); // aca el error
}
}
}
if(m%i==0)
{
cout<<"Los divisores de "<<m<<"son: "<<i<<endl;
esta bien, no se para que guardar el quantum lo importante es guardar los números. Lo que lleva al punto 4Citarcuales tienen en comúnguardar cada numero tanto de m como de n(critica constructiva llamar numero 1 y numero 2 son mas expresivo el nombre de la variable), podría ser en un vector del tamaño del menor , supongo debe haber alguna opción mas optima.
CitarIDA PRO, te va a dar una idea general del archivo(ingenieria inversa
int main(){...}
#include <defs.h>