2014-04-16 1 views
1

나는, 그의 InstallScript (*.rul) 소스 파일을 통해 작업에 상당한하면 Installshield의 InstallScript 설치 프로그램을 상속의 InstallScript 데이터 형 케이스

결론은, 내가 변수 및 매개 변수 데이터 유형 '케이스가 다릅니다 것을 알 수 -에 대한 무엇 같은 데이터 형식으로 표시됩니다. 예를 들어, numberNUMBER, stringSTRING 등의 변수 및 매개 변수가 표시됩니다.

내 실험에서 대문자와 소문자간에 변경하면 이 보이지 않는 것처럼 보입니다. 차이점은입니다. 설치 프로그램 프로젝트가 어느쪽으로 든 컴파일됩니다. 그러나 나는 이야기에 더 많은 것이 있을지 모른다.

InstallScript 데이터 형식 케이스는 중요합니까? 그렇다면 언제, 어떻게 중요합니까? .NET, C# 및 C++/CLI에서 오는

또한 상황에 맞는

, 나는 이해 long and Int64 are comparable in C#, whereas long and Int32 are comparable in C++/CLI 그; System 네임 스페이스에 대해 using 지시어가 필요한 경우에만 각 쌍의 후자가 다릅니다. 마찬가지로 InstallScript의 grok 형식을 사용하고 싶습니다.

+1

기본 MSI입니까, 설치 스크립트 MSI입니까? 후자의 프로젝트 유형은 더 이상 사용되지 않으며 다루기 힘든 버그를 특징으로합니다. 샘플로서 기본 MSI로 전체 프로젝트를 다시 만들어야합니다. http://flexerasoftware.force.com/articles/en_US/ISSUE/Q212503 –

+0

일반 InstallScript 프로젝트입니다. 와우 - 그건 상당히 버그입니다. 내 생각 엔'OnMove'가 문제의 근원이되기 전에 InstallScript를 통해 loggable 시스템을 변경하기 때문에 InstallScript MSI 프로젝트에 영향을 미치므로 InstallScript 프로젝트에 영향을 미칠 것입니다. 머리를 가져 주셔서 감사합니다. – J0e3gan

+0

일반 Installscript 프로젝트는 괜찮습니다. 그러나 Installscript MSI는 완전히 재앙입니다. 이 버그는이 프로젝트 유형에서 유일하게 심각한 것이 아니며 기존 Installscript MSI (Installscript 사용자 정의 작업을 사용하는 기본 MSI 프로젝트는 괜찮습니다)를 만지는 사람들을 위해 기본 MSI에서 전체 재 작성을 권장합니다. 많은 드라이버 설정은 멋진 대화 상자를 원하기 때문에 Installscript MSI입니다. –

답변

1

대답은 이고 때로는입니다. 이는에 달려 있습니다.

InstallScript Language Reference의 Data Types and Predefined Structures 섹션은 데이터 유형 대/소문자에 대한 규칙을 설명하고 "일부 데이터 유형을 소문자 또는 대문자로 입력 할 수 있음"을 나타냅니다.

Language Reference에 따르면 InstallScript 데이터 형식 중 2/3 (13/18) 이상이 대문자 또는 소문자 일 수있는 범위에서 대/소문자를 구분하지 않습니다.

흥미롭게도 이러한 유형은 대소 문자를 혼합하여 사용할 수 없습니다 (대문자와 소문자의 조합). 예를 들어, String은 (STRING 또는 string 대) 다음의 컴파일 시간 오류 수율 : 여기

Description          Error Code 
----------------------------------------  ---------- 
'String': expected typedef (struct) name  C8017 

또한 레퍼런스에 따른 인 경우 구분 ((18)의 바로 아래의 1/3 (5)) 대문자 할 수있는 데이터 유형 :

  • BOOL
  • HWND
  • LIST
  • 다음과 같은3210
  • LPSTR
  • LPWSTR

소문자 수익률이 데이터 유형을 입력 컴파일 시간 오류 :이 넘어

Description          Error Code 
----------------------------------------  ---------- 
'bool': expected typedef (struct) name   C8017 

, 대문자 또는 소문자 허용 어디에 사용할지 여부는의 문제입니다 우선권.

0

일부 좋은 정보 출처를 나열하려면 별도의 답변으로 추가하겠습니다.

일반적인 Installshield 런타임 오류 및 버그를 여기에서 확인하십시오 : http://consumer.installshield.com/common.asp?source=all. 내가 말했듯이, Basic MSI는 꽤 괜찮습니다. 그것은 피해야 만하는 Installscript MSI입니다.

Installshield 커뮤니티도 좋습니다 : http://community.installshield.com/. Stefan Kruger (MSI MVP) installsite.org과 마찬가지로 커뮤니티는 forum.installsite.org입니다.