2009-01-28 3 views
4

bien que le sujet dit, je veux savoir s'il y a un outil ou un tutoriel qui peut me aider à accéder à Internet Explorer, obtenir une certaine URL, faire une action sur ce site. Donc j'aurais un programme pour faire ça pour moi au lieu de le faire moi-même à chaque fois.Utilisez C++ pour accéder à Internet Explorer

+0

s'il vous plaît expliquer « faire une action sur ce site » –

+0

S'il vous plaît écrire en anglais (ou toute autre langue réelle) alors qu'ici. AOLbonics (l'utilisation de '1' au lieu d'un, 'u' à la place de vous, etc.) est un excellent moyen d'éteindre complètement tous les répondeurs potentiels. Aussi, bienvenue à SO - si vous communiquez bien avec les membres, vous passerez un bon moment. –

Répondre

0

Plutôt que d'utiliser IE pour de telles choses, regarder dans les bibliothèques screen scraping appropriées pour langue de votre choix. Vous pouvez google et rechercher Stack Overflow pour trouver beaucoup de ces bibliothèques. À partir de là, vous utiliserez les API Web de votre langue pour envoyer des données au serveur.

1

Here est un projet sur l'automatisation Internet Explorer avec

+0

Pour l'anecdote, cela a tendance à être une quantité extrême de surpuissance. Le scrappage d'écran et certains appels HTTP de base ont tendance à être plus faciles et beaucoup plus efficaces. –

+0

Mais c'est ce qu'il demande je suppose –

+0

D'accord, c'est pourquoi je pense que c'est toujours une bonne réponse. Cependant, une note sur cette réponse pourrait être utile pour l'aider à choisir la meilleure solution pour sa tâche. Si vous envisagez cette technologie en tenant compte de la technologie, vous opterez pour cela plutôt que pour une solution de rechange, à moins d'avoir de bonnes raisons de ne pas le faire. –

0

C++ Je ne sais pas de tout outil.

-je utiliser un navigateur intégré pour de telles choses. Il est possible de se connecter à une instance en cours d'IE. Voir Connect to Running Instance of IE Une fois que vous obtenez une instance de IWebBrowser2, le codage est le même.

 
1. Get the Document Interface 
    pWebBrowser->Document->QueryInterface(
      IID_IHTMLDocument2,(LPVOID*)&Doc); 
2. Get all the elements on the Document 
    Doc->get_all(&Elements); 
3. enum the Elements 
    Elements->get_length(&ulLen); 
    for_each 
     Elements->item(item, index, &ppvElement); 
4. Detemine what element is desired. 
    * by classname 
    * by ID etc.. here I used the classname 
     ppvElement->get_className (&bstrElement); 
5. Insert Text for user/password 
    ppvElement->put_innerText(wsUreser_or_Psswd) 
6. Find the Sign in button and click it. 
    ppvElement->Click();

Vos résultats peuvent varier.

-

Michael

1

vous devriez vraiment reformuler votre question .. vous avez dit ce que vous voulez faire est de vous connecter à hotmail programatically, vérifier le code pidgin, ils le font.

La documentation a trouvé here, here et vous pouvez naviguer à travers le code et les tutoriels à volonté jusqu'à ce que vous ayez compris comment les contributeurs de pidgin l'ont fait.

Vous pouvez trouver la page principale pour pidgin here

Exemple de code

pour vous lancer:

00362 static void 
00363 msn_show_hotmail_inbox(PurplePluginAction *action) 
00364 { 
00365  PurpleConnection *gc; 
00366  MsnSession *session; 
00367 
00368  gc = (PurpleConnection *) action->context; 
00369  session = gc->proto_data; 
00370 
00371  if (session->passport_info.file == NULL) 
00372  { 
00373    purple_notify_error(gc, NULL, 
00374          _("This Hotmail account may not be active."), NULL); 
00375    return; 
00376  } 
00377 
00378  purple_notify_uri(gc, session->passport_info.file); 
00379 } 


00652 void * 
00653 purple_notify_uri(void *handle, const char *uri) 
00654 { 
00655  PurpleNotifyUiOps *ops; 
00656 
00657  g_return_val_if_fail(uri != NULL, NULL); 
00658 
00659  ops = purple_notify_get_ui_ops(); 
00660 
00661  if (ops != NULL && ops->notify_uri != NULL) { 
00662 
00663    void *ui_handle = ops->notify_uri(uri); 
00664 
00665    if (ui_handle != NULL) { 
00666 
00667     PurpleNotifyInfo *info = g_new0(PurpleNotifyInfo, 1); 
00668     info->type = PURPLE_NOTIFY_URI; 
00669     info->handle = handle; 
00670     info->ui_handle = ui_handle; 
00671 
00672     handles = g_list_append(handles, info); 
00673 
00674     return info->ui_handle; 
00675    } 
00676  } 
00677 
00678  return NULL; 
00679 } 
0

Pourquoi ne vous faites pas une alimentation en dapper en deux minutes? Apparemment, certaines personnes ont déjà done it.