C ++: Obtenir le « C2065 d'erreur: 'pst': identificateur non déclaré » tout en utilisant pstsdk?
-
15-10-2019 - |
Question
Suite à la suggestion de travailler avec pstsdk dans cette question:
Traitement Microsoft Office Outlook 2003/2007 messages électroniques ...
Et en suivant les instructions ici:
PST SDK Format de fichier - PST couche Présentation - Mise en route
Et selon cette vidéo:
Dans PST SDK Présentation, Terry Mahaffey, traite de la PST SDK SDK format de fichier.
(Forward à 28:32)
Ils sont tous d'accord que je n'ai d'inclure le fichier d'en-tête PST après avoir correctement ajouté les chemins d'à la fois Boost et pstsdk , et d'écrire le code suivant commencer à travailler avec mon fichier pst:
#include "pst.h"
pst myfile(L"myfile.pst");
Maintenant, j'utilise un mélange de gestion et non géré C ++, donc je suis en train de mettre ce code dans ma fonction comme ceci:
private:
System::Void readPstFileButton_Click(System::Object^ sender, System::EventArgs^ e) {
pst myfile(fileNameTextBox->Text);
}
Et chaque fois que je décompiler, je reçois le code d'erreur C2065 qui dit le pst
est non déclaré.
Toute quelqu'un idée?
EDIT # 1
Après que je l'ai fait comme suggéré par Hans Passant (qui fonctionne), mon code ressemble maintenant à ceci:
private:
System::Void readPstFileButton_Click(System::Object^ sender, System::EventArgs^ e) {
pstsdk::pst myfile(marshal_as<std::wstring>(fileNameTextBox->Text));
}
Et je reçois maintenant les erreurs suivantes:
error C3859: Gamme de mémoire virtuelle pour PCH dépassée; s'il vous plaît recompiler avec une option de ligne de commande de « -Zm111 » ou plus
Erreur C1076: limite du compilateur: limite de tas interne atteint; utilisation / Zm pour spécifier une limite supérieure
Je ne doute attendre à ce qu'ils se produisent. Comment les résoudre?
La solution
Il est déclaré dans un espace de noms, comme il se doit. Correction:
pstsdk::pst myfile(fileNameTextBox->Text);