Both sides previous revisionPrevious revisionNext revision | Previous revision |
code_snippets [2009/01/11 22:44] – stephen | code_snippets [2009/01/15 00:01] (current) – removed stephen |
---|
===== General ===== | |
| |
==== Newlines ==== | |
| |
C# = Environment.Newline\\ | |
VB = vbNewline | |
| |
===== C# ===== | |
| |
==== I/O ==== | |
| |
=== Read Entire File into a String === | |
| |
...in one easy step. | |
| |
<code c#> | |
String wholeFile = File.ReadAllText(@"C:\Temp.txt"); | |
</code> | |
| |
=== Filename to StreamReader === | |
| |
...in one easy step. | |
| |
<code c#> | |
StreamReader sr = File.OpenText(@"C:\Temp.txt"); | |
</code> | |
| |
===== VB ===== | |
| |
==== Dump the Session Variable ==== | |
| |
<code VB> | |
' Dump the session variable | |
Dim file As New System.IO.StreamWriter("c:\temp\Session Dump.txt", True) | |
Try | |
Dim i As Integer | |
Dim key, type As String | |
file.WriteLine("****************** " + Now().ToShortDateString() + " " + Now().ToShortTimeString() + " ******************") | |
For i = 0 To Session.Keys.Count - 1 | |
key = Session.Keys.Item(i) | |
If Session.Item(i) Is Nothing Then | |
type = "(Null)" | |
Else | |
type = Session.Item(i).GetType().ToString() | |
End If | |
If type.StartsWith("System.String") Or type.StartsWith("System.Int") Or type.StartsWith("System.Boolean") Then | |
file.WriteLine("Session(""" + key + """) as " + type + " : " + CType(Session.Item(i), String)) | |
Else | |
file.WriteLine("Session(""" + key + """) as " + type) | |
End If | |
Next | |
Finally | |
file.Close() | |
End Try | |
</code> | |
| |
==== Comments ==== | |
| |
=== Change Note === | |
| |
<code vb> | |
''' <ChangeNote> | |
''' <ChangeNo>CR302610</ChangeNo> | |
''' <Author>Stephen Heise</Author> | |
''' <ChangeDate>2008-09-03</ChangeDate> | |
''' <Description> | |
''' TBA | |
''' </Description> | |
''' </ChangeNote> | |
</code> | |
| |
=== Method Header === | |
| |
<code vb> | |
''' <summary> | |
''' | |
''' </summary> | |
''' <param name="page"></param> | |
''' <returns></returns> | |
''' </CreationNote> | |
''' <ChangeNo>CR302610</ChangeNo> | |
''' <Author>Stephen Heise</Author> | |
''' <ChangeDate>2008-09-04</ChangeDate> | |
''' <Notes>Created to replace existing GetDirectReports method.</Notes> | |
''' </CreationNote> | |
</code> | |
| |
===== SQL ===== | |
| |
==== Fix Orphaned User ==== | |
| |
<code SQL> | |
sp_change_users_login 'auto_fix', 'UserName' | |
</code> | |
| |
For example: | |
| |
<code SQL> | |
sp_change_users_login 'auto_fix', 'WebAppsSQLWebUser' | |
</code> | |
| |
===== Regular Expressions ===== | |
| |
==== Notepad++ ==== | |
| |
=== Searching for Email Addresses === | |
| |
<code> | |
[A-Za-z\-]+\.[A-Za-z\-]+@ccc\.govt\.nz | |
</code> | |
| |
===== MS-DOS Batch File ===== | |
| |
==== General Backup Script ==== | |
| |
=== Cygwin === | |
| |
<code DOS> | |
REM This script requires Cygwin to work. | |
| |
@ECHO OFF | |
| |
SET source=C:\External Drives\USB Key - Kissing Frogs\KissingFrogs.co.nz\Test\V5 | |
SET backupDir=C:\Backups\KissingFrogs.co.nz | |
| |
if not exist "%source%" goto :done | |
| |
zip -r "%backupDir%\backup_temp.zip" "%source%" | |
| |
if not exist "%backupDir%\backup01.zip" goto :roll_done | |
| |
zipinfo -v "%backupDir%\backup01.zip" | tail +2 > "%backupDir%\backup01.txt" | |
zipinfo -v "%backupDir%\backup_temp.zip" | tail +2 > "%backupDir%\backup_temp.txt" | |
| |
diff -q "%backupDir%\backup01.txt" "%backupDir%\backup_temp.txt" | |
| |
IF ERRORLEVEL 1 GOTO :differences_exist | |
| |
REM No differences found, so just clean up. | |
rm "%backupDir%\backup01.txt" "%backupDir%\backup_temp.zip" "%backupDir%\backup_temp.txt" | |
GOTO :done | |
| |
:differences_exist | |
rm "%backupDir%\backup01.txt" "%backupDir%\backup_temp.txt" | |
| |
:roll_start | |
rm "%backupDir%\backup50.zip" | |
mv "%backupDir%\backup49.zip" "%backupDir%\backup50.zip" | |
mv "%backupDir%\backup48.zip" "%backupDir%\backup49.zip" | |
mv "%backupDir%\backup47.zip" "%backupDir%\backup48.zip" | |
mv "%backupDir%\backup46.zip" "%backupDir%\backup47.zip" | |
mv "%backupDir%\backup45.zip" "%backupDir%\backup46.zip" | |
mv "%backupDir%\backup44.zip" "%backupDir%\backup45.zip" | |
mv "%backupDir%\backup43.zip" "%backupDir%\backup44.zip" | |
mv "%backupDir%\backup42.zip" "%backupDir%\backup43.zip" | |
mv "%backupDir%\backup41.zip" "%backupDir%\backup42.zip" | |
mv "%backupDir%\backup40.zip" "%backupDir%\backup41.zip" | |
mv "%backupDir%\backup39.zip" "%backupDir%\backup40.zip" | |
mv "%backupDir%\backup38.zip" "%backupDir%\backup39.zip" | |
mv "%backupDir%\backup37.zip" "%backupDir%\backup38.zip" | |
mv "%backupDir%\backup36.zip" "%backupDir%\backup37.zip" | |
mv "%backupDir%\backup35.zip" "%backupDir%\backup36.zip" | |
mv "%backupDir%\backup34.zip" "%backupDir%\backup35.zip" | |
mv "%backupDir%\backup33.zip" "%backupDir%\backup34.zip" | |
mv "%backupDir%\backup32.zip" "%backupDir%\backup33.zip" | |
mv "%backupDir%\backup31.zip" "%backupDir%\backup32.zip" | |
mv "%backupDir%\backup30.zip" "%backupDir%\backup31.zip" | |
mv "%backupDir%\backup29.zip" "%backupDir%\backup30.zip" | |
mv "%backupDir%\backup28.zip" "%backupDir%\backup29.zip" | |
mv "%backupDir%\backup27.zip" "%backupDir%\backup28.zip" | |
mv "%backupDir%\backup26.zip" "%backupDir%\backup27.zip" | |
mv "%backupDir%\backup25.zip" "%backupDir%\backup26.zip" | |
mv "%backupDir%\backup24.zip" "%backupDir%\backup25.zip" | |
mv "%backupDir%\backup23.zip" "%backupDir%\backup24.zip" | |
mv "%backupDir%\backup22.zip" "%backupDir%\backup23.zip" | |
mv "%backupDir%\backup21.zip" "%backupDir%\backup22.zip" | |
mv "%backupDir%\backup20.zip" "%backupDir%\backup21.zip" | |
mv "%backupDir%\backup19.zip" "%backupDir%\backup20.zip" | |
mv "%backupDir%\backup18.zip" "%backupDir%\backup19.zip" | |
mv "%backupDir%\backup17.zip" "%backupDir%\backup18.zip" | |
mv "%backupDir%\backup16.zip" "%backupDir%\backup17.zip" | |
mv "%backupDir%\backup15.zip" "%backupDir%\backup16.zip" | |
mv "%backupDir%\backup14.zip" "%backupDir%\backup15.zip" | |
mv "%backupDir%\backup13.zip" "%backupDir%\backup14.zip" | |
mv "%backupDir%\backup12.zip" "%backupDir%\backup13.zip" | |
mv "%backupDir%\backup11.zip" "%backupDir%\backup12.zip" | |
mv "%backupDir%\backup10.zip" "%backupDir%\backup11.zip" | |
mv "%backupDir%\backup09.zip" "%backupDir%\backup10.zip" | |
mv "%backupDir%\backup08.zip" "%backupDir%\backup09.zip" | |
mv "%backupDir%\backup07.zip" "%backupDir%\backup08.zip" | |
mv "%backupDir%\backup06.zip" "%backupDir%\backup07.zip" | |
mv "%backupDir%\backup05.zip" "%backupDir%\backup06.zip" | |
mv "%backupDir%\backup04.zip" "%backupDir%\backup05.zip" | |
mv "%backupDir%\backup03.zip" "%backupDir%\backup04.zip" | |
mv "%backupDir%\backup02.zip" "%backupDir%\backup03.zip" | |
mv "%backupDir%\backup01.zip" "%backupDir%\backup02.zip" | |
:roll_done | |
| |
mv "%backupDir%\backup_temp.zip" "%backupDir%\backup01.zip" | |
| |
:done | |
</code> | |
| |
=== 7-Zip === | |
| |
<code DOS> | |
@echo off | |
| |
set TargetName=SmoothOperator | |
set TargetDir=Z:\My Documents\Visual Studio Projects\SmoothOperator | |
set Flags=-x!*.dll -x!*.zip -x!*.pdf -x!*.pdb | |
| |
set BackupDir=C:\Backups\%TargetName% | |
| |
:CheckFrequencyExists | |
if not [%1]==[] goto CheckFrequencyIsHourly | |
| |
echo ERROR: The frequency was not specified. | |
pause | |
goto Done | |
| |
:CheckFrequencyIsHourly | |
if "%1"=="Hourly" goto FrequencyIsHourly | |
| |
if "%1"=="Daily" goto FrequencyIsDaily | |
| |
echo ERROR: The frequency must be 'Hourly' or 'Daily'. | |
pause | |
goto Done | |
| |
:FrequencyIsHourly | |
set Frequency=Hourly | |
set ZipCommand=u -r %Flags% "%BackupDir%\Daily_Backup_01.7z" -u- -up0q0x2y2z0w2!"%BackupDir%\%Frequency%_Backup_Temp.7z" "%TargetDir%\*" | |
goto CheckDailyBackup | |
| |
:FrequencyIsDaily | |
set Frequency=Daily | |
set ZipCommand=a -r %Flags% "%BackupDir%\%Frequency%_Backup_Temp.7z" "%TargetDir%\*" | |
goto CheckTargetDir | |
| |
:CheckDailyBackup | |
| |
if exist "%BackupDir%\Daily_Backup_01.7z" goto CreateBackup | |
| |
echo ERROR: The daily backup ("%BackupDir%\Daily_Backup_01.7z") does not exist or can not be accessed. | |
pause | |
goto Done | |
| |
:CheckTargetDir | |
| |
if exist "%TargetDir%" goto CheckBackupDir | |
| |
echo ERROR: The target directory (%TargetDir%) does not exist or can not be accessed. | |
pause | |
goto Done | |
| |
:CheckBackupDir | |
| |
if exist "%BackupDir%" goto CreateBackup | |
| |
echo ERROR: The backup directory (%BackupDir%) does not exist or can not be accessed. | |
pause | |
goto Done | |
| |
:CreateBackup | |
| |
7z %ZipCommand% | |
| |
if not exist "%BackupDir%\%Frequency%_Backup_01.7z" goto RollDone | |
| |
rem Determine if there is any differences between the current backup and the previous backup. | |
rem 7Zip includes the name of the file in the content list, so we need to make sure the filename is the same for each backup. We only want to know if the *contents* are different. | |
rem If DOS had a more functional 'tail' command we wouldn't need to do this... | |
| |
rename "%BackupDir%\%Frequency%_Backup_Temp.7z" "%Frequency%_Compare.7z" | |
7z l -slt "%BackupDir%\%Frequency%_Compare.7z" > "%BackupDir%\%Frequency%_Backup_Temp_Contents.txt" | |
rename "%BackupDir%\%Frequency%_Compare.7z" "%Frequency%_Backup_Temp.7z" | |
| |
rename "%BackupDir%\%Frequency%_Backup_01.7z" "%Frequency%_Compare.7z" | |
7z l -slt "%BackupDir%\%Frequency%_Compare.7z" > "%BackupDir%\%Frequency%_Backup_01_Contents.txt" | |
rename "%BackupDir%\%Frequency%_Compare.7z" "%Frequency%_Backup_01.7z" | |
| |
fc "%BackupDir%\%Frequency%_Backup_Temp_Contents.txt" "%BackupDir%\%Frequency%_Backup_01_Contents.txt" | |
| |
IF ERRORLEVEL 1 GOTO :DifferencesExist | |
| |
ECHO No differences found - throwing the backup away. | |
| |
REM No differences found, so just clean up. | |
rem del "%BackupDir%\%Frequency%_Backup_01_Contents.txt" | |
rem del "%BackupDir%\%Frequency%_Backup_Temp_Contents.txt" | |
del "%BackupDir%\%Frequency%_Backup_Temp.7z" | |
GOTO :done | |
| |
:DifferencesExist | |
| |
ECHO Differences found - storing the backup. | |
| |
rem del "%BackupDir%\%Frequency%_Backup_01_Contents.txt" | |
rem del "%BackupDir%\%Frequency%_Backup_Temp_Contents.txt" | |
| |
:RollExistingBackups | |
| |
del "%BackupDir%\%Frequency%_Backup_20.7z" | |
rename "%BackupDir%\%Frequency%_Backup_19.7z" "%Frequency%_Backup_20.7z" | |
rename "%BackupDir%\%Frequency%_Backup_18.7z" "%Frequency%_Backup_19.7z" | |
rename "%BackupDir%\%Frequency%_Backup_17.7z" "%Frequency%_Backup_18.7z" | |
rename "%BackupDir%\%Frequency%_Backup_16.7z" "%Frequency%_Backup_17.7z" | |
rename "%BackupDir%\%Frequency%_Backup_15.7z" "%Frequency%_Backup_16.7z" | |
rename "%BackupDir%\%Frequency%_Backup_14.7z" "%Frequency%_Backup_15.7z" | |
rename "%BackupDir%\%Frequency%_Backup_13.7z" "%Frequency%_Backup_14.7z" | |
rename "%BackupDir%\%Frequency%_Backup_12.7z" "%Frequency%_Backup_13.7z" | |
rename "%BackupDir%\%Frequency%_Backup_11.7z" "%Frequency%_Backup_12.7z" | |
rename "%BackupDir%\%Frequency%_Backup_10.7z" "%Frequency%_Backup_11.7z" | |
rename "%BackupDir%\%Frequency%_Backup_09.7z" "%Frequency%_Backup_10.7z" | |
rename "%BackupDir%\%Frequency%_Backup_08.7z" "%Frequency%_Backup_09.7z" | |
rename "%BackupDir%\%Frequency%_Backup_07.7z" "%Frequency%_Backup_08.7z" | |
rename "%BackupDir%\%Frequency%_Backup_06.7z" "%Frequency%_Backup_07.7z" | |
rename "%BackupDir%\%Frequency%_Backup_05.7z" "%Frequency%_Backup_06.7z" | |
rename "%BackupDir%\%Frequency%_Backup_04.7z" "%Frequency%_Backup_05.7z" | |
rename "%BackupDir%\%Frequency%_Backup_03.7z" "%Frequency%_Backup_04.7z" | |
rename "%BackupDir%\%Frequency%_Backup_02.7z" "%Frequency%_Backup_03.7z" | |
rename "%BackupDir%\%Frequency%_Backup_01.7z" "%Frequency%_Backup_02.7z" | |
| |
:RollDone | |
| |
rename "%BackupDir%\%Frequency%_Backup_Temp.7z" "%Frequency%_Backup_01.7z" | |
| |
:Done | |
echo Done. | |
</code> | |
| |
==== Clean Temp Directory ==== | |
| |
<code DOS> | |
c:\ | |
cd \temp | |
rd /s /q . > "C:\Clean Temp.log" 2>&1 | |
</code> | |