diff --git a/installers/windows/.gitignore b/installers/windows/.gitignore new file mode 100644 index 00000000..db2f0c14 --- /dev/null +++ b/installers/windows/.gitignore @@ -0,0 +1,2 @@ +# Ignore the subdirectory with the individual GUI Wallet files +bin/ diff --git a/installers/windows/FinishImage.bmp b/installers/windows/FinishImage.bmp new file mode 100644 index 00000000..9190b599 Binary files /dev/null and b/installers/windows/FinishImage.bmp differ diff --git a/installers/windows/LICENSE b/installers/windows/LICENSE new file mode 100644 index 00000000..3e026b6e --- /dev/null +++ b/installers/windows/LICENSE @@ -0,0 +1,31 @@ +Copyright (c) 2014-2017, The Monero Project + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors +may be used to endorse or promote products derived from this software without +specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Parts of the project are originally copyright (c) 2012-2013 The Cryptonote +developers diff --git a/installers/windows/Monero.iss b/installers/windows/Monero.iss new file mode 100644 index 00000000..c9b5f1d4 --- /dev/null +++ b/installers/windows/Monero.iss @@ -0,0 +1,351 @@ +; Monero GUI Wallet Beta 2 Installer for Windows +; Copyright (c) 2014-2017, The Monero Project +; See LICENSE + +[Setup] +AppName=Monero Core + GUI Wallet +AppVersion=0.10.3.1 +DefaultDirName={pf}\Monero Core +DefaultGroupName=Monero Core + GUI Wallet +UninstallDisplayIcon={app}\monero-wallet-gui.exe +PrivilegesRequired=admin +ArchitecturesInstallIn64BitMode=x64 +ArchitecturesAllowed=x64 +WizardSmallImageFile=WizardSmallImage.bmp +WizardImageFile=WelcomeImage.bmp +DisableWelcomePage=no +LicenseFile=LICENSE + + +[Languages] +Name: "en"; MessagesFile: "compiler:Default.isl" +; Without localized versions of special forms, messages etc. of the installer, and without translated ReadMe's +; it probably does not make much sense to offer other install-time languages beside English +; Name: "fr"; MessagesFile: "compiler:Languages\French.isl" +; Name: "it"; MessagesFile: "compiler:Languages\Italian.isl" +; Name: "jp"; MessagesFile: "compiler:Languages\Japanese.isl" +; Name: "nl"; MessagesFile: "compiler:Languages\Dutch.isl" +; Name: "pt"; MessagesFile: "compiler:Languages\Portuguese.isl" + + +[Files] +Source: "ReadMe.htm"; DestDir: "{app}"; Flags: comparetimestamp +Source: "FinishImage.bmp"; Flags: dontcopy + +; Monero GUI wallet +Source: "bin\monero-wallet-gui.exe"; DestDir: "{app}"; Flags: comparetimestamp + +; Monero GUI wallet log file +; Beta 2 does not have the "--log-file" command-line option of the CLI wallet and insists to put the .log beside the .exe +; so pre-create the file and give the necessary permissions to the wallet to write into it +Source: "monero-wallet-gui.log"; DestDir: "{app}"; Flags: comparetimestamp; Permissions: users-modify + +; Monero CLI wallet +Source: "bin\monero-wallet-cli.exe"; DestDir: "{app}"; Flags: comparetimestamp + +; Monero wallet RPC interface implementation +Source: "bin\monero-wallet-rpc.exe"; DestDir: "{app}"; Flags: comparetimestamp + +; Monero daemon +Source: "bin\monerod.exe"; DestDir: "{app}"; Flags: comparetimestamp + +; Monero daemon wrapped in a batch file that stops before the text window closes, to see any error messages +Source: "monero-daemon.bat"; DestDir: "{app}"; Flags: comparetimestamp; + +; Monero blockchain utilities +Source: "bin\monero-blockchain-export.exe"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\monero-blockchain-import.exe"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\monero-utils-deserialize.exe"; DestDir: "{app}"; Flags: comparetimestamp + +; Various .qm files for translating the wallet UI "on the fly" into all supported languages +Source: "bin\translations\*"; DestDir: "{app}\translations"; Flags: recursesubdirs comparetimestamp + +; Core Qt runtime +Source: "bin\Qt5Core.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Gui.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Multimedia.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5MultimediaQuick_p.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Network.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Qml.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Quick.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Svg.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5Widgets.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\Qt5XmlPatterns.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; Qt QML elements like the local files selector "FolderListModel" and "Settings" +Source: "bin\Qt\*"; DestDir: "{app}\Qt"; Flags: recursesubdirs comparetimestamp + +; Qt audio support +Source: "bin\audio\*"; DestDir: "{app}\audio"; Flags: recursesubdirs comparetimestamp + +; Qt bearer / network connection management +Source: "bin\bearer\*"; DestDir: "{app}\bearer"; Flags: recursesubdirs comparetimestamp + +; Qt Windows platform plugin +Source: "bin\platforms\qwindows.dll"; DestDir: "{app}\platforms"; Flags: comparetimestamp + +; Qt support for SVG icons +Source: "bin\iconengines\*"; DestDir: "{app}\iconengines"; Flags: recursesubdirs comparetimestamp + +; Qt support for various image formats (JPEG, BMP, SVG etc) +Source: "bin\imageformats\*"; DestDir: "{app}\imageformats"; Flags: recursesubdirs comparetimestamp + +; Qt multimedia support +Source: "bin\QtMultimedia\*"; DestDir: "{app}\QtMultimedia"; Flags: recursesubdirs comparetimestamp +Source: "bin\mediaservice\*"; DestDir: "{app}\mediaservice"; Flags: recursesubdirs comparetimestamp + +; Qt support for "m3u" playlists +; candidate for elimination? Don't think the GUI wallet needs such playlists +Source: "bin\playlistformats\*"; DestDir: "{app}\playlistformats"; Flags: recursesubdirs comparetimestamp + +; Qt graphical effects as part of the core runtime, effects like blurring and blending +Source: "bin\QtGraphicalEffects\*"; DestDir: "{app}\QtGraphicalEffects"; Flags: recursesubdirs comparetimestamp + +; Some more Qt graphical effects +; "private" as a name for this directory looks a little strange. Historical reasons? +Source: "bin\private\*"; DestDir: "{app}\private"; Flags: recursesubdirs comparetimestamp + +; Qt QML files +Source: "bin\QtQml\*"; DestDir: "{app}\QtQml"; Flags: recursesubdirs comparetimestamp + +; Qt Quick files +Source: "bin\QtQuick\*"; DestDir: "{app}\QtQuick"; Flags: recursesubdirs comparetimestamp +Source: "bin\QtQuick.2\*"; DestDir: "{app}\QtQuick.2"; Flags: recursesubdirs comparetimestamp + +; Qt Quick 2D Renderer fallback for systems / environments with "low-level graphics" i.e. without 3D support +Source: "bin\scenegraph\*"; DestDir: "{app}\scenegraph"; Flags: recursesubdirs comparetimestamp +Source: "bin\start-low-graphics-mode.bat"; DestDir: "{app}"; Flags: comparetimestamp + +; Mesa, open-source OpenGL implementation; part of "low-level graphics" support +Source: "bin\opengl32sw.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; Left out subdirectory "qmltooling" with the Qt QML debugger: Probably not relevant in an end-user package + +; Microsoft Direct3D runtime +Source: "bin\D3Dcompiler_47.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; bzip2 support +Source: "bin\libbz2-1.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; ANGLE ("Almost Native Graphics Layer Engine") support, as used by Qt +Source: "bin\libEGL.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\libGLESV2.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; FreeType font engine, as used by Qt +Source: "bin\libfreetype-6.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; GCC runtime, x64 version +Source: "bin\libgcc_s_seh-1.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; GLib, low level core library e.g. for GNOME and GTK+ +; Really needed under Windows? +Source: "bin\libglib-2.0-0.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; Graphite font support +; Really needed? +Source: "bin\libgraphite2.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; HarfBuzz OpenType text shaping engine +; Really needed? +Source: "bin\libharfbuzz-0.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; LibIconv, conversions between character encodings +Source: "bin\libiconv-2.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; Part of cygwin? Needed by Qt somehow? +Source: "bin\libicudt57.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\libicuin57.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\libicuuc57.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; Library for native language support, part of GNU gettext +Source: "bin\libintl-8.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; JasPer, support for JPEG-2000 +Source: "bin\libjasper-1.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; libjpeg, C library for reading and writing JPEG image files +Source: "bin\libjpeg-8.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; Little CMS, color management system +Source: "bin\liblcms2-2.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; XZ Utils, LZMA compression library +Source: "bin\liblzma-5.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; MNG / Portable Network Graphics ("animated PNG") +Source: "bin\libmng-2.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; PCRE, Perl Compatible Regular Expressions +Source: "bin\libpcre-1.dll"; DestDir: "{app}"; Flags: comparetimestamp +Source: "bin\libpcre16-0.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; libpng, the official PNG reference library +Source: "bin\libpng16-16.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; libstdc++, GNU Standard C++ Library +Source: "bin\libstdc++-6.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; LibTIFF, TIFF Library and Utilities +Source: "bin\libtiff-5.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; C++ threading support +Source: "bin\libwinpthread-1.dll"; DestDir: "{app}"; Flags: comparetimestamp + +; zlib compression library +Source: "bin\zlib1.dll"; DestDir: "{app}"; Flags: comparetimestamp + + +[Run] +Filename: "{app}\ReadMe.htm"; Description: "Show ReadMe"; Flags: postinstall shellexec skipifsilent + +; DON'T offer to run the wallet right away, let the people read about initial blockchain download first in the ReadMe +; Filename: "{app}\monero-wallet-gui.exe"; Description: "Run GUI Wallet now"; Flags: postinstall nowait skipifsilent + + +[Code] +var + BlockChainDirPage: TInputDirWizardPage; + blockChainDefaultDir: String; + +procedure InitializeWizard; +var s: String; + width: Integer; +begin + // Large image for the "Welcome" page, with page reconfigured + WizardForm.WelcomeLabel1.Visible := false; + WizardForm.WelcomeLabel2.Visible := false; + WizardForm.WizardBitmapImage.Height := 300; + WizardForm.WizardBitmapImage.Width := 500; + + // Image for the "Finnish" screen, in standard WizardBitmapImage size of 164 x 314 + ExtractTemporaryFile('FinishImage.bmp'); + WizardForm.WizardBitmapImage2.Bitmap.LoadFromFile(ExpandConstant('{tmp}\FinishImage.bmp')); + + // Additional wizard page for entering a special blockchain location + blockChainDefaultDir := ExpandConstant('{commonappdata}\bitmonero'); + s := 'The default folder to store the Monero blockchain is ' + blockChainDefaultDir; + s := s + '. As this will need up to 20 GB of free space, you may want to use a folder on a different drive.'; + s := s + ' If yes, specify that folder here.'; + + BlockChainDirPage := CreateInputDirPage(wpSelectDir, + 'Select Blockchain Directory', 'Where should the blockchain be installed?', + s, + False, ''); + BlockChainDirPage.Add(''); + + BlockChainDirPage.Values[0] := GetPreviousData('BlockChainDir', ''); + if BlockChainDirPage.Values[0] = '' then begin + // Unfortunately 'TInputDirWizardDirPage' does not allow empty field + BlockChainDirPage.Values[0] := blockChainDefaultDir; + end; +end; + +procedure RegisterPreviousData(PreviousDataKey: Integer); +begin + // Store the selected folder for further reinstall/upgrade + SetPreviousData(PreviousDataKey, 'BlockChainDir', BlockChainDirPage.Values[0]); +end; + +function BlockChainDir(Param: String) : String; +// Directory of the blockchain +var s: String; +begin + s := BlockChainDirPage.Values[0]; + Result := s; + // No quotes for folder name with blanks as this is never used as part of a command line +end; + +function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo, + MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String; +var s: String; +begin + // Fill the 'Ready Memo' with the normal settings and the custom settings + s := ''; + s := s + MemoDirInfo + NewLine + NewLine; + + s := s + 'Blockchain folder' + NewLine; + s := s + Space + BlockChainDir('') + NewLine; + + Result := s; +end; + +function DaemonLog(Param: String) : String; +// Full filename of the log of the daemon +begin + Result := BlockChainDir('') + '\bitmonero.log'; + // No quotes for filename with blanks as this is never used as part of a command line +end; + +function DaemonFlags(Param: String): String; +// Flags to add to the shortcut to the daemon +var s: String; +begin + s := BlockChainDir(''); + if s = blockChainDefaultDir then begin + // No need to add the default dir as flags for the daemon + s := ''; + end; + if Pos(' ', s) > 0 then begin + // Quotes needed for filename with blanks + s := '"' + s + '"'; + end; + if s <> '' then begin + s := '--data-dir ' + s; + end; + Result := s; +end; + +procedure CurStepChanged(CurStep: TSetupStep); +var s: TArrayOfString; +begin + if CurStep = ssPostInstall then begin + // Re-build "monero-daemon.bat" according to actual install and blockchain directory used + SetArrayLength(s, 3); + s[0] := 'REM Execute the Monero daemon and then stay with window open after it exits'; + s[1] := '"' + ExpandConstant('{app}\monerod.exe') + '" ' + DaemonFlags(''); + s[2] := 'PAUSE'; + SaveStringsToFile(ExpandConstant('{app}\monero-daemon.bat'), s, false); + end; +end; + +function InitializeUninstall(): Boolean; +var s: String; +begin + s := 'Please note: Uninstall will not delete any downloaded blockchain. '; + s := s + 'If you do not need it anymore you have to delete it manually.'; + s := s + #13#10#13#10 + 'Uninstall also will not delete any wallets that you created.'; + MsgBox(s, mbInformation, MB_OK); + Result := true; +end; + + +[Icons] +; Icons in the "Monero Core + GUI Wallet" program group +; Windows will almost always display icons in alphabetical order, per level, so specify the text accordingly +Name: "{group}\GUI Wallet"; Filename: "{app}\monero-wallet-gui.exe" +Name: "{group}\Monero Daemon"; Filename: "{app}\monerod.exe"; Parameters: {code:DaemonFlags} +Name: "{group}\Read Me"; Filename: "{app}\ReadMe.htm" +Name: "{group}\Textual (CLI) Wallet"; Filename: "{app}\monero-wallet-cli.exe" + +; Icons for troubleshooting problems / testing / debugging +; For Windows 7 it would be ok to go one level deeper with those icons into a folder, e.g. called "Troubleshooting" +; Syntax would be: Name: "{group}\Troubleshooting\GUI Wallet Low Graphics Mode" ... +; However, Windows 10 stupidly insists on displayin ALL icons on one single level despite finding them in such a folder +; So just make those icons visually different from the others by text, and make them sort at the end by the help of "x" in front +Name: "{group}\x (Try GUI Wallet Low Graphics Mode)"; Filename: "{app}\start-low-graphics-mode.bat" +Name: "{group}\x (Try Daemon, Exit Confirm)"; Filename: "{app}\monero-daemon.bat" +Name: "{group}\x (Try Kill Daemon)"; Filename: "Taskkill.exe"; Parameters: "/IM monerod.exe /T /F" +Name: "{group}\x (Check GUI Wallet Log)"; Filename: "Notepad"; Parameters: "{app}\monero-wallet-gui.log" +Name: "{group}\x (Check Daemon Log)"; Filename: "Notepad"; Parameters: {code:DaemonLog} +Name: "{group}\x (Check Default Wallet Folder)"; Filename: "{win}\Explorer.exe"; Parameters: "{userdocs}\Monero\wallets" +Name: "{group}\x (Check Blockchain Folder)"; Filename: "{win}\Explorer.exe"; Parameters: {code:BlockChainDir} + + +[Registry] +; Store any special flags for the daemon in the registry location where the GUI wallet will take it from +; So if the wallet is used to start the daemon instead of the separate icon the wallet will pass the correct flags +; Side effect, mostly positive: The uninstaller will clean the registry +Root: HKCU; Subkey: "Software\monero-project"; Flags: uninsdeletekeyifempty +Root: HKCU; Subkey: "Software\monero-project\monero-core"; Flags: uninsdeletekey +Root: HKCU; Subkey: "Software\monero-project\monero-core"; ValueType: string; ValueName: "daemonFlags"; ValueData: {code:DaemonFlags}; + diff --git a/installers/windows/README.md b/installers/windows/README.md new file mode 100644 index 00000000..73cc38c4 --- /dev/null +++ b/installers/windows/README.md @@ -0,0 +1,41 @@ +# Monero Core + GUI Wallet Beta 2 Windows Installer # + +Copyright (c) 2014-2017, The Monero Project + +## Introduction ## + +This is a *Inno Setup* script `Monero.iss` plus some related files that +allows you to build a standalone Windows installer (.exe) for the +Monero GUI Wallet Beta 2. + +This turns the GUI Wallet into a more or less standard Windows program, +by default installed into a subdirectory of `C:\Program Files`, a +program group with some icons in the *Start* menu, and automatic +uninstall support. It helps lower the "barrier to entry" somewhat, +especially for less technically experienced users of Monero. + +As the setup script in file [Monero.iss](Monero.iss) has to list every +single file of the GUI Wallet package to install by name, this version +of the script only works with exactly the GUI Beta 2 that you find on +[the official download page](https://getmonero.org/downloads/). + +But of course it will be easy to modify the script for future versions +of the GUI Wallet. + +## License ## + +See [LICENSE](LICENSE). + +## Building ## + +You can only build on Windows, and the result is always a Windows .exe +file that can act as a standalone installer for the GUI Wallet Beta 2. + +The build steps in detail: + +1. Install *Inno Setup*. You can get it from [here](http://www.jrsoftware.org/isdl.php) +2. Get the Inno Setup script plus related files by cloning the whole [monero-core](https://github.com/monero-project/monero-core) repository; you will only need the files in the installer directory `installers\windows` however +3. The setup script is written to take the GUI Wallet files from a subdirectory named `bin`; so create `installers\windows\bin`, get the zip file of the GUI Wallet Beta 2 from [here](https://getmonero.org/downloads/), unpack it somewhere, and copy all the files and subdirectories in the `monero-gui-0.10.3.1-beta2` directory to this `bin` subdirectory +4. Start Inno Setup, load `Monero.iss` and compile it. +5. The result i.e. the finished installer will be the file `mysetup.exe` in the `installers\windows\Output` subdirectory + diff --git a/installers/windows/ReadMe.htm b/installers/windows/ReadMe.htm new file mode 100644 index 00000000..34df7a93 --- /dev/null +++ b/installers/windows/ReadMe.htm @@ -0,0 +1,173 @@ + +
+Copyright (c) 2014-2017, The Monero Project
+ Date: June 9, 2017
This ReadMe does not aim to be a complete introduction to Monero. If you are new to Monero or even to + cryptocurrencies in general you find a good introduction on reddit at + Newcomers Please Read. Everything You Need To Know. + You also find a lot of good tutorials on Monero.How. +
+ +Please note that Monero and its software are constantly evolving and progressing; it probably won't take + long for some of the information here to become outdated. +
+ +You just installed the Beta 2 of the Monero GUI Wallet for Windows, more exact version 0.10.3.1. The wallet + enables you to send and receive moneroj in a secure and very private way. +
+ +Also included is the whole Monero Core software, so you have everything now to run a so-called full node + and become part of the network of nodes that manages the Monero blockchain; you don't need to install additional + packages in order to start.
+ +For checking whether there are already newer versions of this package you can go to the + Downloads page on getmonero.org, + the official Monero site.
+ +Any Monero wallet needs access to the blockchain, the ongoing ledger of all Monero transactions. For the + GUI wallet there are two principal ways to get that access: You can let Monero sync with the network + i.e. let it download the blockchain and store it locally on your computer, or you can configure your wallet to + access a remote open node to get indirect access to the blockchain.
+ +Working with your own copy of the blockchain is preferred: It strengthens the Monero network, and it + provides the most security and privacy possible for you.
+ +However if your Internet access makes it difficult to run a full node, or if you have simply no room to store + the blockchain locally (over 17 GB in summer 2017, and of course growing), you can compromise and try to connect + to a remote node. One way of finding such a node is checking + this page. +
+ +Please do read the following before jumping right in and starting the GUI wallet:
+ +If you decide to work with your own copy of the blockchain, which you should whenever possible, you have to + download it first; it's not part of the installed package. + Beside the GUI wallet there is second program, the so-called Monero daemon, which will carry out that download.
+ +Depending on your Internet access and the speed of your computer this can take + several hours, in some cases more than a day. Furthermore there are unfortunate cases where the + download gets stuck somehow or doesn't work at all, e.g. because a firewall prevents access to other nodes of the + Monero network.
+ +The GUI wallet can start the daemon for you, but that way you will not see much during initial blockchain + download, especially you probably won't see any error messages in case something goes wrong. By starting the + daemon yourself "by hand" using the Monero Daemon icon in the Monero program group you will + see it running and displaying messages in a separate window.
+ +If all goes well the daemon will finally display a message like this: + You are now synchronized with the network.
+ +Then you are ready for sure to start your Monero adventures by starting the GUI wallet.
+ +When the Monero daemon downloads the blockchain it does so by connecting to other nodes of the network.
+ +If you allow incoming TCP/IP connections to port 18080 on your computer and let your daemon run for extended + periods of time you can "return the favor" and help others in turn to get access to Monero. However, depending on + your Internet connection, firewall, modem, router, ISP etc. this might not be possible, and opening a port in such + a way usually requires some technical knowledge.
+ +If you want to try you may start e.g. with + this Monero Stack Exchange + question.
+ +The Monero software and especially the GUI wallet are "work in progress", as you can expect seeing the word + Beta in the name of the package, and sometimes things go wrong.
+ +Please note that despite any technical problems that you may encounter your moneroj are almost always safe: You may + not be able to move them or you even may not see how many you currently have, but you most probably won't loose any. + But do remember that the seed needed to re-create the wallet is critical, however: Never loose your + seed!
+ +There is a bug in this beta of the GUI Wallet that triggers if it is installed in a path that contains spaces / + blank characters, like the default location for Windows programs C:\Program Files unfortunately does. + Symptoms are problems in the communication between the wallet and the daemon, e.g. the wallet not "seeing" the + daemon and then not knowing whether it is "synchronized" with the network and thus ready to work or not. You can + avoid these problems by starting the daemon yourself, with the help of the Monero Daemon icon in the + Monero program group.
+ +In the Monero Core + GUI Wallet program group there are several icons that may help you to solve problems. + These are the icons with a x in front and the name (in parenthesis) to make them visually stand + apart from the "normal" ones because you will probably only need them in case of trouble, but not during normal + usage of Monero.
+ +Here an overview and short info what each icon does:
+ +x (Try GUI Wallet Low Graphics Mode) | +Run the GUI wallet in a mode that allows for low-graphics + environments, e.g. systems with very simple non-hardware-accelerated or emulated / virtualized video cards; + also try if the display is simply slow + | +
x (Monero Daemon, Exit Confirm) | ++ Run the Monero daemon in a window that does not automatically close if + the daemon should exit because of a fatal error; useful in cases where the normal daemon icon + just leads to a window that closes right away + | +
x (Try Kill Daemon) | ++ Kill any running daemon (technically, any process called monerod.exe), whether + with or without any visible window, for starting "with a clean slate"; easier than + killing such tasks with the help of the Windows Task Manager + | +
x (Check GUI Wallet Log) | +Open the log with status and error messages of the GUI wallet program in Notepad; + experienced people have a chance to diagnose technical problems with the wallet by looking at the last few lines + of this log | +
x (Check Daemon Log) | ++ Open the log with status and error messages of the daemon in Notepad; again, the last few + lines of this (possible very long) log are the most important for troubleshooting + | +
x (Check Default Wallet Folder) | ++ Open the standard wallet folder in Windows Explorer; useful e.g. if you want to backup + your wallets + | +
x (Check Default Wallet Folder) | ++ Open the folder containing the blockchain in Windows Explorer + | +