As far as I can tell, the call to the VC++ compiler does not include the /clr parameter, so there should not be a .NET dependency. Also, since I think Octavian has .NET installed, the program should be able to find the .NET dependency if that were true, especially if the .manifest file is in the same directory. I suspect (though am not sure) that the dependency is on a file in the Windows platform SDK that I installed, and perhaps Octavian did not. If you are referring to another , earlier message thread in which Will posted about this problem, I could not find it via Google. Marlon, what C++ compilers do you use? Do you use any free ones or know how to use them? Can you help me compile the Wx source code with MinGW or Borland C++ Builder so that it is a single, self-standing executable (whatever the size)? The complete source code is in the cwx_fruit.cpp file within the archive at http://www.EmpowermentZone.com/cwx_fruit.zip Jamal On Fri, 30 Nov 2007, Marlon Brandão de Sousa wrote: > Date: Fri, 30 Nov 2007 12:52:12 -0200 > From: Marlon Brandão de Sousa <splyt.lists@xxxxxxxxx> > Reply-To: programmingblind@xxxxxxxxxxxxx > To: programmingblind@xxxxxxxxxxxxx > Subject: Re: Fruit basket program in C++ with WxWidgets > > I think it isn't a .net dependency. Vc .net 2005 uses a kind of > manifest to link to the right version of the C crt, a kind of > (personal thought here) ridiculous thing ms did to try to avoid dll > hell ... and you have to embed this manifest in your executable or > redistribute it with your software. I don't know how to do it, but > Will Pearson talked about this some time ago in this list. > Marlon > > 2007/11/30, Jamal Mazrui <empower@xxxxxxxxx>: > > Jaffar or other C++ developers, > > Apparently, the Win32 executable I built has dependencies that I do not > > intend. Can you help me build a version as a single, self-standing > > executable, preferrably with the same VC++ compiler? Doing so with any > > other free C++ compiler would also be of interest. > > > > Jamal > > On Thu, 29 Nov 2007, > > Octavian Rasnita wrote: > > > > > Date: Thu, 29 Nov 2007 08:03:22 +0200 > > > From: Octavian Rasnita <orasnita@xxxxxxxxx> > > > Reply-To: programmingblind@xxxxxxxxxxxxx > > > To: programmingblind@xxxxxxxxxxxxx > > > Subject: Re: Fruit basket program in C++ with WxWidgets > > > > > > Hi, > > > > > > I have tried to run the executable, but the following error appeared: > > > > > > This application has failed to start because the application configuration > > > is incorrect. Reinstalling the application may > > > fix this problem. > > > OK > > > > > > Does anyone know in what programming language and with which GUI library > > is > > > made the program UTorrent? > > > > > > Thanks. > > > > > > Octavian > > > > > > ----- Original Message ----- > > > From: "Jamal Mazrui" <empower@xxxxxxxxx> > > > To: <programmingblind@xxxxxxxxxxxxx> > > > Sent: Wednesday, November 28, 2007 9:04 PM > > > Subject: Fruit basket program in C++ with WxWidgets > > > > > > > > > > From the archive at > > > > http://www.EmpowermentZone.com/cwx_fruit.zip > > > > > > > > This fruit basket program is written in C++, using the open source > > > > WxWidgets GUI library and application framework available from > > > > http://WxWidgets.org > > > > > > > > The program is compiled with the free Microsoft Visual C++ Express > > > > Edition, available from > > > > http://msdn.microsoft.com > > > > Another download needed from there is the Windows Platform SDK. > > > > > > > > This is my first nontrivial program in C++, so I encourage others to > > > > suggest improvements to the code. I am also interested in comparing > > > > binaries produced by other free C++ compilers, including MinGW and > > Borland > > > > C++ Builder, which should be able to compile the same code if properly > > > > configured for Wx application development. > > > > > > > > To aid comprehension, I have tried to make the code minimalist in > > nature. > > > > It is contained in a single file, cwx_fruit.cpp (also pasted below), > > with > > > > no custom include or resource files. I have not yet learned how to > > > > compile a Wx program by writing a make file or configuring Visual > > Studio, > > > > but was able to use the make file that comes with the "Minimal" sample > > > > program in the Wx distribution. I simply replaced the minimal.cpp file > > > > with the content of cwx_fruit.cpp, and then renamed the resulting > > > > executable from minimal.exe to cwx_fruit.exe. > > > > > > > > With Unicode and release compilation options, that executable was about > > > > 1.1 MB in size. I reduced it by two thirds -- to about 373KB -- using > > the > > > > free "Ultimate Packer for Executables" utility available from > > > > http://upx.sourceforge.net > > > > > > > > Besides the executable, a manifest file, under 1KB in size, is currently > > > > needed in the same directory in order to run the program. A .NET > > > > Framework dependency might also exist, since this C++ compiler can > > produce > > > > executables with such a dependency if proper parameters were not used (I > > > > have not understood the make file enough to know). I would appreciate > > > > assistance in eliminating the need for a seperate cwx_fruit.exe.manifest > > > > file, as well as ensuring that no .NET dependency exists. I think this > > > > compiler is capable of producing a self-standing Win32 executable, > > though > > > > the file size may increase. > > > > > > > > Jamal > > > > > > > > /* > > > > Content of cwx_fruit.cpp > > > > Fruit basket program in C++ with WxWidgets 2.8 > > > > Compiled with Microsoft Visual C++ 2005 Express > > > > Public domain by Jamal Mazrui > > > > */ > > > > > > > > // Import headers > > > > #include "wx/wx.h" > > > > > > > > // Derive custom dialog class > > > > class FbDialog : public wxDialog { > > > > > > > > public: > > > > // Declare control variables > > > > wxTextCtrl *txtFruit; > > > > wxListBox *lstBasket; > > > > wxButton *btnAdd, *btnDelete; > > > > > > > > // Define add event handler > > > > void OnAdd(wxCommandEvent& WXUNUSED(event)) { > > > > wxString sValue = txtFruit->GetValue(); > > > > if (sValue == wxEmptyString) { > > > > wxMessageBox(wxT("No fruit to add!"), wxT("Alert")); > > > > } > > > > else { > > > > lstBasket->Append(sValue); > > > > txtFruit->Clear(); > > > > int iFruit = lstBasket->GetCount() - 1; > > > > lstBasket->SetSelection(iFruit); > > > > } > > > > } // OnAdd event handler > > > > > > > > // Define delete event handler > > > > void OnDelete(wxCommandEvent& WXUNUSED(event)) { > > > > int iFruit = lstBasket->GetSelection(); > > > > if (iFruit == -1) { > > > > wxMessageBox(wxT("No fruit to delete!"), wxT("Alert")); > > > > } > > > > else { > > > > lstBasket->Delete(iFruit); > > > > if (iFruit == lstBasket->GetCount()) {iFruit--;} > > > > lstBasket->SetSelection(iFruit); > > > > } > > > > } // OnDelete event handler > > > > > > > > // Define close event handler > > > > void OnClose(wxCloseEvent& event) { > > > > if (wxMessageBox(wxT("Exit program?"), wxT("Confirm"), wxYES_NO | > > > > wxCANCEL) == wxYES) { > > > > Destroy(); > > > > event.Skip(); > > > > } > > > > else { > > > > event.Veto(); > > > > } > > > > } // OnClose event handler > > > > > > > > // Define dialog constructor > > > > //FbDialog::FbDialog() : wxDialog(NULL, wxID_ANY, wxT("Fruit Basket"), > > > > wxDefaultPosition, wxSize(513, 176)) { > > > > FbDialog() : wxDialog(NULL, wxID_ANY, wxT("Fruit Basket"), > > > > wxDefaultPosition, wxSize(513, 176)) { > > > > new wxStaticText(this, wxID_ANY, wxT("&Fruit:"), wxPoint(14, 14), > > > > wxDefaultSize); > > > > txtFruit = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxPoint(43, > > 14), > > > > wxDefaultSize, wxTE_LEFT); > > > > > > > > new wxStaticText(this, wxID_ANY, wxT("&Basket:"), wxPoint(251, 14), > > > > wxDefaultSize); > > > > lstBasket = new wxListBox(this, wxID_ANY, wxPoint(293,14), > > wxDefaultSize, > > > > 0); > > > > > > > > btnAdd = new wxButton(this, wxID_ANY, wxT("&Add"), wxPoint(190, 121), > > > > wxDefaultSize); > > > > btnAdd->SetDefault(); > > > > Connect(btnAdd->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, > > > > wxCommandEventHandler(FbDialog::OnAdd)); > > > > > > > > btnDelete = new wxButton(this, wxID_ANY, wxT("&Delete"), wxPoint(217, > > > > 121), wxDefaultSize); > > > > Connect(btnDelete->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, > > > > wxCommandEventHandler(FbDialog::OnDelete)); > > > > > > > > Connect(wxID_ANY, wxEVT_CLOSE_WINDOW, > > > > wxCloseEventHandler(FbDialog::OnClose)); > > > > > > > > Centre(); > > > > ShowModal(); > > > > } // FbDialog constructor > > > > > > > > }; // FbDialog class > > > > > > > > // Derive custom application class > > > > class FbApp : public wxApp { > > > > > > > > public: > > > > bool OnInit() { > > > > new FbDialog(); > > > > return true; > > > > } // Init method > > > > > > > > }; // FbApp class > > > > > > > > // Define main entry point via compiler macro > > > > IMPLEMENT_APP(FbApp) > > > > > > > > // End of cwx_fruit.cpp > > > > > > > > __________ > > > > View the list's information and change your settings at > > > > //www.freelists.org/list/programmingblind > > > > > > > > > > __________ > > > View the list's information and change your settings at > > > //www.freelists.org/list/programmingblind > > > > > __________ > > View the list's information and change your settings at > > //www.freelists.org/list/programmingblind > > > > > > > -- > When you say "I wrote a program that crashed Windows," people just > stare at you blankly and say "Hey, I got those with the system, for > free." > Linus Torvalds > __________ > View the list's information and change your settings at > //www.freelists.org/list/programmingblind > __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind