실수로 Confluence Internal Directory 를 비활성화 했더니 관리 계정이 날라가 버렸다. 살릴려면 DB에 직접 접근해서 쿼리문을 통해 수정할 수 있다. (Restoring Passwords To Recover Admin User Rights) 내장 DB를 사용하고 있었는데 예전부터 업그레이드해서 사용하던 파일이라 그런지 파일명이 달라서 그런지 접근할 방법이 없었다. (Embedded H2 Database)

 

결국 재설치를 통한 복구를 선택할 수 밖에 없었다. 클린 상태에서 설치를 위해 컨플루언스 언인스톨 후 데이터 폴더(C:\Program Files\Atlassian\Application Data\Confluence)까지 지운다. 컨플루언스 설치 중에 DB 선택 후 백업 데이터에서 복원을 선택한다.

 

내장 H2 DB 접근에 뭔가 오류가 있으니 빨리 외장 DB로 바꿔야겠다.

728x90

윈8.1을 설치해봤는데 시작 메뉴 바뀐게 UX 가 달라서 짜증나네. 마소에서 제공되는 윈7 스타일로 만드는 방법은 없는 것 같고 찾아보니 몇 가지 방법이 있다. 그 중에 'Classic Shell' 이라고 무료로 돌아가는게 있는 것 같아서 설치해 봤는데 잘 돌아가는 것 같다. 윈도우 새 버전에는 시작 메뉴가 돌아왔다고 하는 것 같던데 윈9으로 넘어가야하나?

 

URL : http://www.classicshell.net/

 

 

728x90

Confluence 데이터 저장소로 내장된 기본을 사용할 경우 자동 일간 백업이 backups 라는 하위 폴더에 저장된다. Confluence 버전 업데이트할 때 데이터 전체 백업을 하는데 일간 백업 데이터도 같이 백업되서 일간 백업 데이터를 제때 지워놓지 않는다면 시간이 오래 걸릴 수 있다. 그래서 일간 백업 데이터 저장 경로를 변경하려는데 관리자 페이지에서 변경이 활성화되어 있지 않았다.

 

백업 저장 경로 변경을 위해서는 다음과 같은 작업이 필요하다.

  • 컨플루언스 데이터 홈의 confluence.cfg.xml 을 오픈한다.
    • 윈도우에서 기본은 C:\Program Files\Atlassian\Application Data\Confluence\confluence.cfg.xml 이다.
  • 아래 property 를 false 에서 true 로 변경
    • <property name="admin.ui.allow.daily.backup.custom.location">false</property>
  • "컨플루언스 관리 > 백업 관리" 페이지로 이동해 편집 버튼을 누른다.
  • 백업 경로에 사용자 정의를 선택하고 경로를 입력한다. 그리고 저장을 눌러 적용한다.
728x90

SVN 으로 comment 를 잊어버리고 commit 하고는 한다. Edit Log Message 명령어로 수정해보려 하지만 "저장소가 리비전 속성을 바꿀 수 있지 못하도록 설정되었습니다. pre-revprop-change 훅을 생성해달라고 관리자에게 문의 하십시오."라는 에러 메시지가 보이며 수정이 되지 않았다. Edit Log Message 명령어를 이용할 수 있도록 'pre-revprop-change 훅'을 생성해보자.


저장소의 hooks 폴더를 보면 pre-revprop-change.tmpl 이 있다. 쉘스크립트를 지원하는 환경에서는 이 파일을 pre-revprop-change 로 바꾸면 아마 동작할 것 같다. 하지만 윈도우즈 계열에서는 훅으로 쉘스크립트를 사용하지 않는 관계로 동작하지 않는다.


윈도우즈 계열에서는 pre-revprop-change.bat 파일을 생성한다.


내용은 아래 내용을 입력한다.


로그 메시지 수정이 잘 되는지 확인해보자. :)


@ECHO OFF

:: Set all parameters. Even though most are not used, in case you want to add

:: changes that allow, for example, editing of the author or addition of log messages.

set repository=%1

set revision=%2

set userName=%3

set propertyName=%4

set action=%5


:: Only allow the log message to be changed, but not author, etc.

if /I not "%propertyName%" == "svn:log" goto ERROR_PROPNAME 


:: Only allow modification of a log message, not addition or deletion.

if /I not "%action%" == "M" goto ERROR_ACTION


:: Make sure that the new svn:log message is not empty.

set bIsEmpty=true

for /f "tokens=*" %%g in ('find /V ""') do (

set bIsEmpty=false

if "%bIsEmpty%" == "true" goto ERROR_EMPTY


goto :eof


:ERROR_EMPTY

echo Empty svn:log messages are not allowed. >&2

goto ERROR_EXIT


:ERROR_PROPNAME

echo Only changes to svn:log messages are allowed. >&2

goto ERROR_EXIT


:ERROR_ACTION

echo Only modifications to svn:log revision properties are allowed. >&2

goto ERROR_EXIT


:ERROR_EXIT

exit /b 1


출처 : http://s2junn.tistory.com/52

728x90

언리얼에서 Tick 으로 넘어오는 파람이 deltaTime 이다. 그런데 이 값을 더한 누적 시간이 부동 소수점 오차 때문인지 실제 지난 시간 값과 동일하지는 않는 경우가 있었다. ex) 1시간 마다 보여줘야하는 메시지에 59분 지남이라는 메시지가 보였다. 이런 경우에 윈도우에서 GetTickCount, QueryPerformanceCounter 같은 함수를 이용해 timestamp 를 가지고 이용했으면 하는데 인터페이스를 못찾고 있었다. FPlatformTime 이라는 클래스를 이용하면 되는 듯...

 

FPlatformTime 은 typedef 로 플랫폼 별로 FGenericPlatformTime 을 포팅한 class 를 가리키고 있다.

 

typedef FWindowsPlatformTime FPlatformTime;

 

다음 API로 timestamp를 가져올 수 있다.

 

float FPlatformTime::Seconds()


FWindowsPlatformTime 은 QueryPerformanceCounter 를 이용하여 구현되어 있다.

728x90

광주 집에 컴퓨터 새로 보내면서 OS 를 윈도우 8.1로 설치하고 보냈다. 제사 때 내려가서 부팅해보니 로고 나온 후 까만 화면에서 멈춰서 윈도우 화면으로 안 넘어가는 사태가 발생했다. 검색해보니 그래픽 드라이버나 Avast 등 백신과 충돌할 경우 이와 같은 현상이 발생한다고 한다. 다들 'Ctrl + Alt + Del' 을 눌러서 하면 된다고 하는데 아예 화면이 제대로 나오질 않는 상황이라 어떻게 해볼 방법이 없었다.


부팅할 때 안전모드로 부팅해 보려고 하니 '윈도우 8.1'은 안전모드 부팅이 기본은 막혀있고 부팅해서 안전모드로 부팅하거나 해야하는 상태였다. 윈도우 CD 로 부팅해서 이전 버젼으로 롤백해서 문제는 해결했지만 혹시 비슷한 문제 발생시 안전모드 부팅을 위해서 안전모드 부팅 가능하게 설정을 변경했다. 설정을 변경하는 방법은 아래와 같다.


관리자 권한이 있는 윈도우 명령창에서 아래 명령어 입력


bcdedit /set {default} bootmenupolicy legacy


부팅할 때 F8 키를 누르면 예전과 같이 안전모드를 선택할 수 있는 고급 부팅 옵션을 볼 수 있다.

728x90

탐색기에서 폴더 탐색 중 탐색 중인 폴더에서 명령창을 열고 싶을 때가 있다. XP 시절에는 레지스트리를 수정해서 작업했는데 윈7 부터는 쉬프트 키를 누르고 마우스 오른쪽 버튼을 누르면 아래와 같이 '여기서 명령 창 열기'라는 메뉴가 나온다.



요새 Powershell 로 스크립팅 작업을 하는데 powershell 을 위와 같이 특정 폴더에서 시작하고 싶어졌다. 검색해보니 비스타에는 Powertoy for VISTA 이런 애들이 있어서 레지스트리를 조작해서 '여기서 파워쉘 명령 창 열기'를 추가하는게 있는데 윈7 용 Powertoy는 못 찾았었다. 그러다 어떤 질문 사이트에서 주소줄에 cmd 나 powershell 같은 명령어를 치면 현재 폴더에서 명령창이나 powershell 이 열린다고... 해보니 그냥 되네...




관리자 권한으로 실행 같은 것도 할 수 있으면 좋으련만...


728x90

사용 중인 PowerShell 버젼 확인하는 법


$PSVersionTable.PSVersion


728x90

UCameraComponent 를 상속받은 Component 에서 Tick 마다 업데이트될 정보가 있어서 TickComponent 를 상속받아서 구현했더니 TickComponent 가 호출되지 않네. UCameraComponent 소스를 확인해보니 AActor::CalcCamera 에서 UCameraComponent::GetCameraView 를 호출하고 있으니 GetCameraView  상속받아서 구현하니 돌아감.


void AActor::CalcCamera(float DeltaTime, FMinimalViewInfo& OutResult)

{

if (bFindCameraComponentWhenViewTarget)

{

// Look for the first active camera component and use that for the view

TArray<UCameraComponent*> Cameras;

GetComponents<UCameraComponent>(/*out*/ Cameras);


for (UCameraComponent* CameraComponent : Cameras)

{

if (CameraComponent->bIsActive)

{

CameraComponent->GetCameraView(DeltaTime, OutResult);

return;

}

}

}


GetActorEyesViewPoint(OutResult.Location, OutResult.Rotation);

}


UCLASS(HideCategories=(Mobility, Rendering, LOD), ClassGroup=Camera, meta=(BlueprintSpawnableComponent), MinimalAPI)

class UCameraComponent : public USceneComponent

{

...

/**

* Returns camera's Point of View.

* Called by Camera class. Subclass and postprocess to add any effects.

*/

UFUNCTION(BlueprintCallable, Category=Camera)

ENGINE_API virtual void GetCameraView(float DeltaTime, FMinimalViewInfo& DesiredView);

...

}


728x90

UE4 에디터에서 블루프린트의 컴포넌트 탭에서 추가할 수 있는 목록에 커스텀 컴포넌트를 추가하려면 아래와 같이 BlueprintSpawnableCompoent 를 명시해 주면 된다.


UCLASS(ClassGroup=Movement, meta=(BlueprintSpawnableComponent), ShowCategories=(Velocity))

class ENGINE_API UProjectileMovementComponent : public UMovementComponent

{

}


URL : https://docs.unrealengine.com/latest/INT/Programming/UnrealArchitecture/Reference/Metadata/BlueprintSpawnableComponent/index.html

728x90

+ Recent posts