⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dws2mflibmodule.pas

📁 script language
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  Info['Result'] := string(Dir);
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetTempDirectoryEval(
  Info: TProgramInfo);
var
  Dir: array[0..MAX_PATH] of Char;
begin
  if GetEnvironmentVariable('TEMP', Dir, MAX_PATH) > 0 then
    Info['Result'] := string(Dir)
  else if GetEnvironmentVariable('TMP', Dir, MAX_PATH) > 0 then
    Info['Result'] := string(Dir)
  else
    Info['Result'] := '';
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetTemplatesDirectoryEval(
  Info: TProgramInfo);
begin
  Info['Result'] := _GetRegistryString(HKEY_CURRENT_USER, EKey, 'Templates');
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetUserNameEval(
  Info: TProgramInfo);
var
  UN: array[0..MAX_COMPUTERNAME_LENGTH] of Char;
  L: DWORD;
begin
  L := MAX_COMPUTERNAME_LENGTH;
  if GetUserName(UN, L) then
    Info['Result'] := string(UN)
  else
    Info['Result'] := '';
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetVersionEval(
  Info: TProgramInfo);
begin
{$WARNINGS OFF}
  Info['Result'] := GetVersion;
{$WARNINGS ON}
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetWallpaperDirectoryEval(
  Info: TProgramInfo);
begin
  Info['Result'] := _GetRegistryString(HKEY_LOCAL_MACHINE, WKey, 'WallPaperDir');
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetWindowsDirectoryEval(
  Info: TProgramInfo);
var
  Dir: array[0..MAX_PATH] of Char;
begin
  GetWindowsDirectory(Dir, MAX_PATH);
  Info['Result'] := string(Dir);
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsGetWindowsVersionEval(
  Info: TProgramInfo);
begin
  Info['Result'] := GetWindowsVersion;
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsIsWin2000Eval(
  Info: TProgramInfo);
begin
  Info['Result'] := IsWin2000;
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsIsWin9xEval(Info: TProgramInfo);
begin
  Info['Result'] := IsWin9x;
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsIsWinNTEval(Info: TProgramInfo);
begin
  Info['Result'] := IsWinNT;
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsIsWinNT4Eval(Info: TProgramInfo);
begin
  Info['Result'] := IsWinNT4;
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsSetComputerNameEval(
  Info: TProgramInfo);
var
  CN: array[0..MAX_COMPUTERNAME_LENGTH] of Char;
begin
  StrPCopy(CN, Info['Name']);
  Info['Result'] := SetComputerName(CN);
end;

procedure Tdws2MFLib.dws2UnitInfoFunctionsSetConsoleTitleEval(
  Info: TProgramInfo);
var
  CT: array[0..MAX_PATH] of Char;
begin
  StrPCopy(CT, Info['Title']);
  Info['Result'] := SetConsoleTitle(CT);
end;

// ****************************************************************************
// *** TIniFile Functions *****************************************************
// ****************************************************************************

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileConstructorsCreateAssignExternalObject(
  Info: TProgramInfo; var ExtObject: TObject);
begin
  ExtObject := TIniFile.Create(Info['FileName']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsDestroyEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).Free;
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsDeleteKeyEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).DeleteKey(Info['Section'], Info['Ident']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsEraseSectionEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).EraseSection(Info['Section']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadBoolEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadBool(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadDateEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadDate(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadDateTimeEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadDateTime(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadFileNameEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).Filename;
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadFloatEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadFloat(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadIntegerEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadInteger(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadSectionEval(
  Info: TProgramInfo; ExtObject: TObject);
var
  ScriptObj: IScriptObj;
  StringsObj: TStringList;
begin
  ScriptObj := IScriptObj(IUnknown(Info['Strings']));
  if ScriptObj = nil then
    StringsObj := nil
  else
    StringsObj := TStringList(ScriptObj.ExternalObject);
  TIniFile(ExtObject).ReadSection(Info['Section'], StringsObj);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadSectionsEval(
  Info: TProgramInfo; ExtObject: TObject);
var
  ScriptObj: IScriptObj;
  StringsObj: TStringList;
begin
  ScriptObj := IScriptObj(IUnknown(Info['Strings']));
  if ScriptObj = nil then
    StringsObj := nil
  else
    StringsObj := TStringList(ScriptObj.ExternalObject);
  TIniFile(ExtObject).ReadSections(StringsObj);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadSectionValuesEval(
  Info: TProgramInfo; ExtObject: TObject);
var
  ScriptObj: IScriptObj;
  StringsObj: TStringList;
begin
  ScriptObj := IScriptObj(IUnknown(Info['Strings']));
  if ScriptObj = nil then
    StringsObj := nil
  else
    StringsObj := TStringList(ScriptObj.ExternalObject);
  TIniFile(ExtObject).ReadSectionValues(Info['Section'], StringsObj);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadStringEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadString(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsReadTimeEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ReadTime(Info['Section'], Info['Ident'],
    Info['Default']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsSectionExistsEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).SectionExists(Info['Section']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsUpdateFileEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).UpdateFile;
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteBoolEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteBool(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteDateEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteDate(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteDateTimeEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteDate(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteFloatEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteFloat(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteIntegerEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteInteger(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteStringEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteString(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsWriteTimeEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  TIniFile(ExtObject).WriteTime(Info['Section'], Info['Ident'], Info['Value']);
end;

procedure Tdws2MFLib.dws2UnitIniFilesClassesTIniFileMethodsValueExistsEval(
  Info: TProgramInfo; ExtObject: TObject);
begin
  Info['Result'] := TIniFile(ExtObject).ValueExists(Info['Section'], Info['Ident']);
end;

// ****************************************************************************
// *** Registry Functions *****************************************************
// ****************************************************************************

procedure Tdws2MFLib.dws2UnitRegistryFunctionsRegCreateKeyEval(
  Info: TProgramInfo);
var
  Key: HKey;
begin
  RegCreateKeyEx(HKey(Info['MainKey']), PChar(string(Info['SubKey'])), 0, nil,
    REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, nil, Key, nil);
  RegCloseKey(Key);
end;

procedure Tdws2MFLib.dws2UnitRegistryFunctionsRegDeleteKeyEval(
  Info: TProgramInfo);
begin
  RegDeleteKey(HKey(Info['MainKey']), PChar(string(Info['SubKey'])));
end;

procedure Tdws2MFLib.dws2UnitRegistryFunctionsRegDeleteValueEval(
  Info: TProgramInfo);
var
  Key: HKey;
begin
  if RegOpenKeyEx(HKey(Info['MainKey']), PChar(string(Info['SubKey'])), 0,
    KEY_ALL_ACCESS, Key) = ERROR_SUCCESS then
  begin
    RegDeleteValue(Key, PChar(string(Info['ValName'])));
    RegCloseKey(Key);
  end;
end;

procedure Tdws2MFLib.dws2UnitRegistryFunctionsRegReadIntegerEval(
  Info: TProgramInfo);
var
  Key: HKey;
  I,
  D,
  D2: DWord;
begin
  Info['Result'] := Integer(Info['ValDef']);
  if RegOpenKeyEx(HKey(Info['MainKey']), PChar(string(Info['SubKey'])), 0,
    KEY_READ, Key) = ERROR_SUCCESS then
  begin
    D2 := Sizeof(I);
    if RegQueryValueEx(Key, PChar(string(Info['ValName'])), nil, @D, @I, @D2) =
      ERROR_SUCCESS then
      Info['Result'] := Integer(I);
    RegCloseKey(Key);
  end;
end;

procedure Tdws2MFLib.dws2UnitRegistryFunctionsRegReadStringEval(
  Info: TProgramInfo);
var
  Key: HKey;
  C: array[0..1023] of Char;
  D,
    D2: DWord;
begin
  Info[

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -