Пример #1
0
        private int InitializeSymbols(string filePath, string[] symbolPaths)
        {
            var paths = new[] { Path.GetFullPath(Path.GetDirectoryName(filePath)) }
                .Union(symbolPaths.Select(Path.GetFullPath))
                .Distinct()
                .ToArray();

            return _symbols.SetSymbolPathWide(string.Join(";", paths));
        }
Пример #2
0
        private int ForceLoadSymbols(string fullPath)
        {
            int hr = HResult.Ok;

            hr = _symbols.SetSymbolPathWide(Path.GetDirectoryName(fullPath));

            InitializeSources(_sourcePaths);

            // @TODO: HResult checks ?
            hr = _symbols.Reload(Path.GetFileNameWithoutExtension(fullPath));

            ulong handle, offset;
            uint  matchSize;

            hr = _symbols.StartSymbolMatch("*", out handle);
            var name = new StringBuilder(Defaults.BufferSize);

            hr = _symbols.GetNextSymbolMatch(handle, name, Defaults.BufferSize, out matchSize, out offset);
            hr = _symbols.EndSymbolMatch(handle);
            return(hr);
        }