view src/os_w32exe.c @ 16198:b0e19f135e50 v8.1.1104

patch 8.1.1104: MS-Windows: not all environment variables can be used commit https://github.com/vim/vim/commit/796cc42d3a4fc7a940da87831a111eeb6b7a5cf3 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Apr 3 20:31:00 2019 +0200 patch 8.1.1104: MS-Windows: not all environment variables can be used Problem: MS-Windows: not all environment variables can be used. Solution: Use the wide version of WinMain() and main(). (Ken Takata, closes #4206)
author Bram Moolenaar <Bram@vim.org>
date Wed, 03 Apr 2019 20:45:06 +0200
parents 3a5114768cfa
children 7ae2396cef62
line wrap: on
line source

/* vi:set ts=8 sts=4 sw=4 noet:
 *
 * VIM - Vi IMproved		by Bram Moolenaar
 *				GUI support by Robert Webb
 *
 * Do ":help uganda"  in Vim to read copying and usage conditions.
 * Do ":help credits" in Vim to see a list of people who contributed.
 * See README.txt for an overview of the Vim source code.
 */
/*
 * Windows GUI: main program (EXE) entry point:
 *
 * Ron Aaron <ronaharon@yahoo.com> wrote this and the (now deleted) DLL support
 * code.
 */
#include "vim.h"

#ifdef __MINGW32__
# ifndef _cdecl
#  define _cdecl
# endif
#endif

// cproto doesn't create a prototype for VimMain()
int _cdecl VimMain(int argc, char **argv);
#ifdef FEAT_GUI
void _cdecl SaveInst(HINSTANCE hInst);
#endif

#ifndef PROTO
# ifdef FEAT_GUI
    int WINAPI
wWinMain(
    HINSTANCE	hInstance,
    HINSTANCE	hPrevInst UNUSED,
    LPWSTR	lpszCmdLine UNUSED,
    int		nCmdShow UNUSED)
# else
    int
wmain(int argc UNUSED, wchar_t **argv UNUSED)
# endif
{
# ifdef FEAT_GUI
    SaveInst(hInstance);
# endif
    VimMain(0, NULL);

    return 0;
}
#endif