Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1335 connectés 

  FORUM HardWare.fr
  Programmation
  ASP

  Dll pour asp

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Dll pour asp

n°1239223
ultralek
Posté le 05-11-2005 à 07:20:59  profilanswer
 

Bonsoir à tous, voila mon problème j'ai actuellement une source c++ 7 qui fonctionne sous forme d'un exécutable appelable en ligne de commande, son but est de se connecter à internet et de récupérer une page puis de l'enregistrer sur disque.
J'aimerais réécrire cet exe sous la forme d'une  dll com que je pourrais instancier depuis asp, j'ai donc été amené à recréer une dll atl.
Le problème c'est que la dll en question est instanciable mais ne me fournis pas de résultat. Voici la fonction main de l'exécutable :
 
static const GUID myGUID = { 0x445c10c2, 0xa6d4, 0x40a9, { 0x9c, 0x3f, 0x4e, 0x90, 0x42, 0x1d, 0x7e, 0x83 } };
static CComModule _Modu;
 
int main (int argc, char *argv[])
{
if (argc != 3)
{
printf("Usage: %s http://www.example.org/ localfile.txt\n", argv[0]);
return EXIT_FAILURE;
}
 
HRESULT hr = _Modu.Init(NULL, ::GetModuleHandle(NULL), &myGUID);
 
if (FAILED(hr))
return EXIT_FAILURE;
 
if (!AtlAxWinInit())
return EXIT_FAILURE;
 
CMain MainWnd;
 
MainWnd.m_URI = argv[1];
MainWnd.m_fileName = argv[2];
RECT rcMain = { 0, 0, 800, 600 };
MainWnd.Create(NULL, rcMain, _T("Test" ), WS_POPUP);
 
MSG msg;
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
 
_Modu.Term();
 
return EXIT_SUCCESS;
}
 
Lors de l'écriture de la dll l'expression : static CComModule _Modu;
provoquais une erreur, j'ai donc réécris une méthode de mon objet ainsi :
 
 
STDMETHODIMP CMaClasse::GetURL(BSTR m_URL, BSTR m_filename)
{
if (!AtlAxWinInit())
return EXIT_FAILURE;
 
CMain MainWnd;
 
MainWnd.m_URI = (LPCSTR) "http://www.google.fr";
MainWnd.m_fileName = (LPCSTR) "c:\test.txt";
 
RECT rcMain = { 0, 0, 800, 600 };
MainWnd.Create(NULL, rcMain, _T("Test" ), WS_POPUP);
 
MSG msg;
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
 
return S_OK;
}
 
Cela fait plusieurs jours que je tourne en rond là dessus : le problème provient surement des lignes que j'ai effacées.
Comment faire pour avoir l'équivalent de la déclaration de _Modu et des appels à _Modu.Init() et _Modu;Term() dans ma dll?
Quelqu'un pourrait il m'aider ?

mood
Publicité
Posté le 05-11-2005 à 07:20:59  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  ASP

  Dll pour asp

 

Sujets relatifs
[C++]Appeler une variable globale de DLL en C++FM20.DLL
[VB] Compilation et version de la MSJETxx.DLL[Win32] new / delete & DLL [résolu]
Passer un tableau à 2 dimension via le VB/VBA à une DLL C/C++[VB .NET]Attaquer une DLL C++ et lui passer et récupérer des Strings
intégrer une DLL à l'exécutable[Visaul C++] DLL non créée
[Builder C++ 6] Utilisation dynamique d'une DLL [résolu...]je reviens sur Platform Invoke / appel de DLL unmanaged
Plus de sujets relatifs à : Dll pour asp


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR