mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 19:48:20 +02:00
Debugger fixes
Removing some debugger remote-requests
This commit is contained in:
parent
c2d086fe8e
commit
a32d18d962
21 changed files with 198 additions and 638 deletions
|
@ -12,6 +12,7 @@
|
|||
#include "BeefySysLib/util/Deque.h"
|
||||
#include "BeefySysLib/util/HashSet.h"
|
||||
#include "BeefySysLib/util/MultiHashSet.h"
|
||||
#include "CrashCatcher.h"
|
||||
|
||||
//#include <mmsystem.h>
|
||||
//#include <shellapi.h>
|
||||
|
|
|
@ -48,19 +48,17 @@ namespace System.IO
|
|||
return .Ok;
|
||||
}
|
||||
|
||||
public static Result<void> DelTree(StringView path)
|
||||
public static Result<void, Platform.BfpFileResult> DelTree(StringView path)
|
||||
{
|
||||
if (path.Length <= 2)
|
||||
return .Err;
|
||||
return .Err(.InvalidParameter);
|
||||
if ((path[0] != '/') && (path[0] != '\\'))
|
||||
{
|
||||
if (path[1] == ':')
|
||||
{
|
||||
if (path.Length < 3)
|
||||
return .Err;
|
||||
return .Err(.InvalidParameter);
|
||||
}
|
||||
else
|
||||
return .Err;
|
||||
}
|
||||
|
||||
for (var fileEntry in Directory.EnumerateDirectories(path))
|
||||
|
|
|
@ -548,6 +548,7 @@
|
|||
<OutputFile>$(SolutionDir)\IDE\dist\$(TargetName).dll</OutputFile>
|
||||
<ImportLibrary>$(SolutionDir)\IDE\dist\$(TargetName).lib</ImportLibrary>
|
||||
<ModuleDefinitionFile>BeefRT.def</ModuleDefinitionFile>
|
||||
<AdditionalDependencies>kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Static|x64'">
|
||||
|
|
|
@ -7,4 +7,4 @@ StartupObject = "DocPrep.Program"
|
|||
[Configs.Debug.Win64]
|
||||
TargetDirectory = "$(WorkspaceDir)/../../IDE/dist"
|
||||
OtherLinkFlags = "$(LinkFlags) IDEHelper64_d.lib"
|
||||
DebugCommandArguments = "c:\\beef\\BeefLibs\\corlib\\_test c:\\beef\\hugo\\temp"
|
||||
DebugCommandArguments = "c:\\beef\\BeefLibs\\corlib\\src c:\\temp\\beefdocs"
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
#include "CrashCatcher.h"
|
||||
#include "../util/CritSect.h"
|
||||
#include "../util/Dictionary.h"
|
||||
|
||||
USING_NS_BF;
|
||||
|
||||
|
@ -593,6 +594,13 @@ static String ImageHelpWalk(PCONTEXT theContext, int theSkipCount)
|
|||
|
||||
CONTEXT ctx = *theContext;
|
||||
|
||||
struct ModuleInfo
|
||||
{
|
||||
|
||||
};
|
||||
|
||||
Dictionary<String, ModuleInfo> moduleInfoMap;
|
||||
|
||||
for (;;)
|
||||
{
|
||||
#ifdef BF64
|
||||
|
@ -635,7 +643,11 @@ static String ImageHelpWalk(PCONTEXT theContext, int theSkipCount)
|
|||
|
||||
HANDLE hProcess = GetCurrentProcess();
|
||||
|
||||
if (gSymGetSymFromAddr(hProcess, sf.AddrPC.Offset, &symDisplacement, pSymbol))
|
||||
bool forceFail = true;
|
||||
|
||||
|
||||
|
||||
if ((gSymGetSymFromAddr(hProcess, sf.AddrPC.Offset, &symDisplacement, pSymbol)) && (!forceFail))
|
||||
{
|
||||
char aUDName[256];
|
||||
gUnDecorateSymbolName(pSymbol->Name, aUDName, 256,
|
||||
|
@ -676,6 +688,13 @@ static String ImageHelpWalk(PCONTEXT theContext, int theSkipCount)
|
|||
uintptr section = 0, offset = 0;
|
||||
|
||||
GetLogicalAddress((PVOID)sf.AddrPC.Offset, szModule, sizeof(szModule), section, offset);
|
||||
|
||||
ModuleInfo* moduleInfo = NULL;
|
||||
if (moduleInfoMap.TryAdd(szModule, NULL, &moduleInfo))
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
aDebugDump += StrFormat("%@ %@ %04X:%@ %s\r\n", sf.AddrFrame.Offset, sf.AddrPC.Offset, section, offset, GetFileName(szModule).c_str());
|
||||
}
|
||||
|
||||
|
|
|
@ -53,7 +53,7 @@ TargetDirectory = "$(WorkspaceDir)/dist"
|
|||
TargetName = "BeefIDE_d2"
|
||||
OtherLinkFlags = "$(LinkFlags) Comdlg32.lib kernel32.lib user32.lib advapi32.lib shell32.lib IDEHelper64_d.lib BeefySysLib64_d.lib wsock32.lib"
|
||||
BeefLibType = "DynamicDebug"
|
||||
DebugCommandArguments = "-workspace=c:\\beef_website\\samples\\SpaceGame"
|
||||
DebugCommandArguments = "-workspace=c:\\beef\\ide\\mintest"
|
||||
DebugWorkingDirectory = "$(ProjectDir)\\dist"
|
||||
EnvironmentVars = ["_NO_DEBUG_HEAP=1"]
|
||||
|
||||
|
|
|
@ -174,68 +174,22 @@ namespace Hey.Dude.Bro
|
|||
return 111;
|
||||
}
|
||||
|
||||
public static void TestA()
|
||||
{
|
||||
int* a = null;
|
||||
*a = 123;
|
||||
}
|
||||
|
||||
public static int Main(String[] args)
|
||||
{
|
||||
int* iPtr = null;
|
||||
*iPtr = 123;
|
||||
|
||||
Blurg.Hey();
|
||||
|
||||
/*while (true)
|
||||
for (int i < 100)
|
||||
{
|
||||
int a = 0;
|
||||
PrintF("Hello 2!\n");
|
||||
Thread.Sleep(10);
|
||||
}
|
||||
|
||||
int* iPtr = null;
|
||||
*iPtr = 123;*/
|
||||
|
||||
GC.SetAutoCollectPeriod(20);
|
||||
Thread.Sleep(1000);
|
||||
|
||||
String str = scope .("Boops!");
|
||||
int len = str.GetLength();
|
||||
|
||||
GetVal();
|
||||
|
||||
Thread thread = scope .(new => Thread);
|
||||
thread.Start(false);
|
||||
|
||||
//Thread.Sleep(500);
|
||||
|
||||
//Test2(1, 2, 3, 4);
|
||||
|
||||
thread.Join();
|
||||
|
||||
RunLong();
|
||||
|
||||
|
||||
str.Append("Hey yo!\nHey what's up\nHeef neef.\nSnoggles!");
|
||||
|
||||
str.Append(
|
||||
"""
|
||||
Hey, this is a bad ass string
|
||||
Yep yep
|
||||
What up!
|
||||
""");
|
||||
|
||||
Color clr = (.)123;
|
||||
|
||||
int64 l;
|
||||
|
||||
Florf fl = .();
|
||||
|
||||
for (int j < 100)//zzz
|
||||
{
|
||||
fl.Goof();
|
||||
|
||||
for (int i < 1000000000L)
|
||||
{
|
||||
int a = 3;
|
||||
}
|
||||
}
|
||||
|
||||
//PrintF("%ld\n", foo((int32*)&l, &l));
|
||||
//return foo((int32*)&l, &l);
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2509,6 +2509,15 @@ namespace IDE
|
|||
{
|
||||
scope AutoBeefPerf("IDE.WorkspaceLoaded");
|
||||
|
||||
if (!Environment.IsFileSystemCaseSensitive)
|
||||
{
|
||||
// Make sure we have the correct actual path
|
||||
String newPath = new String();
|
||||
Path.GetActualPathName(mWorkspace.mDir, newPath);
|
||||
delete mWorkspace.mDir;
|
||||
mWorkspace.mDir = newPath;
|
||||
}
|
||||
|
||||
List<String> platforms = scope List<String>();
|
||||
platforms.Add(IDEApp.sPlatform32Name);
|
||||
platforms.Add(IDEApp.sPlatform64Name);
|
||||
|
@ -6052,6 +6061,7 @@ namespace IDE
|
|||
|
||||
SourceHash hash = default;
|
||||
int hashPos = filePath.IndexOf('#');
|
||||
bool checkForOldFileInfo = false;
|
||||
if (hashPos != -1)
|
||||
{
|
||||
let hashStr = StringView(filePath, hashPos + 1);
|
||||
|
@ -6083,9 +6093,19 @@ namespace IDE
|
|||
if (hashKind == .None)
|
||||
hashKind = .MD5;
|
||||
|
||||
LoadTextFile(filePath, fileText, false, scope [&] () => { hash = SourceHash.Create(hashKind, fileText); }).IgnoreError();
|
||||
LoadTextFile(filePath, fileText, false, scope [&] () => { fileHash = SourceHash.Create(hashKind, fileText); }).IgnoreError();
|
||||
|
||||
if (fileHash != hash)
|
||||
checkForOldFileInfo = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (!File.Exists(filePath))
|
||||
checkForOldFileInfo = true;
|
||||
}
|
||||
|
||||
if (checkForOldFileInfo)
|
||||
{
|
||||
String outFileInfo = scope String();
|
||||
mDebugger.GetStackFrameOldFileInfo(mDebugger.mActiveCallStackIdx, outFileInfo);
|
||||
|
@ -6097,8 +6117,6 @@ namespace IDE
|
|||
loadCmd = scope:: String(args[1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// If we attach to an executable and we happen to have the Diassembly panel shown, STILL just show the source instead of the disassembly at first
|
||||
if (mIsAttachPendingSourceShow)
|
||||
|
|
|
@ -1291,8 +1291,19 @@ namespace IDE
|
|||
if (!mProjectPath.IsEmpty)
|
||||
{
|
||||
mProjectDir.Clear();
|
||||
mProjectPath.Clear();
|
||||
|
||||
if (!Environment.IsFileSystemCaseSensitive)
|
||||
{
|
||||
Path.GetActualPathName(path, mProjectPath);
|
||||
}
|
||||
|
||||
if (mProjectPath.IsEmpty)
|
||||
{
|
||||
mProjectPath.Set(path);
|
||||
IDEUtils.FixFilePath(mProjectPath);
|
||||
}
|
||||
|
||||
Path.GetDirectoryPath(mProjectPath, mProjectDir);
|
||||
if (structuredData.Load(ProjectFileName) case .Err)
|
||||
return false;
|
||||
|
|
|
@ -17,6 +17,7 @@ using IDE.Debugger;
|
|||
using IDE.Compiler;
|
||||
using System.Security.Cryptography;
|
||||
using IDE.util;
|
||||
using Beefy2D.utils;
|
||||
|
||||
namespace IDE.ui
|
||||
{
|
||||
|
@ -94,10 +95,6 @@ namespace IDE.ui
|
|||
{
|
||||
if (tabbedView.mIsFillWidget)
|
||||
gApp.mActiveDocumentsTabbedView = tabbedView;
|
||||
else
|
||||
{
|
||||
NOP!();
|
||||
}
|
||||
}
|
||||
|
||||
var sourceEditWidgetContent = (SourceEditWidgetContent)mEditWidgetContent;
|
||||
|
@ -365,6 +362,7 @@ namespace IDE.ui
|
|||
public int32 mClassifiedTextVersionId;
|
||||
public bool mLoadFailed;
|
||||
String mOldVerLoadCmd ~ delete _;
|
||||
HTTPRequest mOldVerHTTPRequest ~ delete _;
|
||||
IDEApp.ExecutionInstance mOldVerLoadExecutionInstance ~ { if (_ != null) _.mAutoDelete = true; };
|
||||
SourceFindTask mSourceFindTask ~ delete _;
|
||||
bool mWantsFastClassify;
|
||||
|
@ -3142,13 +3140,19 @@ namespace IDE.ui
|
|||
|
||||
CloseHeader();
|
||||
|
||||
mPanelHeader = new PanelHeader();
|
||||
if (mOldVerLoadCmd == null)
|
||||
mOldVerLoadCmd = new String(loadCmd);
|
||||
|
||||
if (loadCmd.StartsWith("http", .OrdinalIgnoreCase))
|
||||
{
|
||||
LoadOldVer();
|
||||
return;
|
||||
}
|
||||
// For testing a long command...
|
||||
//mOldVerLoadCmd.Set("/bin/sleep.exe 10");
|
||||
|
||||
mPanelHeader = new PanelHeader();
|
||||
|
||||
String fileName = scope String();
|
||||
Path.GetFileName(mFilePath, fileName);
|
||||
String headerStr = scope String();
|
||||
|
@ -3190,10 +3194,19 @@ namespace IDE.ui
|
|||
}
|
||||
|
||||
void LoadOldVer()
|
||||
{
|
||||
if (mOldVerLoadCmd.StartsWith("http", .OrdinalIgnoreCase))
|
||||
{
|
||||
DeleteAndNullify!(mOldVerHTTPRequest);
|
||||
mOldVerHTTPRequest = new HTTPRequest();
|
||||
mOldVerHTTPRequest.GetFile(mOldVerLoadCmd, mFilePath);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.Assert(mOldVerLoadExecutionInstance == null);
|
||||
mOldVerLoadExecutionInstance = gApp.DoRun(null, mOldVerLoadCmd, gApp.mInstallDir, .None);
|
||||
mOldVerLoadExecutionInstance.mAutoDelete = false;
|
||||
}
|
||||
|
||||
CloseHeader();
|
||||
|
||||
|
@ -3208,7 +3221,12 @@ namespace IDE.ui
|
|||
var button = mPanelHeader.AddButton("Cancel");
|
||||
button.mOnMouseClick.Add(new (evt) =>
|
||||
{
|
||||
if (mOldVerLoadExecutionInstance != null)
|
||||
mOldVerLoadExecutionInstance.Cancel();
|
||||
if (mOldVerHTTPRequest != null)
|
||||
{
|
||||
DeleteAndNullify!(mOldVerHTTPRequest);
|
||||
}
|
||||
});
|
||||
button = mPanelHeader.AddButton("Always Run");
|
||||
button.mOnMouseClick.Add(new (evt) =>
|
||||
|
@ -5376,6 +5394,15 @@ namespace IDE.ui
|
|||
}
|
||||
}
|
||||
|
||||
if (mOldVerHTTPRequest != null)
|
||||
{
|
||||
let result = mOldVerHTTPRequest.GetResult();
|
||||
if (result != .NotDone)
|
||||
{
|
||||
RetryLoad();
|
||||
}
|
||||
}
|
||||
|
||||
UpdateMouseover();
|
||||
|
||||
var compiler = ResolveCompiler;
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
#include "BeefySysLib/Util/PerfTimer.h"
|
||||
#include "BeefySysLib/Util/Dictionary.h"
|
||||
#include "BeefySysLib/Util/BeefPerf.h"
|
||||
#include "BeefySysLib/platform/PlatformHelper.h"
|
||||
#include "WinDebugger.h"
|
||||
#include "MiniDumpDebugger.h"
|
||||
#include "Linker/BlHash.h"
|
||||
|
@ -6327,13 +6328,43 @@ String COFF::GetOldSourceCommand(const StringImpl& path)
|
|||
if (!matches)
|
||||
break;
|
||||
|
||||
String& target = defs["SRCSRVTRG"];
|
||||
String& cmd = defs["SRCSRVCMD"];
|
||||
String& env = defs["SRCSRVENV"];
|
||||
|
||||
_Expand(target);
|
||||
_Expand(cmd);
|
||||
_Expand(env);
|
||||
|
||||
String retVal;
|
||||
retVal = defs["SRCSRVTRG"];
|
||||
if ((cmd.IsEmpty()) && (target.StartsWith("HTTP", StringImpl::CompareKind_OrdinalIgnoreCase)))
|
||||
{
|
||||
String localFile;
|
||||
|
||||
BfpFileResult result;
|
||||
BFP_GETSTR_HELPER(localFile, result, BfpFile_GetTempPath(__STR, __STRLEN, &result));
|
||||
int dotPos = target.IndexOf("://");
|
||||
if (dotPos != -1)
|
||||
{
|
||||
localFile.Append("SymbolCache\\src\\");
|
||||
localFile.Append(StringView(target, dotPos + 3));
|
||||
localFile.Replace("/", "\\");
|
||||
}
|
||||
|
||||
retVal = localFile;
|
||||
retVal += "\n";
|
||||
retVal += defs["SRCSRVCMD"];
|
||||
retVal += target;
|
||||
retVal += "\n";
|
||||
retVal += defs["SRCSRVENV"];
|
||||
_Expand(retVal);
|
||||
retVal += env;
|
||||
}
|
||||
else if (!cmd.IsWhitespace())
|
||||
{
|
||||
retVal = target;
|
||||
retVal += "\n";
|
||||
retVal += cmd;
|
||||
retVal += "\n";
|
||||
retVal += env;
|
||||
}
|
||||
|
||||
return retVal;
|
||||
}
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
#include "Profiler.h"
|
||||
#include "DebugManager.h"
|
||||
//#include <Winternl.h>
|
||||
//::NtQuerySystemInformation();
|
||||
#include <mmsystem.h>
|
||||
|
||||
//#include <ntstatus.h>
|
||||
#include <ntsecapi.h> // UNICODE_STRING
|
||||
|
||||
#define STATUS_INFO_LENGTH_MISMATCH 0xc0000004
|
||||
|
@ -120,7 +116,7 @@ static SYSTEM_PROCESS_INFORMATION* CaptureProcessInfo()
|
|||
ntdll = GetModuleHandle(path);
|
||||
if (ntdll == NULL)
|
||||
return NULL;
|
||||
NtQuerySystemInformation = (NtQuerySystemInformation_t) GetProcAddress(ntdll, "NtQuerySystemInformation");
|
||||
NtQuerySystemInformation = (NtQuerySystemInformation_t)GetProcAddress(ntdll, "NtQuerySystemInformation");
|
||||
|
||||
uint allocSize = 1024;
|
||||
uint8* data = NULL;
|
||||
|
@ -180,9 +176,6 @@ void DbgProfiler::ThreadProc()
|
|||
const int maxStackTrace = 1024;
|
||||
addr_target stackTrace[maxStackTrace];
|
||||
|
||||
// Index zero is invalid
|
||||
//mProfileAddrEntries.push_back(NULL);
|
||||
|
||||
DWORD prevSampleTick = timeGetTime();
|
||||
uint32 accumMS = 0;
|
||||
|
||||
|
@ -222,7 +215,6 @@ void DbgProfiler::ThreadProc()
|
|||
DWORD startTick0 = timeGetTime();
|
||||
idleThreadSet.Clear();
|
||||
|
||||
//SYSTEM_PROCESS_INFORMATION* processData = CaptureProcessInfo();
|
||||
SYSTEM_PROCESS_INFORMATION* processData = NULL;
|
||||
std::unique_ptr<SYSTEM_PROCESS_INFORMATION> ptrDelete(processData);
|
||||
|
||||
|
@ -585,7 +577,7 @@ void DbgProfiler::HandlePendingEntries()
|
|||
}
|
||||
ProfileProcId* procId = NULL;
|
||||
|
||||
auto subProgram = mDebugger->mDebugTarget->FindSubProgram(addr);
|
||||
auto subProgram = mDebugger->mDebugTarget->FindSubProgram(addr, DbgOnDemandKind_LocalOnly);
|
||||
while (stackTraceProcIdx < maxStackTrace)
|
||||
{
|
||||
if (subProgram != NULL)
|
||||
|
@ -604,7 +596,7 @@ void DbgProfiler::HandlePendingEntries()
|
|||
{
|
||||
String symbolName;
|
||||
addr_target symbolOffset = 0;
|
||||
if ((!mDebugger->mDebugTarget->FindSymbolAt(addr, &symbolName, &symbolOffset)) || (symbolOffset > 64 * 1024))
|
||||
if ((!mDebugger->mDebugTarget->FindSymbolAt(addr, &symbolName, &symbolOffset, NULL, false)) || (symbolOffset > 64 * 1024))
|
||||
{
|
||||
auto dbgModule = mDebugger->mDebugTarget->FindDbgModuleForAddress(addr);
|
||||
if (dbgModule != NULL)
|
||||
|
@ -647,90 +639,12 @@ void DbgProfiler::Process()
|
|||
|
||||
int time = mTotalActiveSamplingMS;
|
||||
|
||||
// const int maxStackTrace = 1024;
|
||||
// ProfileProcId* procStackTrace[maxStackTrace];
|
||||
//
|
||||
// bool reverse = false;
|
||||
|
||||
BF_ASSERT(mProfileAddrEntries.IsEmpty());
|
||||
|
||||
mProfileAddrEntries.Resize(mProfileAddrEntrySet.size() + 1);
|
||||
for (auto& val : mProfileAddrEntrySet)
|
||||
mProfileAddrEntries[val.mEntryIdx] = &val;
|
||||
|
||||
// for (int i = 0; i < (int)mProfileAddrEntries.size(); i++)
|
||||
// mProfileAddrToProcMap.push_back(-1);
|
||||
|
||||
// for (int addrEntryIdx = 0; addrEntryIdx < (int)mProfileAddrEntries.size(); addrEntryIdx++)
|
||||
// {
|
||||
// const ProfileAddrEntry* addrEntry = mProfileAddrEntries[addrEntryIdx];
|
||||
// if (addrEntry == NULL)
|
||||
// continue;
|
||||
//
|
||||
// ProfileProcId** procStackTraceHead = reverse ? (procStackTrace + maxStackTrace) : procStackTrace;
|
||||
// int stackTraceProcIdx = 0;
|
||||
// for (int addrIdx = 0; addrIdx < addrEntry->mSize; addrIdx++)
|
||||
// {
|
||||
// addr_target addr = addrEntry->mData[addrIdx];
|
||||
// if (addrIdx > 0)
|
||||
// {
|
||||
// // To reference from SourcePC (calling address, not return address)
|
||||
// addr--;
|
||||
// }
|
||||
// ProfileProcId* procId = NULL;
|
||||
//
|
||||
// auto subProgram = mDebugger->mDebugTarget->FindSubProgram(addr);
|
||||
// while (stackTraceProcIdx < maxStackTrace)
|
||||
// {
|
||||
// if (subProgram != NULL)
|
||||
// {
|
||||
// ProfileProcId** procIdPtr;
|
||||
// if (mProcMap.TryAdd(subProgram, NULL, &procIdPtr))
|
||||
// {
|
||||
// String procName = subProgram->ToString();
|
||||
// procId = Get(procName);
|
||||
// *procIdPtr = procId;
|
||||
// }
|
||||
// else
|
||||
// procId = *procIdPtr;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// String symbolName;
|
||||
// addr_target symbolOffset = 0;
|
||||
// if ((!mDebugger->mDebugTarget->FindSymbolAt(addr, &symbolName, &symbolOffset)) || (symbolOffset > 64 * 1024))
|
||||
// {
|
||||
// auto dbgModule = mDebugger->mDebugTarget->FindDbgModuleForAddress(addr);
|
||||
// if (dbgModule != NULL)
|
||||
// symbolName += dbgModule->mDisplayName + "!";
|
||||
// symbolName += StrFormat("0x%@", addr);
|
||||
// }
|
||||
//
|
||||
// procId = Get(symbolName);
|
||||
// }
|
||||
//
|
||||
// if (reverse)
|
||||
// *(--procStackTraceHead) = procId;
|
||||
// else
|
||||
// procStackTraceHead[stackTraceProcIdx] = procId;
|
||||
// stackTraceProcIdx++;
|
||||
//
|
||||
// if (subProgram == NULL)
|
||||
// break;
|
||||
// if (subProgram->mInlineeInfo == NULL)
|
||||
// break;
|
||||
// subProgram = subProgram->mInlineeInfo->mInlineParent;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// auto procEntry = AddToSet(mProfileProcEntrySet, procStackTraceHead, stackTraceProcIdx);
|
||||
// if (procEntry->mEntryIdx == -1)
|
||||
// {
|
||||
// procEntry->mEntryIdx = (int)mProfileProcEntrySet.size() - 1; // Start at '0'
|
||||
// }
|
||||
// mProfileAddrToProcMap[addrEntry->mEntryIdx] = procEntry->mEntryIdx;
|
||||
// }
|
||||
|
||||
BF_ASSERT(mProfileProcEntries.IsEmpty());
|
||||
mProfileProcEntries.Resize(mProfileProcEntrySet.size());
|
||||
for (auto& val : mProfileProcEntrySet)
|
||||
|
|
|
@ -1399,9 +1399,9 @@ bool WinDebugger::DoUpdate()
|
|||
dbgModule->PreCacheImage();
|
||||
}
|
||||
|
||||
for (auto dbgModule : mPendingDebugInfoLoad)
|
||||
for (auto kv : mPendingDebugInfoLoad)
|
||||
{
|
||||
dbgModule->PreCacheDebugInfo();
|
||||
kv.mKey->PreCacheDebugInfo();
|
||||
}
|
||||
|
||||
while (!mPendingImageLoad.IsEmpty())
|
||||
|
@ -1412,26 +1412,21 @@ bool WinDebugger::DoUpdate()
|
|||
_ModuleChanged(dbgModule);
|
||||
}
|
||||
|
||||
while (!mPendingDebugInfoLoad.IsEmpty())
|
||||
if (!mPendingDebugInfoLoad.IsEmpty())
|
||||
{
|
||||
auto dbgModule = mPendingDebugInfoLoad.back();
|
||||
mPendingDebugInfoLoad.pop_back();
|
||||
dbgModule->RequestDebugInfo();
|
||||
Array<DbgPendingDebugInfoLoad> pendingList;
|
||||
for (auto kv : mPendingDebugInfoLoad)
|
||||
pendingList.Add(kv.mValue);
|
||||
|
||||
for (auto& entry : pendingList)
|
||||
{
|
||||
auto dbgModule = entry.mModule;
|
||||
entry.mModule->RequestDebugInfo(entry.mAllowRemote);
|
||||
// We do a "_ModuleChanged" even if the load failed, so we rehup the callstack and stop
|
||||
// saying "<Loading...>"
|
||||
_ModuleChanged(dbgModule);
|
||||
_ModuleChanged(entry.mModule);
|
||||
}
|
||||
}
|
||||
|
||||
/*while (!mPendingDebugInfoRequests.IsEmpty())
|
||||
{
|
||||
if ((!mPendingImageLoad.IsEmpty()) || (!mPendingDebugInfoLoad.IsEmpty()))
|
||||
break;
|
||||
|
||||
auto dbgModule = mPendingDebugInfoRequests.back();
|
||||
mPendingDebugInfoRequests.pop_back();
|
||||
if (LoadDebugInfoForModule(dbgModule) == 1)
|
||||
_ModuleChanged(dbgModule);
|
||||
}*/
|
||||
}
|
||||
|
||||
if (IsMiniDumpDebugger())
|
||||
|
@ -10829,7 +10824,7 @@ String WinDebugger::GetStackFrameInfo(int stackFrameIdx, intptr* addr, String* o
|
|||
{
|
||||
*outFlags |= FrameFlags_HasPendingDebugInfo;
|
||||
|
||||
if (mPendingDebugInfoLoad.Contains(dbgModule))
|
||||
if (mPendingDebugInfoLoad.ContainsKey(dbgModule))
|
||||
{
|
||||
String outName = EncodeDataPtr(pcAddress, true);
|
||||
if ((dbgModule != NULL) && (!dbgModule->mDisplayName.empty()))
|
||||
|
@ -11957,11 +11952,14 @@ int WinDebugger::LoadDebugInfoForModule(DbgModule* dbgModule)
|
|||
return 1;
|
||||
}
|
||||
|
||||
if (!mPendingDebugInfoLoad.Contains(dbgModule))
|
||||
DbgPendingDebugInfoLoad* dbgPendingDebugInfoLoad = NULL;
|
||||
if (mPendingDebugInfoLoad.TryAdd(dbgModule, NULL, &dbgPendingDebugInfoLoad))
|
||||
{
|
||||
mPendingDebugInfoLoad.Add(dbgModule);
|
||||
dbgPendingDebugInfoLoad->mModule = dbgModule;
|
||||
dbgPendingDebugInfoLoad->mAllowRemote = true;
|
||||
return 2;
|
||||
}
|
||||
dbgPendingDebugInfoLoad->mAllowRemote = true;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -357,6 +357,18 @@ struct WdMemoryBreakpointBind
|
|||
}
|
||||
};
|
||||
|
||||
struct DbgPendingDebugInfoLoad
|
||||
{
|
||||
DbgModule* mModule;
|
||||
bool mAllowRemote;
|
||||
|
||||
DbgPendingDebugInfoLoad()
|
||||
{
|
||||
mModule = NULL;
|
||||
mAllowRemote = false;
|
||||
}
|
||||
};
|
||||
|
||||
class WinDebugger : public Debugger
|
||||
{
|
||||
public:
|
||||
|
@ -431,7 +443,7 @@ public:
|
|||
DbgPendingExpr* mDebugPendingExpr;
|
||||
WdThreadInfo mDebugEvalThreadInfo; // Copy of thread info when eval started
|
||||
Array<DbgModule*> mPendingImageLoad;
|
||||
Array<DbgModule*> mPendingDebugInfoLoad;
|
||||
Dictionary<DbgModule*, DbgPendingDebugInfoLoad> mPendingDebugInfoLoad;
|
||||
Array<DbgModule*> mPendingDebugInfoRequests;
|
||||
HashSet<String> mLiteralSet;
|
||||
|
||||
|
|
Binary file not shown.
|
@ -1,47 +0,0 @@
|
|||
# Sublime Text 3 macro to merge CodeConv deps files
|
||||
# Open deps files and run this macro. A new file will be created that
|
||||
# includes data from all open deps files.
|
||||
import sublime, sublime_plugin
|
||||
|
||||
class Beefy_deps_mergeCommand(sublime_plugin.TextCommand):
|
||||
def run(self, edit):
|
||||
nv = self.view.window().new_file()
|
||||
|
||||
typeMap = {};
|
||||
strOut = "{\n\t\"trimReflection\":true,\n\t\"requiredTypes\":\n\t[\n"
|
||||
|
||||
for view in self.view.window().views():
|
||||
fileName = view.file_name()
|
||||
if ((fileName == None) or (fileName.find(".bfrtproj") == -1)):
|
||||
continue
|
||||
|
||||
viewRegion = sublime.Region(0, view.size())
|
||||
fullText = view.substr(viewRegion)
|
||||
lines = fullText.splitlines()
|
||||
|
||||
for line in lines:
|
||||
if not line.startswith("\t\t\""):
|
||||
continue
|
||||
|
||||
dataStr = line.split('\"')[1]
|
||||
parts = dataStr.split(':')
|
||||
|
||||
typeName = parts[0]
|
||||
memberData = parts[1].split(';')
|
||||
|
||||
if not typeName in typeMap:
|
||||
typeMap[typeName] = []
|
||||
|
||||
for memberName in memberData:
|
||||
if (not memberName in typeMap[typeName]):
|
||||
typeMap[typeName].append(memberName)
|
||||
|
||||
for typeName in sorted(typeMap):
|
||||
lineOut = "\t\t\"" + typeName + ":"
|
||||
lineOut += ";".join(sorted(typeMap[typeName]))
|
||||
lineOut += "\",\n"
|
||||
strOut += lineOut
|
||||
|
||||
strOut += "\t]\n}\n"
|
||||
|
||||
nv.replace(edit, sublime.Region(nv.size(), nv.size()), strOut)
|
|
@ -1,67 +0,0 @@
|
|||
""" File: BeefyLLDB.py """
|
||||
import lldb
|
||||
import shlex
|
||||
|
||||
class BFArraySyntheticChildrenProvider:
|
||||
def __init__(self, valobj, internal_dict):
|
||||
#print "Var: " + valobj.GetName()
|
||||
self.startIdx = 1
|
||||
self.obj = valobj
|
||||
self.update()
|
||||
def update(self):
|
||||
self.length = self.obj.GetChildMemberWithName("mLength")
|
||||
self.firstElement = self.obj.GetChildMemberWithName("mFirstElement")
|
||||
self.dataType = self.firstElement.GetType()
|
||||
def num_children(self):
|
||||
return min(1024, self.length.GetValueAsSigned()) + self.startIdx;
|
||||
def get_child_index(self,name):
|
||||
if (name == "mLength"):
|
||||
return 0;
|
||||
try:
|
||||
return int(name.lstrip('[').rstrip(']')) + self.startIdx
|
||||
except:
|
||||
return -1
|
||||
def get_child_at_index(self,index):
|
||||
if index < 0:
|
||||
return None;
|
||||
if index >= self.num_children():
|
||||
return None;
|
||||
|
||||
if (index == 0):
|
||||
return self.length;
|
||||
|
||||
offset = (index - self.startIdx) * self.dataType.GetByteSize()
|
||||
return self.firstElement.AddressOf().CreateChildAtOffset('['+str(index - self.startIdx)+']', offset, self.dataType)
|
||||
|
||||
def has_children(self):
|
||||
return True
|
||||
|
||||
def StringSummaryProvider(valobj, dict):
|
||||
e = lldb.SBError()
|
||||
s = u'"'
|
||||
|
||||
if valobj.GetValue() != 0:
|
||||
strObj = valobj.GetChildMemberWithName("start_char")
|
||||
len = valobj.GetChildMemberWithName("length").GetValueAsSigned()
|
||||
|
||||
i = 0
|
||||
newchar = -1
|
||||
ptrType = strObj.GetType().GetPointerType()
|
||||
|
||||
for i in range(0, min(8192, len)):
|
||||
data_val = strObj.CreateChildAtOffset('['+str(i)+']', i*2, strObj.GetType())
|
||||
newchar = data_val.GetValueAsUnsigned()
|
||||
i = i + 1
|
||||
|
||||
if newchar != 0:
|
||||
s = s + unichr(newchar)
|
||||
s = s + u'"'
|
||||
return s.encode('utf-8')
|
||||
|
||||
def __lldb_init_module(debugger,dict):
|
||||
print "InitModule"
|
||||
debugger.HandleCommand('type summary add --expand -x "BFArray1<" -summary-string "len = ${var.mLength}"')
|
||||
debugger.HandleCommand('type synthetic add -x "BFArray1<" -l BeefyLLDB.BFArraySyntheticChildrenProvider')
|
||||
debugger.HandleCommand('type summary add "BFType" -summary-string "${var.mDebugTypeData->mName}@${var.mDebugTypeData->mNamespace}"')
|
||||
debugger.HandleCommand('type summary add "BFTypeRoot" -summary-string "${var.mDebugTypeData->mName}@${var.mDebugTypeData->mNamespace}"')
|
||||
debugger.HandleCommand('type summary add "System::String" -F BeefyLLDB.StringSummaryProvider')
|
|
@ -1,310 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<configuration>
|
||||
|
||||
<configSections>
|
||||
<section name="configProtectedData" type="System.Configuration.ProtectedConfigurationSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="appSettings" type="System.Configuration.AppSettingsSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="connectionStrings" type="System.Configuration.ConnectionStringsSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="mscorlib" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false"/>
|
||||
<section name="runtime" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false"/>
|
||||
<section name="assemblyBinding" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false" />
|
||||
<section name="satelliteassemblies" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false" />
|
||||
<section name="startup" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false"/>
|
||||
<section name="system.codedom" type="System.CodeDom.Compiler.CodeDomConfigurationHandler, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="system.data" type="System.Data.Common.DbProviderFactoriesConfigurationHandler, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="system.diagnostics" type="System.Diagnostics.DiagnosticsConfigurationHandler, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="system.runtime.remoting" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false"/>
|
||||
<section name="system.windows.forms" type="System.Windows.Forms.WindowsFormsSection, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="windows" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowLocation="false" />
|
||||
<section name="strongNames" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowLocation="false"/>
|
||||
<sectionGroup name="system.web" type="System.Web.Configuration.SystemWebSectionGroup, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<section name="anonymousIdentification" type="System.Web.Configuration.AnonymousIdentificationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="authentication" type="System.Web.Configuration.AuthenticationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="authorization" type="System.Web.Configuration.AuthorizationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="browserCaps" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="clientTarget" type="System.Web.Configuration.ClientTargetSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="compilation" type="System.Web.Configuration.CompilationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="customErrors" type="System.Web.Configuration.CustomErrorsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="deployment" type="System.Web.Configuration.DeploymentSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineOnly" />
|
||||
<section name="globalization" type="System.Web.Configuration.GlobalizationSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="healthMonitoring" type="System.Web.Configuration.HealthMonitoringSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="hostingEnvironment" type="System.Web.Configuration.HostingEnvironmentSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication" />
|
||||
<section name="httpCookies" type="System.Web.Configuration.HttpCookiesSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="httpHandlers" type="System.Web.Configuration.HttpHandlersSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="httpModules" type="System.Web.Configuration.HttpModulesSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="httpRuntime" type="System.Web.Configuration.HttpRuntimeSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="identity" type="System.Web.Configuration.IdentitySection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="machineKey" type="System.Web.Configuration.MachineKeySection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="membership" type="System.Web.Configuration.MembershipSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="mobileControls" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="deviceFilters" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="pages" type="System.Web.Configuration.PagesSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="processModel" type="System.Web.Configuration.ProcessModelSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineOnly" allowLocation="false" />
|
||||
<section name="profile" type="System.Web.Configuration.ProfileSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="roleManager" type="System.Web.Configuration.RoleManagerSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="securityPolicy" type="System.Web.Configuration.SecurityPolicySection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication" />
|
||||
<section name="sessionPageState" type="System.Web.Configuration.SessionPageStateSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="sessionState" type="System.Web.Configuration.SessionStateSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="siteMap" type="System.Web.Configuration.SiteMapSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="trace" type="System.Web.Configuration.TraceSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="trust" type="System.Web.Configuration.TrustSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication" />
|
||||
<section name="urlMappings" type="System.Web.Configuration.UrlMappingsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="webControls" type="System.Web.Configuration.WebControlsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="webParts" type="System.Web.Configuration.WebPartsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="webServices" type="System.Web.Services.Configuration.WebServicesSection, System.Web.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="xhtmlConformance" type="System.Web.Configuration.XhtmlConformanceSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<sectionGroup name="caching" type="System.Web.Configuration.SystemWebCachingSectionGroup, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<section name="cache" type="System.Web.Configuration.CacheSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="outputCache" type="System.Web.Configuration.OutputCacheSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="outputCacheSettings" type="System.Web.Configuration.OutputCacheSettingsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
<section name="sqlCacheDependency" type="System.Web.Configuration.OutputCacheSettingsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
</sectionGroup>
|
||||
<section name="monoSettings" type="System.Web.Configuration.MonoSettingsSection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
</sectionGroup>
|
||||
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
|
||||
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35">
|
||||
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="Everywhere"/>
|
||||
<section name="profileService" type="System.Web.Configuration.ScriptingProfileServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
|
||||
<section name="authenticationService" type="System.Web.Configuration.ScriptingAuthenticationServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
|
||||
<section name="roleService" type="System.Web.Configuration.ScriptingRoleServiceSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="false" allowDefinition="MachineToApplication"/>
|
||||
</sectionGroup>
|
||||
</sectionGroup>
|
||||
</sectionGroup>
|
||||
<sectionGroup name="system.net" type="System.Net.Configuration.NetSectionGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<section name="authenticationModules" type="System.Net.Configuration.AuthenticationModulesSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="connectionManagement" type="System.Net.Configuration.ConnectionManagementSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="defaultProxy" type="System.Net.Configuration.DefaultProxySection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<sectionGroup name="mailSettings" type="System.Net.Configuration.MailSettingsSectionGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<section name="smtp" type="System.Net.Configuration.SmtpSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</sectionGroup>
|
||||
<section name="requestCaching" type="System.Net.Configuration.RequestCachingSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="settings" type="System.Net.Configuration.SettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="webRequestModules" type="System.Net.Configuration.WebRequestModulesSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</sectionGroup>
|
||||
<section name="system.drawing" type="System.Configuration.NameValueSectionHandler, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<sectionGroup name="system.serviceModel" type="System.ServiceModel.Configuration.ServiceModelSectionGroup, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<section name="behaviors" type="System.ServiceModel.Configuration.BehaviorsSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="bindings" type="System.ServiceModel.Configuration.BindingsSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="client" type="System.ServiceModel.Configuration.ClientSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="commonBehaviors" type="System.ServiceModel.Configuration.CommonBehaviorsSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="diagnostics" type="System.ServiceModel.Configuration.DiagnosticSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="extensions" type="System.ServiceModel.Configuration.ExtensionsSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="serviceHostingEnvironment" type="System.ServiceModel.Configuration.ServiceHostingEnvironmentSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="services" type="System.ServiceModel.Configuration.ServicesSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<section name="standardEndpoints" type="System.ServiceModel.Configuration.StandardEndpointsSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
||||
<section name="routing" type="System.ServiceModel.Routing.Configuration.RoutingSection, System.ServiceModel.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<section name="protocolMapping" type="System.ServiceModel.Configuration.ProtocolMappingSection, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
||||
</sectionGroup>
|
||||
<sectionGroup name="system.transactions" type="System.Transactions.Configuration.TransactionsSectionGroup, System.Transactions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null">
|
||||
<section name="defaultSettings" type="System.Transactions.Configuration.DefaultSettingsSection, System.Transactions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null"/>
|
||||
<section name="machineSettings" type="System.Transactions.Configuration.MachineSettingsSection, System.Transactions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, Custom=null" allowDefinition="MachineOnly" allowExeDefinition="MachineOnly"/>
|
||||
</sectionGroup>
|
||||
<section name="system.webServer" type="System.Configuration.IgnoreSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<section name="uri" type="System.Configuration.UriSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<sectionGroup name="system.runtime.caching" type="System.Runtime.Caching.Configuration.CachingSectionGroup, System.Runtime.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<section name="memoryCache" type="System.Runtime.Caching.Configuration.MemoryCacheSection, System.Runtime.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" allowDefinition="MachineToApplication"/>
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
|
||||
<connectionStrings>
|
||||
<add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>
|
||||
<add name="LocalSqliteServer" connectionString="Data Source=|DataDirectory|/aspnetdb.sqlite;version=3" providerName="Mono.Data.Sqlite"/>
|
||||
</connectionStrings>
|
||||
|
||||
<configProtectedData defaultProvider="RsaProtectedConfigurationProvider">
|
||||
<providers>
|
||||
<add name="RsaProtectedConfigurationProvider" type="System.Configuration.RsaProtectedConfigurationProvider, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
|
||||
description="" keyContainerName="MonoFrameworkConfigurationKey" cspProviderName="" useMachineContainer="true" useOAEP="false" />
|
||||
<add name="DataProtectionConfigurationProvider" type="System.Configuration.DpapiProtectedConfigurationProvider, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
|
||||
description="" useMachineProtection="true" keyEntropy="" />
|
||||
</providers>
|
||||
</configProtectedData>
|
||||
|
||||
<system.net>
|
||||
<authenticationModules>
|
||||
<add type="System.Net.BasicClient, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<add type="System.Net.DigestClient, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<add type="System.Net.NtlmClient, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</authenticationModules>
|
||||
<webRequestModules>
|
||||
<add prefix="http" type="System.Net.HttpRequestCreator, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<add prefix="https" type="System.Net.HttpRequestCreator, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<add prefix="file" type="System.Net.FileWebRequestCreator, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<add prefix="ftp" type="System.Net.FtpRequestCreator, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</webRequestModules>
|
||||
<settings>
|
||||
<ipv6 enabled="false"/>
|
||||
</settings>
|
||||
</system.net>
|
||||
|
||||
<system.runtime.remoting>
|
||||
<application>
|
||||
<channels>
|
||||
<channel ref="http client" displayName="http client (delay loaded)" delayLoadAsClientChannel="true" />
|
||||
<channel ref="tcp client" displayName="tcp client (delay loaded)" delayLoadAsClientChannel="true" />
|
||||
<channel ref="ipc client" displayName="ipc client (delay loaded)" delayLoadAsClientChannel="true" />
|
||||
</channels>
|
||||
</application>
|
||||
<channels>
|
||||
<channel id="http" type="System.Runtime.Remoting.Channels.Http.HttpChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="http client" type="System.Runtime.Remoting.Channels.Http.HttpClientChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="http server" type="System.Runtime.Remoting.Channels.Http.HttpServerChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="tcp" type="System.Runtime.Remoting.Channels.Tcp.TcpChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="tcp client" type="System.Runtime.Remoting.Channels.Tcp.TcpClientChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="tcp server" type="System.Runtime.Remoting.Channels.Tcp.TcpServerChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="ipc" type="System.Runtime.Remoting.Channels.Ipc.IpcChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="ipc client" type="System.Runtime.Remoting.Channels.Ipc.IpcClientChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<channel id="ipc server" type="System.Runtime.Remoting.Channels.Ipc.IpcServerChannel, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</channels>
|
||||
<channelSinkProviders>
|
||||
<clientProviders>
|
||||
<formatter id="soap" type="System.Runtime.Remoting.Channels.SoapClientFormatterSinkProvider, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<formatter id="binary" type="System.Runtime.Remoting.Channels.BinaryClientFormatterSinkProvider, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</clientProviders>
|
||||
<serverProviders>
|
||||
<formatter id="soap" type="System.Runtime.Remoting.Channels.SoapServerFormatterSinkProvider, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<formatter id="binary" type="System.Runtime.Remoting.Channels.BinaryServerFormatterSinkProvider, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<provider id="wsdl" type="System.Runtime.Remoting.MetadataServices.SdlChannelSinkProvider, System.Runtime.Remoting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</serverProviders>
|
||||
</channelSinkProviders>
|
||||
</system.runtime.remoting>
|
||||
|
||||
<appSettings>
|
||||
<!--<add key="yourkey" value="your value" /> -->
|
||||
<!--<remove key="a key defined higher in the hierarchy" /> -->
|
||||
<!--<clear/> Removes all defined settings -->
|
||||
</appSettings>
|
||||
<system.diagnostics>
|
||||
<trace autoflush="false" indentsize="4" />
|
||||
</system.diagnostics>
|
||||
<system.drawing>
|
||||
</system.drawing>
|
||||
|
||||
<system.data>
|
||||
<DbProviderFactories>
|
||||
<add name="Mono Sqlite Data Provider" invariant="Mono.Data.SqliteClient"
|
||||
description="Mono Framework Data Provider for SQLite (old version)"
|
||||
type="Mono.Data.SqliteClient.SqliteFactory, Mono.Data.SqliteClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"/>
|
||||
<add name="Mono Sqlite Provider" invariant="Mono.Data.Sqlite"
|
||||
description="Mono Framework Data Provider for SQLite (new version)"
|
||||
type="Mono.Data.Sqlite.SqliteFactory, Mono.Data.Sqlite, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"/>
|
||||
<add name="Odbc Data Provider" invariant="System.Data.Odbc"
|
||||
description=".Net Framework Data Provider for Odbc"
|
||||
type="System.Data.Odbc.OdbcFactory, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
||||
<add name="OleDb Data Provider" invariant="System.Data.OleDb"
|
||||
description=".Net Framework Data Provider for OleDb"
|
||||
type="System.Data.OleDb.OleDbFactory, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
||||
<add name="OracleClient Data Provider" invariant="System.Data.OracleClient"
|
||||
description=".Net Framework Data Provider for Oracle"
|
||||
type="System.Data.OracleClient.OracleClientFactory, System.Data.OracleClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
||||
<add name="SqlClient Data Provider" invariant="System.Data.SqlClient"
|
||||
description=".Net Framework Data Provider for SqlServer"
|
||||
type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
|
||||
<add name="Sybase Data Provider" invariant="Mono.Data.SybaseClient"
|
||||
description=".Net Framework Data Provider for Sybase"
|
||||
type="Mono.Data.SybaseClient.SybaseClientFactory, Mono.Data.SybaseClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"/>
|
||||
</DbProviderFactories>
|
||||
</system.data>
|
||||
|
||||
<mscorlib>
|
||||
<cryptographySettings>
|
||||
<cryptoNameMapping>
|
||||
<cryptoClasses>
|
||||
<cryptoClass monoMD2="Mono.Security.Cryptography.MD2Managed, Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
|
||||
<cryptoClass monoMD4="Mono.Security.Cryptography.MD4Managed, Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
|
||||
</cryptoClasses>
|
||||
<nameEntry name="MD2" class="monoMD2" />
|
||||
<nameEntry name="MD4" class="monoMD4" />
|
||||
</cryptoNameMapping>
|
||||
<oidMap>
|
||||
<oidEntry OID="1.2.840.113549.2.2" name="MD2" />
|
||||
<oidEntry OID="1.2.840.113549.2.2" name="Mono.Security.Cryptography.MD2Managed" />
|
||||
<oidEntry OID="1.2.840.113549.2.4" name="MD4" />
|
||||
<oidEntry OID="1.2.840.113549.2.4" name="Mono.Security.Cryptography.MD4Managed" />
|
||||
</oidMap>
|
||||
</cryptographySettings>
|
||||
</mscorlib>
|
||||
|
||||
<strongNames>
|
||||
<pubTokenMapping>
|
||||
<!-- ECMA key -->
|
||||
<map Token="b77a5c561934e089" PublicKey="002400000480000094000000060200000024000052534131000400000100010079159977d2d03a8e6bea7a2e74e8d1afcc93e8851974952bb480a12c9134474d04062447c37e0e68c080536fcf3c3fbe2ff9c979ce998475e506e8ce82dd5b0f350dc10e93bf2eeecf874b24770c5081dbea7447fddafa277b22de47d6ffea449674a4f9fccf84d15069089380284dbdd35f46cdff12a1bd78e4ef0065d016df" />
|
||||
<!-- Microsoft (final) key -->
|
||||
<map Token="b03f5f7f11d50a3a" PublicKey="002400000480000094000000060200000024000052534131000400000100010079159977d2d03a8e6bea7a2e74e8d1afcc93e8851974952bb480a12c9134474d04062447c37e0e68c080536fcf3c3fbe2ff9c979ce998475e506e8ce82dd5b0f350dc10e93bf2eeecf874b24770c5081dbea7447fddafa277b22de47d6ffea449674a4f9fccf84d15069089380284dbdd35f46cdff12a1bd78e4ef0065d016df" />
|
||||
<!-- Microsoft (Web Service Enhancement) key -->
|
||||
<map Token="31bf3856ad364e35" PublicKey="002400000480000094000000060200000024000052534131000400000100010079159977d2d03a8e6bea7a2e74e8d1afcc93e8851974952bb480a12c9134474d04062447c37e0e68c080536fcf3c3fbe2ff9c979ce998475e506e8ce82dd5b0f350dc10e93bf2eeecf874b24770c5081dbea7447fddafa277b22de47d6ffea449674a4f9fccf84d15069089380284dbdd35f46cdff12a1bd78e4ef0065d016df" />
|
||||
<!-- IBM (DB2 Data Provider) key -->
|
||||
<map Token="7c307b91aa13d208" PublicKey="002400000480000094000000060200000024000052534131000400000100010079159977d2d03a8e6bea7a2e74e8d1afcc93e8851974952bb480a12c9134474d04062447c37e0e68c080536fcf3c3fbe2ff9c979ce998475e506e8ce82dd5b0f350dc10e93bf2eeecf874b24770c5081dbea7447fddafa277b22de47d6ffea449674a4f9fccf84d15069089380284dbdd35f46cdff12a1bd78e4ef0065d016df" />
|
||||
<!-- Silverlight 2.0 key -->
|
||||
<map Token="7cec85d7bea7798e" PublicKey="002400000480000094000000060200000024000052534131000400000100010079159977d2d03a8e6bea7a2e74e8d1afcc93e8851974952bb480a12c9134474d04062447c37e0e68c080536fcf3c3fbe2ff9c979ce998475e506e8ce82dd5b0f350dc10e93bf2eeecf874b24770c5081dbea7447fddafa277b22de47d6ffea449674a4f9fccf84d15069089380284dbdd35f46cdff12a1bd78e4ef0065d016df" />
|
||||
<!-- XNA Framework key -->
|
||||
<map Token="6d5c3888ef60e27d" PublicKey="0024000004800000940000000602000000240000525341310004000001000100f9a2641bac9847900d92a33d652ccc4e8b529360f908e7af53e57008b2a9a1938c32a160d47f795a23590557608d2c8d0c0e8846a052d070f9298281b8185343dbe5b479bd52de256f73c2a943e1a8a42065b5c918622dc14b1c0151dbd94d9a4543e7cd03e536b1b1d2d6d99af535d227ab9bdac76af9312a21d457bdf817e6" />
|
||||
</pubTokenMapping>
|
||||
</strongNames>
|
||||
|
||||
<system.web>
|
||||
<webServices>
|
||||
<protocols>
|
||||
<add name="HttpSoap"/>
|
||||
<add name="HttpSoap12"/>
|
||||
<add name="HttpPost"/>
|
||||
<add name="HttpGet"/>
|
||||
<add name="Documentation"/>
|
||||
</protocols>
|
||||
<conformanceWarnings>
|
||||
<add name="BasicProfile1_1"/>
|
||||
</conformanceWarnings>
|
||||
<wsdlHelpGenerator href="DefaultWsdlHelpGenerator.aspx" />
|
||||
</webServices>
|
||||
|
||||
<membership>
|
||||
<providers>
|
||||
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
|
||||
<!-- <add name="AspNetSqlMembershipProvider" type="Mainsoft.Web.Security.GenericMembershipProvider, Mainsoft.Web.Security" applicationName="/" connectionStringName="LocalSqlServer" /> -->
|
||||
</providers>
|
||||
</membership>
|
||||
|
||||
<roleManager>
|
||||
<providers>
|
||||
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" applicationName="/" connectionStringName="LocalSqlServer" />
|
||||
<!-- <add name="AspNetSqlRoleProvider" type="Mainsoft.Web.Security.GenericRoleProvider, Mainsoft.Web.Security" applicationName="/" connectionStringName="LocalSqlServer" /> -->
|
||||
</providers>
|
||||
</roleManager>
|
||||
|
||||
<profile>
|
||||
<providers>
|
||||
<add name="AspNetSqlProfileProvider" connectionStringName="LocalSqlServer" applicationName="/" type="System.Web.Profile.SqlProfileProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
</providers>
|
||||
</profile>
|
||||
</system.web>
|
||||
|
||||
|
||||
<system.serviceModel>
|
||||
<extensions>
|
||||
<behaviorExtensions>
|
||||
<add name="enableWebScript" type="System.ServiceModel.Configuration.WebScriptEnablingElement, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="webHttp" type="System.ServiceModel.Configuration.WebHttpElement, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
</behaviorExtensions>
|
||||
<bindingElementExtensions>
|
||||
<add name="webMessageEncoding" type="System.ServiceModel.Configuration.WebMessageEncodingElement, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
</bindingElementExtensions>
|
||||
<bindingExtensions>
|
||||
<add name="webHttpBinding" type="System.ServiceModel.Configuration.WebHttpBindingCollectionElement, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
</bindingExtensions>
|
||||
<endpointExtensions>
|
||||
<add name="dynamicEndpoint" type="System.ServiceModel.Discovery.Configuration.DynamicEndpointCollectionElement, System.ServiceModel.Discovery, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="discoveryEndpoint" type="System.ServiceModel.Discovery.Configuration.DiscoveryEndpointCollectionElement, System.ServiceModel.Discovery, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="udpDiscoveryEndpoint" type="System.ServiceModel.Discovery.Configuration.UdpDiscoveryEndpointCollectionElement, System.ServiceModel.Discovery, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="announcementEndpoint" type="System.ServiceModel.Discovery.Configuration.AnnouncementEndpointCollectionElement, System.ServiceModel.Discovery, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="udpAnnouncementEndpoint" type="System.ServiceModel.Discovery.Configuration.UdpAnnouncementEndpointCollectionElement, System.ServiceModel.Discovery, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="webHttpEndpoint" type="System.ServiceModel.Configuration.WebHttpEndpointCollectionElement, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
<add name="webScriptEndpoint" type="System.ServiceModel.Configuration.WebScriptEndpointCollectionElement, System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
|
||||
</endpointExtensions>
|
||||
</extensions>
|
||||
</system.serviceModel>
|
||||
</configuration>
|
||||
|
||||
|
BIN
bin/symstore.exe
BIN
bin/symstore.exe
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue