17aa3ebeeSmistachkin //
27aa3ebeeSmistachkin // MainPage.xaml.cpp
37aa3ebeeSmistachkin // Implementation of the MainPage class.
47aa3ebeeSmistachkin //
57aa3ebeeSmistachkin 
67aa3ebeeSmistachkin #include "pch.h"
77aa3ebeeSmistachkin #include "MainPage.xaml.h"
8*c32db469Smistachkin #include "sqlite3.h"
97aa3ebeeSmistachkin 
107aa3ebeeSmistachkin using namespace vsixtest;
117aa3ebeeSmistachkin 
127aa3ebeeSmistachkin using namespace Platform;
137aa3ebeeSmistachkin using namespace Windows::Foundation;
147aa3ebeeSmistachkin using namespace Windows::Foundation::Collections;
157aa3ebeeSmistachkin using namespace Windows::UI::Xaml;
167aa3ebeeSmistachkin using namespace Windows::UI::Xaml::Controls;
177aa3ebeeSmistachkin using namespace Windows::UI::Xaml::Controls::Primitives;
187aa3ebeeSmistachkin using namespace Windows::UI::Xaml::Data;
197aa3ebeeSmistachkin using namespace Windows::UI::Xaml::Input;
207aa3ebeeSmistachkin using namespace Windows::UI::Xaml::Media;
217aa3ebeeSmistachkin using namespace Windows::UI::Xaml::Navigation;
227aa3ebeeSmistachkin 
237aa3ebeeSmistachkin // The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409
247aa3ebeeSmistachkin 
MainPage()257aa3ebeeSmistachkin MainPage::MainPage()
267aa3ebeeSmistachkin {
277aa3ebeeSmistachkin 	InitializeComponent();
28*c32db469Smistachkin 	UseSQLite();
29*c32db469Smistachkin }
30*c32db469Smistachkin 
UseSQLite(void)31*c32db469Smistachkin void MainPage::UseSQLite(void)
32*c32db469Smistachkin {
33*c32db469Smistachkin     int rc = SQLITE_OK;
34*c32db469Smistachkin     sqlite3 *pDb = nullptr;
35*c32db469Smistachkin 
36*c32db469Smistachkin     rc = sqlite3_open_v2("test.db", &pDb,
37*c32db469Smistachkin 	SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE, nullptr);
38*c32db469Smistachkin 
39*c32db469Smistachkin     if (rc != SQLITE_OK)
40*c32db469Smistachkin 	throw ref new FailureException("Failed to open database.");
41*c32db469Smistachkin 
42*c32db469Smistachkin     rc = sqlite3_exec(pDb, "VACUUM;", nullptr, nullptr, nullptr);
43*c32db469Smistachkin 
44*c32db469Smistachkin     if (rc != SQLITE_OK)
45*c32db469Smistachkin 	throw ref new FailureException("Failed to vacuum database.");
46*c32db469Smistachkin 
47*c32db469Smistachkin     rc = sqlite3_close(pDb);
48*c32db469Smistachkin 
49*c32db469Smistachkin     if (rc != SQLITE_OK)
50*c32db469Smistachkin 	throw ref new FailureException("Failed to close database.");
51*c32db469Smistachkin 
52*c32db469Smistachkin     pDb = nullptr;
537aa3ebeeSmistachkin }
54